O que é Lazy Loading?
Definição Rápida
O lazy loading é uma técnica que adia o carregamento de recursos não críticos, como imagens abaixo do fold, até que sejam realmente necessários.
Lazy loading is a performance optimization strategy that defers the loading of resources until they're needed. Instead of loading every image, video, and script when a page first opens, lazy loading only loads the resources visible in the initial viewport and fetches the rest as the user scrolls down.
The most common application is image lazy loading. A typical web page might have 20-50 images, but only 2-3 are visible when the page first loads. Without lazy loading, the browser downloads all 50 images immediately, wasting bandwidth and slowing down the initial render. With lazy loading, only the visible images load first, and the rest load as the user scrolls to them.
Modern browsers natively support lazy loading with the loading="lazy" attribute on img and iframe elements. Before native support, JavaScript-based solutions using the Intersection Observer API were the standard approach. Many frameworks and CMS platforms now include lazy loading by default.
Lazy loading can also be applied to JavaScript modules (loading code only when a feature is needed), components (loading UI sections on demand), and data (fetching content as the user navigates). These techniques are especially valuable for large single-page applications where loading everything upfront would be wasteful.
Por Que é Importante
Lazy loading directly improves two critical metrics: initial page load time and bandwidth usage. By loading only what's immediately visible, your pages render faster, use less data (important for mobile users), and feel more responsive.
However, lazy loading must be implemented carefully. Never lazy-load your LCP element (the main hero image or content), as this will hurt your Core Web Vitals scores. Only lazy-load resources that are below the fold or behind user interactions.
Exemplos Reais
A photography portfolio with 200 images per page reduced initial load time from 12 seconds to 1.8 seconds by lazy loading all images below the first three rows
An e-commerce category page with 60 product images implemented native lazy loading, reducing initial page weight from 8MB to 800KB
A news site lazy loads embedded YouTube videos, replacing them with lightweight thumbnails until the user clicks to play, saving 1.5MB of JavaScript per video
A long-form article page lazy loads related article widgets and comment sections at the bottom, prioritizing the article content for the fastest possible initial render
Termos Relacionados
LCP (Largest Contentful Paint)
O LCP mede o tempo necessário para que o maior elemento de conteúdo visível numa página — como uma imagem hero ou um título — seja totalmente renderizado.
Core Web Vitals
As Core Web Vitals são três métricas específicas definidas pela Google que medem a experiência real dos utilizadores nos websites: desempenho de carregamento (LCP), interactividade (INP) e estabilidade visual (CLS).
CLS (Cumulative Layout Shift)
O CLS mede a quantidade total de deslocamentos de layout inesperados que ocorrem durante o ciclo de vida de uma página, quantificando o quanto o conteúdo visível se move.
Caching
O caching é o processo de armazenar cópias de dados ou ficheiros numa localização temporária para que os pedidos futuros possam ser servidos mais rapidamente.
Precisa de ajuda com lazy loading?
A nossa equipa pode ajudá-lo a colocar este conceito em prática. Obtenha uma consulta gratuita para falar sobre o seu projecto.