Back to glossary

Lazy Loading

A performance technique that defers the loading of non-critical resources (images, videos, iframes) until they are needed, typically when they approach the visible viewport. Lazy loading reduces initial page weight and improves loading performance.

Lazy loading prevents the browser from downloading resources that users may never see, significantly reducing initial page weight and improving Core Web Vitals. Instead of loading all 50 images on a long page at once, lazy loading downloads only the images currently visible and loads additional images as the user scrolls toward them.

For engineering teams, native lazy loading (loading="lazy" attribute) is the simplest implementation and is supported by all modern browsers. Do not lazy-load above-the-fold content, especially your LCP element, as this delays the most important metric. Use eager loading for the first visible images and lazy loading for everything below the fold. For JavaScript frameworks, libraries like react-lazy-load and the native IntersectionObserver API provide more control. Consider adding a loading="lazy" attribute to all images and iframes by default in your CMS or component library. Monitor the impact of lazy loading on Core Web Vitals, as incorrect implementation can worsen CLS if placeholder dimensions are not properly set.

Related Terms