Métriques essentielles de la web performance : LCP, FID, INP et CLS
2024
Topic
Webperf
L’objectif
Dans le monde du marketing digital, la performance d’un site web est devenue un facteur crucial pour le succès d’une entreprise en ligne. Parmi les nombreux aspects à considérer, les métriques de vitesse et d’expérience utilisateur sont particulièrement importantes.
Les Core Web Vitals : les signaux Web essentiels
Google a introduit quatres métriques clés dans son initiative Web Vitals : le Largest Contentful Paint (LCP), le First Input Delay (FID), le Interaction to Next Paint (INP) et le Cumulative Layout Shift (CLS). Ces mesures sont essentielles pour comprendre et optimiser l’expérience utilisateur sur votre site web.
1. LCP Largest Contentful Paint : la vitesse perçue
Définition
Le Largest Contentful Paint (LCP) mesure le temps nécessaire pour que le plus grand élément de contenu visible dans la fenêtre d’affichage initiale soit rendu. En d’autres termes, il s’agit du temps que met la partie la plus importante de votre page à s’afficher pour l’utilisateur.
Importance pour les marketeurs
Le LCP est crucial car il représente la perception de la vitesse de chargement par l’utilisateur. Un LCP rapide donne l’impression d’un site réactif et efficace, ce qui peut améliorer l’engagement et réduire le taux de rebond. Selon Google, un bon LCP doit être inférieur à 2,5 secondes.
Objectifs recommandés
- Bon : moins de 2,5 secondes
- Nécessite une amélioration : entre 2,5 et 4 secondes
- Mauvais : plus de 4 secondes
Exemple concret
Imaginons un site e-commerce de mode. La page d’accueil présente une grande image de bannière montrant les dernières tendances. Cette image est probablement l’élément LCP. Si elle prend 5 secondes à charger, les visiteurs pourraient percevoir le site comme lent et quitter avant même de voir les produits.
Facteurs influençant le LCP
Le LCP peut être affecté par plusieurs éléments sur une page
- Images : Les images de grande taille sont souvent les éléments les plus lourds à charger.
- Vidéos : Les bannières ou autres éléments vidéo peuvent être lourds.
- Texte ou éléments CSS : Parfois, de gros blocs de texte ou des polices personnalisées retardent le rendu.
Optimisation du LCP
Pour améliorer le LCP, voici quelques stratégies efficaces :
- Optimiser les images :
- Utiliser des formats modernes comme .WebP
- Redimensionner les images à la taille appropriée
- Compresser les images sans perte de qualité visible
- Mettre en place un système de mise en cache efficace :
- Utiliser un CDN (Content Delivery Network)
- Configurer correctement les en-têtes de cache du serveur
- Réduire le temps de réponse du serveur :
- Optimiser la base de données
- Mettre à niveau l’hébergement si nécessaire
- Éliminer les ressources bloquant le rendu :
- Charger le CSS critique de manière inline
- Différer le chargement du JavaScript non essentiel
- Utiliser la préconnexion pour les ressources tierces importantes :
<link rel="preconnect" href="https://example.com">
2. FID First Input Delay : la réactivité
Définition
Le First Input Delay (FID) mesure le temps entre la première interaction d’un utilisateur avec votre page (par exemple, cliquer sur un lien ou un bouton) et le moment où le navigateur est capable de répondre à cette interaction.
Importance pour les marketeurs
Le FID est un indicateur direct de l’interactivité et de la réactivité de votre site. Un FID faible signifie que les utilisateurs peuvent interagir rapidement avec votre site, ce qui est crucial pour les conversions et l’engagement.
Objectifs recommandés
- Bon : moins de 100 millisecondes
- Nécessite une amélioration : entre 100 et 300 millisecondes
- Mauvais : plus de 300 millisecondes
Exemple concret
Considérons un site de réservation de voyages. Un utilisateur clique sur le bouton « Rechercher des vols » après avoir entré ses critères. Si le FID est élevé, disons 500 ms, l’utilisateur pourrait penser que le bouton ne fonctionne pas et cliquer plusieurs fois, frustré par le manque de réactivité.
Optimisation du FID
Pour améliorer le FID, concentrez-vous sur ces aspects :
- Réduire l’impact du JavaScript tiers :
- Charger les scripts tiers de manière asynchrone
- Différer le chargement des scripts non essentiels
- Diviser les tâches JavaScript longues :
- Fractionner le code en tâches plus petites
- Utiliser requestIdleCallback() pour les tâches non urgentes
- Utiliser un Web Worker pour les opérations intensives :
const worker = new Worker('worker.js'); worker.postMessage({data: complexData});
- Optimiser le chargement des polices :
- Utiliser font-display: optional pour les polices non essentielles
- Précharger les polices critiques
- Minimiser le JavaScript :
- Supprimer le code inutilisé
- Compresser les fichiers JavaScript
3. INP Interaction to Next Paint : la Nouvelle Métrique
Définition
Interaction to Next Paint (INP) est une métrique proposée par Google dans le cadre des Core Web Vitals pour remplacer progressivement le First Input Delay (FID). Le INP mesure le temps nécessaire pour qu’une page réponde à toutesles interactions utilisateur (clics, touches, etc.), et pas seulement la première comme le FID.
Le INP capture la durée entre une interaction utilisateur et le moment où la prochaine mise à jour visuelle significative (ou « paint ») se produit. Cela donne une image plus précise de la réactivité globale de la page par rapport aux actions de l’utilisateur, plutôt que de se concentrer uniquement sur la première interaction.
Importance pour les marketeurs
Le INP est particulièrement important, car il reflète la qualité de l’expérience utilisateur au fil de ses interactions avec une page. Un site réactif améliore non seulement l’expérience utilisateur, mais aussi les chances de conversion. Voici quelques points à considérer pour comprendre son importance :
- Expérience utilisateur globale : Contrairement au FID, qui ne mesurait que la première interaction, l’INP prend en compte l’ensemble des interactions, reflétant mieux l’expérience utilisateur globale.
- Conversion et engagement : Des retards dans les interactions (comme des boutons qui ne réagissent pas rapidement) peuvent frustrer les utilisateurs et augmenter le taux de rebond, ce qui impacte négativement les conversions.
- Positionnement SEO : Avec l’évolution des Core Web Vitals, Google pourrait intégrer l’INP dans ses critères de classement. Optimiser cette métrique pourrait donc non seulement améliorer l’expérience utilisateur, mais aussi booster le SEO du site.
- Réputation de la marque : Un site qui réagit lentement aux clics ou autres interactions peut donner une impression de lenteur et de non-professionnalisme, affectant ainsi la perception de la marque.
Objectifs recommandés
Google propose des seuils pour évaluer si le INP est performant :
- Bon : Moins de 200 millisecondes
- Nécessite une amélioration : Entre 200 et 500 millisecondes
- Mauvais : Plus de 500 millisecondes
Ces critères montrent que chaque interaction utilisateur doit avoir une réponse presque instantanée pour maintenir une expérience fluide. Un INP de plus de 500 ms est considéré
comme mauvais et peut entraîner une baisse d’engagement et des performances médiocres du site.
Exemple concret
Prenons l’exemple d’une plateforme de streaming vidéo. Supposons qu’un utilisateur clique sur un bouton pour lire une vidéo, mais que le site prend une seconde entière pour réagir. Ce délai se traduit par un INP élevé, ce qui rend l’expérience frustrante. Si chaque action, comme passer en mode plein écran ou ajuster le volume, entraîne un délai similaire, l’utilisateur pourrait quitter la plateforme et choisir un concurrent plus réactif.
Sur des sites e-commerce, un INP élevé lors de l’ajout d’un produit au panier ou lors du passage à la caisse peut aussi décourager les acheteurs, entraînant une baisse des conversions.
Optimisation du INP : stratégies efficaces
Pour améliorer l’Interaction to Next Paint, plusieurs stratégies techniques peuvent être mises en œuvre afin de garantir que toutes les interactions utilisateur sont traitées rapidement et sans délai perceptible.
a. Optimisation du JavaScript
Le JavaScript est souvent la cause principale des retards dans la réactivité d’une page. Voici des techniques d’optimisation :
-
- Réduction et minification des scripts : Supprimez les lignes inutiles et minifiez les fichiers JavaScript pour réduire leur taille.
- Différé des scripts non critiques : Utilisez les attributs
async
oudefer
pour retarder le chargement des scripts non essentiels jusqu’à ce que la page soit complètement rendue. - Segmentation des tâches longues : Si une tâche JavaScript est longue, la diviser en segments plus petits et l’exécuter par morceaux permet de libérer le thread principal plus fréquemment et de traiter les interactions utilisateur.
b. Optimisation du CSS
Le CSS peut également bloquer le rendu et donc affecter l’INP :
-
- CSS critique : Chargez d’abord le CSS nécessaire au rendu initial de la page et retardez le reste.
- Minification du CSS : Réduisez la taille du fichier CSS en supprimant les espaces inutiles et les commentaires.
c. Utilisation des Web Workers
Les Web Workers permettent de décharger certaines tâches lourdes (comme les calculs complexes) du thread principal vers des threads en arrière-plan. Cela permet au navigateur de répondre plus rapidement aux interactions utilisateur sans être bloqué par d’autres processus en cours.
d. Gestion des animations
Les animations peuvent parfois ralentir la réactivité d’une page :
-
- Optimisation des animations CSS : Utilisez les propriétés
transform
etopacity
pour les animations, car elles sont moins coûteuses en ressources que d’autres propriétés commeheight
ouwidth
- Limiter l’usage des animations JavaScript : Si possible, préférez les animations en CSS plutôt qu’en JavaScript, car ces dernières peuvent être plus gourmandes en termes de ressources.
- Optimisation des animations CSS : Utilisez les propriétés
e. Amélioration des temps de réponse du serveur
Comme pour le LCP, les temps de réponse du serveur impactent directement l’INP. Un serveur lent entraînera des retards dans le traitement des interactions.
-
- Utilisation d’un CDN : Les réseaux de diffusion de contenu aident à réduire la latence en fournissant des fichiers statiques plus rapidement aux utilisateurs.
- Optimisation des requêtes HTTP : Réduisez le nombre de requêtes nécessaires et regroupez les fichiers CSS et JavaScript lorsque cela est possible.
f. Prise en compte de l’expérience mobile
Étant donné que les utilisateurs mobiles sont plus sensibles aux temps de réponse (connexion lente, appareils moins puissants), il est essentiel d’optimiser l’INP pour ces appareils. Réduire la taille des ressources et minimiser les scripts lourds peut considérablement améliorer l’INP sur mobile.
Conclusion
Le Interaction to Next Paint (INP) est une évolution clé des métriques de performance, offrant une vue plus complète de la réactivité globale d’une page. Optimiser cette métrique permet aux marketeurs d’améliorer l’expérience utilisateur, de réduire le taux de rebond, d’augmenter les conversions et de maintenir une bonne position SEO. Grâce à des techniques d’optimisation du JavaScript, de gestion des animations, et d’amélioration des temps de réponse serveur, il est possible de maintenir un INP en dessous de 200 ms, garantissant ainsi une expérience utilisateur fluide et réactive.
4. CLS Cumulative Layout Shift : la stabilité visuelle
Définition
Le Cumulative Layout Shift (CLS) mesure la somme de tous les changements de mise en page inattendus qui se produisent pendant le cycle de vie d’une page. En d’autres termes, il quantifie l’instabilité visuelle d’une page web.
Importance pour les marketeurs
Un CLS élevé peut être extrêmement frustrant pour les utilisateurs, surtout s’ils tentent d’interagir avec des éléments qui bougent de manière inattendue. Cela peut conduire à des clics accidentels, une mauvaise expérience utilisateur et potentiellement des conversions manquées.
Objectifs recommandés
- Bon : moins de 0,1
- Nécessite une amélioration : entre 0,1 et 0,25
- Mauvais : plus de 0,25
Exemple concret
Imaginez un blog d’actualités. Un lecteur commence à lire un article, mais soudain, une publicité se charge en haut de la page, poussant tout le contenu vers le bas. Le lecteur perd sa place dans l’article, ce qui est frustrant et peut le pousser à quitter la page.
Optimisation du CLS
Pour améliorer le CLS, voici quelques stratégies efficaces :
- Spécifier les dimensions des images et des vidéos :
Toujours définir explicitement la largeur et la hauteur des images et des vidéos dans le CSS ou le HTML. Cela permet au navigateur de réserver l’espace nécessaire pour ces éléments, évitant ainsi les décalages inattendus lorsque les ressources sont chargées. - Réserver de l’espace pour les publicités et les iframes :
Les publicités et les contenus embarqués comme les iframes sont souvent responsables des décalages de mise en page. En réservant un espace dédié pour ces éléments avant leur chargement, on peut éviter les sauts de contenu. - Précharger les polices web :
L’utilisation de polices personnalisées peut entraîner un changement de mise en page lorsque le texte est initialement affiché avec une police par défaut, puis remplacé par la police finale une fois chargée. Précharger les polices web avec des techniques commefont-display: swap
permet de réduire ce problème. - Éviter l’insertion dynamique d’éléments au-dessus du contenu visible :
Si des éléments (comme des bannières, des notifications ou des annonces) sont ajoutés dynamiquement au-dessus du contenu, cela peut causer des décalages de mise en page. Il est préférable de les insérer en dessous du contenu ou de prévoir de l’espace pour ces éléments. - Optimiser les animations et transitions :
Les animations ou transitions mal optimisées peuvent provoquer des changements inattendus de mise en page. Utiliser des animations basées sur des propriétés non bloquantes commetransform
etopacity
, plutôt que sur des propriétés commewidth
height
ouposition
permet de minimiser les décalages de contenu.
L’impact des métriques Web Vitals sur le SEO et le marketing digital
SEO et classement dans les moteurs de recherche
Google a officiellement déclaré que les métriques Core Web Vitals (LCP, FID, INP, CLS) sont des facteurs de classement. Un site performant selon ces métriques aurait donc un avantage concurrentiel dans les résultats de recherche. En fait, tout dépendant du point de départ. Un site extrêmement lent peu en effet gagner quelques places par ce biais.
L’annonce de Google est à prendre avec des pincettes : son mentor en la personne de John Mueller, affirme justement le contraire (voir citation plus bas). Pour ma part, je partage ce constat. Je pense franchement que cela facilite principalement le travail de Google pour l’indexation des pages. Un site performant aura plus de chance d’avoir une fréquentation des bots de crawl plus important. Le volume d’indexation des pages est un sujet récurent sur Google.
Expérience utilisateur et taux de conversion
Des études ont montré une corrélation directe entre la performance web et les taux de conversion :
- Amazon a constaté qu’une augmentation de 100 ms du temps de chargement réduisait les ventes de 1%
- Google a observé qu’une augmentation de 0,5 seconde du temps de chargement des résultats de recherche réduisait le trafic de 20%
Fidélisation des clients
Un site rapide et réactif encourage les utilisateurs à revenir. Selon une étude de Google, 53% des visites mobiles sont abandonnées si une page prend plus de 3 secondes à se charger.
Les outils pour mesurer et surveiller les Web Vitals
- Google PageSpeed Insights : fournit des mesures de performance pour les versions mobile et desktop de votre site, ainsi que des recommandations d’amélioration.
- Chrome User Experience Report : offre des données réelles d’expérience utilisateur pour les sites populaires.
- Lighthouse : un outil automatisé open-source qui peut être exécuté sur n’importe quelle page web pour obtenir des audits de performance, d’accessibilité, de SEO et plus encore.
- Web Vitals Extension : une extension Chrome qui affiche les métriques Core Web Vitals en temps réel lors de la navigation.
- Search Console : fournit un rapport Core Web Vitals qui identifie les groupes de pages qui nécessitent une attention particulière.
Stratégies pour améliorer les Web Vitals
1. Optimisation des images
- Utiliser des formats modernes comme WebP
- Implémenter le lazy loading pour les images hors écran
- Utiliser des services d’optimisation d’images comme Cloudinary, Imgix ou Twicpics
2. Optimisation du code
- Minifier et compresser HTML, CSS et JavaScript
- Utiliser le code splitting pour charger uniquement le JavaScript nécessaire
- Implémenter le tree shaking pour éliminer le code mort
3. Mise en cache efficace
- Utiliser un CDN pour distribuer le contenu statique
- Implémenter un cache de navigateur approprié
- Utiliser le service worker pour le cache hors ligne
4. Optimisation des polices
- Utiliser `font-display: swap` pour éviter le blocage du rendu
- Précharger les polices critiques
- Utiliser des sous-ensembles de polices pour réduire la taille des fichiers
5. Optimisation du rendu
- Utiliser le rendu côté serveur (SSR) ou la génération de sites statiques (SSG) quand c’est approprié
- Implémenter le Critical CSS pour le contenu above-the-fold
- Différer le chargement des ressources non critiques
Mise en pratique : Étude de cas
Pour illustrer l’impact concret des optimisations des Core Web Vitals, examinons une étude de cas fictive mais réaliste.
Scénario initial
La société « TechGadgets », un e-commerce spécialisé dans les produits électroniques, constate une baisse de son trafic organique et de ses conversions. Après analyse, l’équipe marketing découvre que leurs Core Web Vitals sont médiocres :
- LCP : 4,8 secondes (Mauvais)
- FID : 180 ms (À améliorer)
- CLS : 0,22 (À améliorer)
Plan d’action
L’équipe décide de mettre en place un plan d’optimisation sur 3 mois :
1. Mois I : Focus sur le LCP
- Optimisation des images (compression, redimensionnement, WebP)
- Mise en place d’un CDN – (Clouflare, KeyCDN, Amazon CloudFront, CDN77…)
- Amélioration du cache serveur
2. Mois II : Amélioration du FID / INP
- Audit et optimisation du JavaScript
- Utilisation de Web Workers pour les tâches lourdes
- Différer le chargement des scripts non essentiels
3. Mois III : Réduction du CLS
- Définition des dimensions pour les images et les publicités
- Optimisation du chargement des polices
- Restructuration du code pour éviter les changements de mise en page
En conclusion
Les Core Web Vitals – LCP, FID, INP et CLS – sont devenus des métriques essentielles dans le paysage du marketing digital. Comprendre ces métriques et savoir comment les optimiser est crucial pour offrir une expérience utilisateur de qualité. Cela permet de maintenir un bon taux de crawl par les bots des moteurs de recherche ce qui facilitera l’indexation de vos pages.
En résumé des métriques LCP, FID, INP et CLS
En vous concentrant sur l’amélioration de ces métriques, vous ne vous contentez pas de répondre aux exigences de Google, vous créez également un site web plus rapide, plus réactif et plus stable pour vos utilisateurs. Cela se traduit par une meilleure expérience utilisateur, des taux de conversion plus élevés et, en fin de compte, un meilleur retour sur investissement pour vos efforts de marketing digital.
Dixit John Mueller (Webmaster Trend Analyst chez Google) sur Linkedin, il a d’ailleurs fait un post à ce sujet :
« Oui ! Google Search utilise les Core Web Vital. Toutefois, cela ne vaut pas la peine de trop se concentrer sur l’ajustement des scores uniquement pour le référencement. Je sais, il est rare que vous puissiez mesurer quelque chose de manière plus ou moins objective pour le référencement, mais ne laissez pas cela vous monter à la tête. Vous n’avez pas besoin d’être obsédé par chaque point fractionnaire. Obtenir ces derniers pourcents peut représenter un travail colossal. Si vous voulez passer ce temps à atteindre ces derniers points, sachez que le référencement de votre site ne changera généralement pas à cause de cela. Un score parfait est un défi technique amusant, et vous apprendrez quelque chose en route, je connais ça, mais cela ne va pas faire bondir le classement de votre site.«
— John Mueller
Obtenir de bons résultats dans les rapports Core Web Vitals de la Search Console ou via des outils tiers ne garantit aucunement un classement en tête des résultats de recherche. En effet, une expérience de qualité va au-delà des seuls scores des Core Web Vitals. Ces derniers sont donc avant tout destinés à favoriser l’amélioration de son site dans son ensemble pour les utilisateurs, et non à servir uniquement de levier SEO.
N’oubliez pas que l’optimisation des Core Web Vitals est un processus continu. Les technologies et les attentes des utilisateurs évoluent constamment, il est donc essentiel de surveiller régulièrement vos métriques et d’ajuster vos stratégies en conséquence.