What does Google say about SEO? /
Quick SEO Quiz

Test your SEO knowledge in 3 questions

Less than 30 seconds. Find out how much you really know about Google search.

🕒 ~30s 🎯 3 questions 📚 SEO Google

Official statement

It is possible to have a good First Input Delay score while having poor Time to Interactive and Total Blocking Time scores, likely due to intermittent blocking of the main thread not captured by FID. If the real user experience is good despite these metrics, it may be an edge case of the measurement tools. Report the case to the Lighthouse team.
21:22
🎥 Source video

Extracted from a Google Search Central video

⏱ 39:51 💬 EN 📅 17/06/2020 ✂ 51 statements
Watch on YouTube (21:22) →
Other statements from this video 50
  1. 0:33 Google voit-il vraiment le HTML que vous croyez optimiser ?
  2. 0:33 Le HTML rendu dans la Search Console reflète-t-il vraiment ce que Googlebot indexe ?
  3. 1:47 Le JavaScript tardif nuit-il vraiment à votre indexation Google ?
  4. 1:47 Pourquoi Googlebot rate-t-il vos modifications JavaScript critiques ?
  5. 2:23 Google réécrit vos balises title et meta description : faut-il encore les optimiser ?
  6. 3:03 Google réécrit-il vos balises title et meta description à volonté ?
  7. 3:45 DOMContentLoaded vs événement load : pourquoi cette différence change-t-elle tout pour le rendu côté Google ?
  8. 3:45 DOMContentLoaded vs load : quel événement Googlebot attend-il réellement pour indexer votre contenu ?
  9. 6:23 Comment prioriser le rendu hybride serveur/client sans pénaliser votre SEO ?
  10. 6:23 Faut-il vraiment rendre le contenu principal côté serveur avant les métadonnées en SSR ?
  11. 7:27 Faut-il éviter la balise canonical côté serveur si elle n'est pas correcte au premier rendu ?
  12. 8:00 Faut-il supprimer la balise canonical plutôt que d'en servir une incorrecte corrigée en JavaScript ?
  13. 9:06 Comment vérifier quelle canonical Google a vraiment retenue pour vos pages ?
  14. 9:38 L'URL Inspection révèle-t-elle vraiment les conflits de canonical ?
  15. 10:08 Faut-il vraiment ignorer le noindex sur vos fichiers JS et CSS ?
  16. 10:08 Faut-il ajouter un noindex sur les fichiers JavaScript et CSS ?
  17. 10:39 Peut-on vraiment se fier au cache: de Google pour diagnostiquer un problème SEO ?
  18. 10:39 Pourquoi le cache: de Google est-il un piège pour tester le rendu de vos pages ?
  19. 11:10 Faut-il vraiment se préoccuper de la capture d'écran dans Search Console ?
  20. 11:10 Les screenshots ratés dans Google Search Console bloquent-ils vraiment l'indexation ?
  21. 12:14 Le lazy loading natif est-il vraiment crawlé par Googlebot ?
  22. 12:14 Faut-il encore s'inquiéter du lazy loading natif pour le référencement ?
  23. 12:26 Faut-il vraiment découper son JavaScript par page pour optimiser le crawl ?
  24. 12:26 Le code splitting JavaScript peut-il réellement améliorer votre crawl budget et vos Core Web Vitals ?
  25. 12:46 Pourquoi vos scores Lighthouse mobile sont-ils systématiquement plus bas que sur desktop ?
  26. 12:46 Pourquoi vos scores Lighthouse mobile sont-ils systématiquement plus bas que desktop ?
  27. 13:50 Votre lazy loading bloque-t-il la détection de vos images par Google ?
  28. 13:50 Le lazy loading peut-il vraiment rendre vos images invisibles aux yeux de Google ?
  29. 16:36 Le rendu côté client fonctionne-t-il vraiment avec Googlebot ?
  30. 16:58 Le rendu JavaScript côté client nuit-il vraiment à l'indexation Google ?
  31. 17:23 Où trouver la documentation officielle JavaScript SEO de Google ?
  32. 18:37 Faut-il vraiment aligner les comportements desktop, mobile et AMP pour éviter les pièges SEO ?
  33. 19:17 Faut-il vraiment unifier l'expérience mobile, desktop et AMP pour éviter les pénalités ?
  34. 19:48 Faut-il vraiment corriger un thème WordPress bourré de JavaScript si Google l'indexe correctement ?
  35. 19:48 Faut-il vraiment éviter JavaScript pour le SEO ou est-ce un mythe persistant ?
  36. 21:22 Peut-on avoir d'excellentes Core Web Vitals tout en ayant un site techniquement défaillant ?
  37. 23:23 Le FOUC ruine-t-il vraiment vos performances Core Web Vitals ?
  38. 23:23 Le FOUC pénalise-t-il vraiment votre référencement naturel ?
  39. 25:01 Le JavaScript consomme-t-il vraiment votre crawl budget ?
  40. 25:01 Le JavaScript consomme-t-il vraiment plus de crawl budget que le HTML classique ?
  41. 28:43 Faut-il bloquer l'accès aux utilisateurs sans JavaScript pour protéger son SEO ?
  42. 28:43 Bloquer un site sans JavaScript risque-t-il une pénalité SEO ?
  43. 30:10 Pourquoi vos scores Lighthouse ne reflètent-ils jamais la vraie expérience de vos utilisateurs ?
  44. 30:16 Pourquoi vos scores Lighthouse ne reflètent-ils pas la vraie performance de votre site ?
  45. 34:02 Le render tree de Google rend-il vos outils de test SEO obsolètes ?
  46. 34:34 Le render tree de Google : faut-il vraiment s'en préoccuper en SEO ?
  47. 35:38 Faut-il vraiment s'inquiéter des ressources non chargées dans Search Console ?
  48. 36:08 Faut-il vraiment s'inquiéter des erreurs de chargement dans Search Console ?
  49. 37:23 Pourquoi Google n'a-t-il pas besoin de télécharger vos images pour les indexer ?
  50. 38:14 Googlebot télécharge-t-il vraiment les images lors du crawl principal ?
