What does Google say about SEO? /
Quick SEO Quiz

Test your SEO knowledge in 5 questions

Less than a minute. Find out how much you really know about Google search.

🕒 ~1 min 🎯 5 questions

Official statement

To improve load times, use lazy loading so that images are only loaded when the user actually reaches the part of the page where they are located.
30:00
🎥 Source video

Extracted from a Google Search Central video

⏱ 54:57 💬 EN 📅 25/01/2018 ✂ 22 statements
Watch on YouTube (30:00) →
Other statements from this video 21
  1. 2:06 La vitesse mobile détermine-t-elle vraiment votre classement Google ?
  2. 2:12 La vitesse mobile est-elle vraiment un critère de classement Google décisif ?
  3. 4:19 Faut-il vraiment paniquer si votre site charge en plus de 3 secondes ?
  4. 4:19 Pourquoi perdez-vous la moitié de vos visiteurs avant même qu'ils ne voient votre contenu ?
  5. 5:37 Le Speed Index sous 5 secondes : suffit-il vraiment à garantir une bonne performance perçue ?
  6. 5:42 L'indice de vitesse est-il vraiment la métrique clé de Google pour le mobile ?
  7. 9:56 Pourquoi le CSS et le JavaScript bloquent-ils vraiment le premier affichage de vos pages ?
  8. 10:11 Faut-il vraiment optimiser le chemin de rendu critique pour gagner en vitesse ?
  9. 15:29 Async ou defer : quelle stratégie JavaScript maximise réellement votre crawl budget ?
  10. 20:21 Faut-il vraiment charger le CSS de manière asynchrone pour améliorer le rendu critique ?
  11. 25:29 Pourquoi srcset est-il devenu incontournable pour le SEO mobile ?
  12. 28:48 Jusqu'où peut-on compresser les images sans perdre en SEO ?
  13. 30:50 Faut-il vraiment activer le lazy loading sur toutes vos images pour améliorer le SEO ?
  14. 41:00 WebPageTest : pourquoi Google insiste-t-il sur la 3G et les tests multiples ?
  15. 44:25 Les frameworks JavaScript sabotent-ils vraiment vos performances mobiles ?
  16. 46:18 HTTP/2 server push réduit-il vraiment les requêtes pour améliorer votre SEO ?
  17. 46:20 HTTP/2 et server push : faut-il vraiment compter sur cette fonctionnalité pour accélérer son site ?
  18. 48:17 Le cache navigateur améliore-t-il vraiment le classement dans Google ?
  19. 50:19 Faut-il vraiment supprimer la moitié de vos plugins WordPress pour le SEO ?
  20. 52:12 AMP améliore-t-il vraiment vos performances SEO ou est-ce un piège technique ?
  21. 52:43 AMP améliore-t-il vraiment la vitesse de votre site ou est-ce un piège technique ?
📅
Official statement from (8 years ago)
TL;DR

Google recommends lazy loading to load images only when the user scrolls to the relevant area of the page. This technique reduces the initial page weight and speeds up perceived loading, which improves Core Web Vitals. However, if implemented poorly, lazy loading can delay the display of the LCP or make images invisible to Googlebot.

What you need to understand

What is lazy loading and why does Google recommend it?

Lazy loading involves loading images only when the user scrolls to the area where they are. Instead of downloading all images as soon as the page opens, only the visible content on the screen ("above the fold") is loaded immediately.

Google promotes this technique because it reduces the initial weight of the page and improves perceived load time. Fewer resources downloaded initially means a direct gain on the First Contentful Paint and the Largest Contentful Paint, two key metrics of Core Web Vitals.

How does lazy loading for images work technically?

For the past few years, modern browsers natively support lazy loading via the loading="lazy" attribute on <img> tags. There’s no need for complex JavaScript; the browser automatically handles deferred loading when the image enters or approaches the viewport.

For critical images (logo, hero image, first visible image), you should instead use loading="eager" or not specify an attribute at all to avoid any delay. The idea is simple: lazy load for everything off-screen initially, immediate loading for the rest.

What are the SEO risks associated with lazy loading?

The main pitfall is delaying the LCP. If the largest image visible above the fold is lazy loaded, it will only load after the HTML parsing and the first render, which degrades performance instead of improving it.

Another risk is that some outdated or poorly designed JavaScript implementations can block image indexing by Googlebot. If the bot does not scroll or does not execute the JS correctly, the images remain invisible. The native attribute loading="lazy" avoids this problem because Googlebot supports it.

  • Native lazy loading: use the HTML attribute loading="lazy" on <img> and <iframe> tags
  • Exclude critical images: never apply lazy loading to images in the initial viewport (hero, logo, first content image)
  • Test with Googlebot: check in Search Console that lazy-loaded images are indexed correctly
  • Combine with modern formats: WebP, AVIF to maximize weight savings
  • Preload critical images: use <link rel="preload" as="image"> for LCP images if necessary

SEO Expert opinion

Is this recommendation aligned with real-world observations?

Yes, but with an important nuance: lazy loading is not a magic solution. The gains are real on pages with a high volume of images (e-commerce, galleries, visually rich blogs), but become marginal on lightweight pages with few media.

Tests show that native lazy loading improves Lighthouse scores by 5 to 15 points on image-heavy pages, mainly due to reduced initial weight. But if you apply it to already fast pages, you risk introducing regressions without measurable gain.

