Interactions · Performance
Lazy Loading
Also called: Lazy load, Deferred loading, On-demand loading
Images, components, and other resources don't load up front. They load only when the user is about to scroll to them or actually needs them, which makes the first screen load faster.
In detail
When a page has dozens of images, downloading them all as soon as it opens makes the first screen slow. Lazy loading puts a placeholder there first (a gray block or a blurry thumbnail) and only requests the real image when it's about to enter the viewport. The simplest way is to add loading="lazy" to the image, and the browser handles the rest.
Lazy loading isn't just for images. It also works for components and code: heavy modules like dialogs, chart libraries, and rich text editors can wait to load their JS until the user actually opens them. This is usually called "on-demand loading" or "code splitting."
Don't mix it up with infinite scroll. Lazy loading delays the resources for content that's already going to be on the page. Infinite scroll keeps appending new data. Give placeholders a fixed width and height up front. Otherwise, when the image loads, it pushes the content below it down and the page jumps.
Developer infoTerm ID, DOM cues, match priority
- Term ID
interaction-lazy-load- DOM selectors
- No DOM cues. This concept isn't detected directly on a page.
- Priority
- 1 · when several match at the same level, the higher priority wins
- Version
- v1 · updated Sep 29, 2026