📅
Official statement from (5 years ago)
TL;DR

Google confirms that a site can have an excellent First Input Delay while failing on Time to Interactive and Total Blocking Time — a metric paradox caused by intermittent main thread blocking. For an SEO, this means that FID alone is not sufficient to diagnose real performance issues. If the user experience remains good despite contradictory metrics, it’s likely a technical limitation of the measurement tools that should be reported to the Lighthouse team.

What you need to understand

How can a good FID coexist with a disastrous TTI?

First Input Delay measures only the delay between the user's first interaction (click, tap) and the browser's response. It’s a snapshot metric, captured at the precise moment when the user acts for the first time on the page.

Time to Interactive and Total Blocking Time, on the other hand, evaluate the availability of the main thread over a much wider time window. TTI measures the time before the page becomes fully interactive and stable for at least 5 seconds. TBT adds up all main thread blocking events longer than 50ms between FCP and TTI.

The paradox occurs when the user interacts during a brief window of thread availability — thus achieving an excellent FID — while the rest of the loading remains plagued by heavy scripts that intermittently block the thread. FID captures only a moment; TTI/TBT scrutinize the entire loading period.

What does

SEO Expert opinion

Cette déclaration est-elle cohérente avec les observations terrain ?

Absolument. On observe régulièrement ce pattern sur des sites e-commerce ou médias qui chargent des trackers analytics, des bannières publicitaires ou des widgets tiers de manière asynchrone. Le FID field reste bon parce que l'utilisateur moyen clique pendant une fenêtre de disponibilité, mais Lighthouse hurle au rouge sur TTI/TBT parce que le thread principal est pollué par intermittence.

Ce qui est intéressant, c'est que Google reconnaît ouvertement que les métriques peuvent mentir — ou du moins ne pas refléter l'expérience réelle. C'est rare de voir une admission aussi directe que « il peut s'agir d'un edge case des outils de mesure ». Cela valide ce que beaucoup de praticiens suspectaient : les Core Web Vitals ne sont pas infaillibles.

Attention toutefois : ce n'est pas un blanc-seing pour ignorer TTI/TBT. Si tes données CrUX montrent un FID stable et bon sur 28 jours, mais que Lighthouse reste rouge, creuse. Peut-être que ton trafic réel est mobile léger (interactions tardives, après stabilisation du thread), tandis que ton audit lab simule un desktop rapide (interaction précoce, pendant les blocages). [A vérifier] : Google ne précise pas si ce pattern est plus fréquent sur mobile ou desktop, ni s'il y a une corrélation avec des frameworks JS spécifiques.

Quelles nuances faut-il apporter à cette déclaration ?

Martin Splitt dit « si l'expérience utilisateur réelle est bonne ». Mais comment mesurer cette « bonne expérience » de manière objective ? FID seul ne suffit pas — c'est précisément le sujet de la déclaration. Interaction to Next Paint (INP) est censé mieux capturer la réactivité globale, mais il n'était pas encore Core Web Vital au moment de cette déclaration.