What common mistakes should be avoided with lazy loading?

The most common mistake is lazy loading the LCP image. There are still too many sites that apply lazy loading en masse via a plugin or a global script without excluding critical images. The result: the LCP goes from 1.5s to 3s, and Core Web Vitals plummet.

Another classic error is using outdated JavaScript libraries (Lazy Load XT, jQuery Lazy, etc.) while the native solution has been effective since Chrome 76 and Firefox 75. These scripts add weight, parsing delays, and sometimes indexing bugs. [To verify]: some JS implementations do not correctly detect the viewport on mobile or during resizing.

In what cases can lazy loading harm SEO?

If you manage a news site or blog where the first image illustrates the main content, lazy loading means delaying the display of the most important element. Google will measure a degraded LCP, and the user will see a blank rectangle for a few milliseconds, harming the experience.

Another case involves infinite scroll sites. If lazy loading is too aggressive (trigger threshold too low), images only appear at the exact moment the user reaches their area, creating stutter. You must adjust the loading or use an intersection-observer with a lead margin.

Warning: Google does not crawl by scrolling like a user. Images lazily loaded by JS without a fallback may remain invisible to the bot. Always prioritize the native attribute loading="lazy" to ensure indexing.

Practical impact and recommendations

What concrete steps should be taken to implement lazy loading?

Start with an audit of your site's images. Identify which images are above the fold (initial viewport) and which are below. The former should be loaded immediately, the latter can be lazy-loaded.

Add the loading="lazy" attribute to all <img> and <iframe> tags that are outside the initial viewport. For WordPress, plugins like WP Rocket or Perfmatters do this automatically, but always ensure they properly exclude critical images. If you code it manually, it’s even simpler: one HTML attribute is all it takes.

How can you check if lazy loading does not impact LCP?

Use PageSpeed Insights and Lighthouse to measure LCP before and after implementation. If LCP increases, you've lazy-loaded a critical image. Identify it via the "Diagnostics" tab in Lighthouse, which tells you exactly which element constitutes the LCP.

Then, test with Search Console and the "URL Inspection" tool. Request indexing for a page with lazy-loaded images, and then check the "Coverage" tab to ensure the images are appearing. If they are missing, Googlebot does not see them.

What additional optimizations should be combined with lazy loading?

Lazy loading alone is not enough. Combine it with modern image formats (WebP, AVIF) to reduce weight by 30 to 50%. Also, utilize responsive images via srcset to serve the right size according to the device.

Also, consider preloading LCP images with <link rel="preload" as="image" href="..."> if they are discovered late in HTML parsing (for example, loaded via CSS). This combination of lazy loading + targeted preload + modern formats can halve your First Contentful Paint.

  • Add loading="lazy" to all images outside the initial viewport
  • Explicitly exclude above the fold images (hero, logo, first content image)
  • Test LCP before/after with PageSpeed Insights
  • Check image indexing in Search Console
  • Combine with WebP/AVIF and srcset to maximize gains
  • Preload the LCP image if it is discovered late in the DOM
Lazy loading is an effective optimization to reduce initial load time, provided you never apply it to critical images. Prioritize the native attribute loading="lazy" to ensure indexing by Google. These technical optimizations can become complex to orchestrate, especially on high-volume pages or with custom CMSs. If you want a precise audit and flawless implementation, involving a specialized SEO agency can help you avoid costly mistakes and maximize performance gains.

❓ Frequently Asked Questions

Le lazy loading natif est-il compatible avec tous les navigateurs ?
Oui, depuis Chrome 76, Firefox 75, Edge 79 et Safari 15.4. Les navigateurs plus anciens ignorent simplement l'attribut et chargent l'image normalement, ce qui garantit un fallback sans risque.
Faut-il lazy-loader les images en SVG ou les logos ?
Non. Les SVG et logos sont généralement légers et critiques pour l'identité visuelle. Les charger immédiatement évite tout flash de contenu manquant et n'impacte pas significativement le poids de la page.
Googlebot scrolle-t-il pour charger les images lazy-loadées en JavaScript ?
Non, Googlebot ne scrolle pas. Si tu utilises une librairie JS sans fallback HTML, les images peuvent rester invisibles. L'attribut natif loading="lazy" évite ce problème car il est interprété directement par le bot.
Le lazy loading peut-il dégrader le LCP même pour des images below the fold ?
Oui, si l'image LCP est techniquement hors viewport au chargement mais devient visible très rapidement (par exemple, sur mobile en portrait). Teste toujours avec PageSpeed Insights sur différents appareils.
Peut-on lazy-loader les iframes vidéo YouTube ou Vimeo ?
Oui, et c'est même recommandé. Ajoute loading="lazy" sur les balises <iframe> pour éviter de charger les players vidéo avant que l'utilisateur n'atteigne la zone concernée. Le gain est souvent spectaculaire (plusieurs centaines de Ko économisés).
🏷 Related Topics
Domain Age & History Images & Videos Web Performance

🎥 From the same video 21

Other SEO insights extracted from this same Google Search Central video · duration 54 min · published on 25/01/2018

🎥 Watch the full video on YouTube →

Related statements

💬 Comments (0)

Be the first to comment.

2000 characters remaining
🔔

Get real-time analysis of the latest Google SEO declarations

Be the first to know every time a new official Google statement drops — with full expert analysis.

No spam. Unsubscribe in one click.