Deuxième nuance : « remonter le cas à l'équipe Lighthouse » est un conseil valable, mais combien de SEO vont vraiment le faire ? En pratique, si ton FID field est bon et que tes utilisateurs ne se plaignent pas, tu vas probablement ignorer le TTI/TBT lab. C'est pragmatique, mais risqué : un changement de pattern de trafic (plus d'interactions précoces) pourrait faire basculer ton FID field dans le rouge du jour au lendemain.

Enfin, cette déclaration date d'une époque où FID était encore la métrique Core Web Vital de référence pour l'interactivité. Depuis mars 2024, INP a remplacé FID. Le paradoxe FID/TTI est donc partiellement résolu — INP mesure toutes les interactions, pas seulement la première. Mais le principe reste valable : les métriques lab et field peuvent diverger, et il faut croiser les deux pour diagnostiquer correctement.

Dans quels cas cette règle ne s'applique-t-elle pas ?

Si ton FID field est mauvais ET ton TTI/TBT lab est mauvais, pas de débat : tu as un vrai problème de performance. Les deux sources de données convergent — le thread principal est saturé, et l'expérience utilisateur en souffre. Pas d'edge case métrique ici, juste du JavaScript mal optimisé.

De même, si ton FID field est bon mais que tes métriques business (taux de rebond, taux de conversion, temps d'engagement) sont médiocres, ne te cache pas derrière un « edge case Lighthouse ». L'utilisateur peut techniquement interagir rapidement, mais si le contenu ou l'interface est décevant, FID ne sauvera rien. Les Core Web Vitals ne mesurent pas l'utilité ou la pertinence du contenu — ils mesurent la performance technique.

Enfin, sur des SPA (Single Page Applications) complexes avec hydratation progressive, ce pattern FID bon / TTI mauvais est presque systématique. Ce n'est pas un edge case, c'est un pattern architectural. Si tu as un Next.js ou un Nuxt avec Server-Side Rendering + hydratation client lourde, tu vas forcément avoir un TTI élevé. L'enjeu est alors d'optimiser le code splitting et le lazy loading, pas de chercher un bug Lighthouse.

Practical impact and recommendations

Comment diagnostiquer correctement ce pattern FID/TTI contradictoire ?

Première étape : croiser field data et lab data. Vérifie ton FID dans CrUX (via PageSpeed Insights, Search Console, ou BigQuery) sur 28 jours. Compare avec un audit Lighthouse récent sur la même URL. Si FID field est vert et TTI/TBT lab est rouge, tu es potentiellement dans le cas décrit par Martin Splitt.

Deuxième étape : analyser les traces de performance en DevTools. Ouvre Chrome DevTools > Performance, enregistre un chargement complet, et scrute le main thread. Cherche des patterns de blocage intermittent : des pics lourds (>50ms) espacés de fenêtres de disponibilité. Si tu vois ce pattern, c'est probablement ce qui explique le paradoxe.

Troisième étape : tester sur des devices et connexions variés. Un FID bon sur desktop 4G peut devenir catastrophique sur mobile 3G. Utilise WebPageTest avec des profils de throttling différents. Si le pattern FID/TTI reste contradictoire sur tous les profils, c'est plus probablement un edge case métrique. Si ça diverge selon le device, c'est un vrai problème de performance contextuel.

Que faire concrètement si tu es dans ce cas de figure ?

Si ton FID field est bon et que l'expérience utilisateur réelle ne montre aucun signe de dégradation (taux de rebond stable, conversion normale, pas de plaintes), tu peux considérer que le TTI/TBT lab est un faux positif. Mais ne t'arrête pas là : ouvre un ticket sur le repo GitHub de Lighthouse en documentant ton cas avec des screenshots, des traces de performance, et des liens CrUX.

En parallèle, optimise quand même ton JavaScript. Même si FID est bon aujourd'hui, un changement de comportement utilisateur (interactions plus précoces) ou une évolution du code (ajout d'un nouveau tracker) pourrait faire basculer FID dans le rouge. Code splitting, lazy loading des scripts non critiques, defer ou async sur les tiers — les classiques. L'objectif est de réduire les blocages intermittents du thread principal, même s'ils ne pénalisent pas encore FID.

Enfin, si tu es sur un site complexe avec des enjeux business forts, monitore INP (Interaction to Next Paint) même si FID reste ta métrique Core Web Vital actuelle. INP capture mieux la réactivité globale et détecte les problèmes que FID peut manquer. Si INP est bon ET FID est bon, tu es probablement safe. Si INP est rouge, creuse — tu as un vrai problème d'interactivité.

Quelles erreurs éviter dans ce contexte ?

Erreur n°1 : ignorer TTI/TBT sous prétexte que FID est bon. Même si c'est un edge case métrique, les blocages intermittents du thread principal dégradent l'expérience utilisateur de manière subtile — scrolling saccadé, animations qui lag, formulaires qui répondent mal. FID ne capture qu'un instant ; l'utilisateur vit toute la session.

Erreur n°2 : sur-optimiser pour Lighthouse au détriment de l'UX réelle. Si ton FID field est bon, ne casse pas ton architecture juste pour faire passer TTI lab au vert. Lighthouse simule des conditions lab qui ne reflètent pas toujours ton trafic réel. Priorise les optimisations qui améliorent l'expérience terrain, pas juste le score Lighthouse.

Erreur n°3 : ne pas documenter et remonter les edge cases. Si tu es convaincu que c'est un bug ou une limite des outils de mesure, aide l'équipe Lighthouse à améliorer leurs métriques en documentant ton cas. Plus il y a de cas remontés, plus les outils s'affinent — c'est dans l'intérêt de tout l'écosystème.

  • Croiser systématiquement CrUX (field data) et Lighthouse (lab data) avant de tirer des conclusions.
  • Analyser les traces de performance en DevTools pour identifier les blocages intermittents du thread principal.
  • Tester sur devices et connexions variés (mobile 3G, desktop 4G, etc.) pour contextualiser les résultats.
  • Monitore INP en complément de FID pour capturer la réactivité globale, pas seulement la première interaction.
  • Optimiser le JavaScript (code splitting, lazy loading, defer/async) même si FID field est bon, pour anticiper les changements de comportement utilisateur.
  • Documenter et remonter les edge cases à l'équipe Lighthouse via GitHub si l'expérience réelle contredit les métriques lab.
Les Core Web Vitals sont des indicateurs précieux, mais ils ne sont pas infaillibles. Un bon FID avec un TTI/TBT catastrophique peut signaler un edge case métrique — surtout si l'expérience utilisateur réelle reste fluide. L'enjeu est de croiser field data et lab data, de creuser les traces de performance, et d'optimiser le thread principal indépendamment des scores Lighthouse. Ces diagnostics croisés et optimisations fines demandent une expertise technique pointue et une connaissance approfondie des outils de mesure. Si ton équipe n'a pas le temps ou les ressources pour mener ces audits en profondeur, faire appel à une agence SEO spécialisée en performance web peut s'avérer judicieux pour obtenir un diagnostic personnalisé et des recommandations actionnables adaptées à ton contexte métier.

❓ Frequently Asked Questions

Peut-on avoir un bon FID et un mauvais TTI en même temps ?
Oui, c'est possible. FID mesure uniquement le délai de la première interaction utilisateur, tandis que TTI évalue la stabilité du thread principal sur toute la période de chargement. Si l'utilisateur interagit pendant une courte fenêtre de disponibilité du thread, FID sera bon même si le reste du chargement est pollué par des scripts lourds.
Que signifie « blocages intermittents du thread principal » ?
Ce sont des périodes où le thread principal du navigateur est occupé par des tâches JavaScript lourdes (>50ms), espacées de courtes fenêtres de disponibilité. Ces blocages intermittents dégradent TTI et TBT, mais peuvent être manqués par FID si l'utilisateur interagit pendant une fenêtre de disponibilité.
Dois-je ignorer TTI/TBT si mon FID field est bon ?
Non. Même si FID est bon, des blocages intermittents du thread principal peuvent dégrader l'expérience utilisateur de manière subtile (scrolling saccadé, animations lag). Optimise quand même ton JavaScript pour anticiper les changements de comportement utilisateur ou d'architecture.
Comment savoir si c'est un edge case métrique ou un vrai problème ?
Croise field data (CrUX) et lab data (Lighthouse), analyse les traces de performance en DevTools, et teste sur devices variés. Si l'expérience utilisateur réelle reste bonne (taux de rebond stable, conversion normale) malgré un TTI/TBT lab rouge, c'est probablement un edge case. Documente et remonte le cas à l'équipe Lighthouse.
INP résout-il ce paradoxe FID/TTI ?
En partie. INP mesure toutes les interactions utilisateur, pas seulement la première, et capture mieux la réactivité globale. Mais le principe reste valable : les métriques lab et field peuvent diverger, et il faut croiser les deux pour diagnostiquer correctement les problèmes de performance.
🏷 Related Topics
Domain Age & History AI & SEO Web Performance

🎥 From the same video 50

Other SEO insights extracted from this same Google Search Central video · duration 39 min · published on 17/06/2020

🎥 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.