Core Web Vitals : Mesurez et améliorez les performances web
Vous avez construit un site web rapide, mais les utilisateurs se plaignent encore de lenteur. Ou peut-être que Google Search Console indique que vos pages ont des Core Web Vitals « médiocres ». Vous n'êtes pas seul—de nombreux développeurs ont du mal à traduire les métriques de performance en améliorations concrètes. Les Core Web Vitals sont les métriques centrées sur l'utilisateur de Google qui quantifient le chargement, l'interactivité et la stabilité visuelle. Les ignorer peut nuire à votre classement dans les moteurs de recherche et à la satisfaction des utilisateurs. Ce guide vous accompagne dans la mesure et l'amélioration de chaque vital avec des étapes concrètes.
Que sont les Core Web Vitals ?
Les Core Web Vitals sont un ensemble de trois métriques que Google utilise pour évaluer l'expérience utilisateur :
- Largest Contentful Paint (LCP) : mesure les performances de chargement. Il marque le moment où le plus grand élément de contenu (image, bloc de texte ou vidéo) devient visible. Visez un LCP inférieur à 2,5 secondes.
- First Input Delay (FID) : mesure l'interactivité. Il enregistre le temps entre la première interaction d'un utilisateur (par exemple, un clic sur un lien) et la réponse du navigateur. Visez un FID inférieur à 100 millisecondes.
- Cumulative Layout Shift (CLS) : mesure la stabilité visuelle. Il quantifie les décalages de mise en page inattendus pendant le chargement de la page. Visez un CLS inférieur à 0,1.
Ces métriques font partie des signaux d'expérience de page de Google et influencent directement le SEO. Mais plus important encore, elles reflètent la frustration réelle des utilisateurs—chargements lents, interactions saccadées et contenu qui saute.
Comment mesurer les Core Web Vitals
Vous ne pouvez pas améliorer ce que vous ne mesurez pas. Il existe deux approches principales : les données de laboratoire (tests synthétiques) et les données de terrain (surveillance des utilisateurs réels).
Outils de laboratoire
- Lighthouse : intégré à Chrome DevTools, il audite les performances et fournit des scores pour LCP, FID (sous forme de TBT) et CLS. Exécutez-le en mode navigation privée pour éviter que les extensions faussent les résultats.
- WebPageTest : offre des filmstrips détaillés et des diagrammes en cascade, utiles pour diagnostiquer les goulots d'étranglement du LCP.
- PageSpeed Insights : combine les données de laboratoire et de terrain, affichant à la fois les scores Lighthouse et les métriques des utilisateurs réels du Chrome User Experience Report (CrUX).
Outils de terrain
- Chrome UX Report (CrUX) : ensemble de données public de métriques d'utilisateurs réels pour des millions de sites. Accessible via PageSpeed Insights ou BigQuery.
- Google Search Console : dans le rapport « Core Web Vitals », il regroupe les URL par statut (médiocre, à améliorer, bon).
- Bibliothèque JavaScript Web Vitals : ajoutez cet extrait à votre site pour collecter les métriques via Google Analytics ou votre propre point de terminaison.
import {onLCP, onFID, onCLS} from 'web-vitals';
function sendToAnalytics(metric) {
// Remplacez par votre point de terminaison d'analyse
console.log(metric.name, metric.value);
}
onLCP(sendToAnalytics);
onFID(sendToAnalytics);
onCLS(sendToAnalytics);
Commencez par les données de terrain pour identifier les pages problématiques, puis utilisez les outils de laboratoire pour analyser les causes.
Améliorer le Largest Contentful Paint (LCP)
Le LCP est souvent le vital le plus difficile à corriger. Le plus grand élément est généralement une image héros ou un grand bloc de texte. Voici comment l'optimiser :
- Optimisez les images : compressez les images en utilisant des formats modernes comme WebP ou AVIF. Utilisez des images responsives avec
srcsetetsizespour servir des images de taille appropriée. Chargez en lazy-load les images sous la ligne de flottaison, mais ne chargez jamais en lazy-load l'image LCP. - Préchargez les ressources critiques : ajoutez
<link rel="preload">pour l'image ou la police LCP. Par exemple :<link rel="preload" as="image" href="#">. - Éliminez les ressources bloquant le rendu : différez le CSS et le JavaScript non critiques. Intégrez le CSS critique et chargez le reste de manière asynchrone.
- Utilisez un CDN : servez les ressources depuis un réseau de diffusion de contenu pour réduire la latence.
- Réduisez le temps de réponse du serveur : optimisez les requêtes backend, utilisez la mise en cache et envisagez le rendu en périphérie.
Pour aller plus loin, consultez le guide LCP de web.dev.
Améliorer le First Input Delay (FID)
Le FID mesure la réactivité. Un FID élevé signifie que le thread principal du navigateur est occupé et ne peut pas répondre rapidement aux entrées utilisateur. Pour améliorer le FID :
- Divisez les tâches longues : découpez le JavaScript en morceaux plus petits en utilisant
setTimeoutourequestIdleCallback. - Minimisez le travail sur le thread principal : réduisez le temps d'exécution JavaScript en fractionnant le code, en éliminant le code mort (tree-shaking) et en supprimant les polyfills inutilisés.
- Utilisez des web workers pour les calculs lourds.
- Évitez les gros bundles JavaScript : auditez avec
webpack-bundle-analyzeret envisagez le lazy-loading des scripts non critiques.
Remarque : le FID est remplacé par l'Interaction to Next Paint (INP) en mars 2024. Les stratégies pour améliorer l'INP sont similaires—concentrez-vous sur la réduction du blocage du thread principal.
Améliorer le Cumulative Layout Shift (CLS)
Le CLS mesure les décalages de mise en page inattendus. Les causes courantes incluent les images sans dimensions, les publicités, les intégrations et les polices web. Pour corriger le CLS :
- Incluez toujours les attributs width et height sur les images et les vidéos. Cela permet au navigateur de réserver l'espace.
- Réservez de l'espace pour les publicités et les intégrations : utilisez la propriété CSS
aspect-ratioou des éléments de remplacement. - Évitez d'insérer du contenu au-dessus du contenu existant sauf en réponse à une interaction utilisateur.
- Utilisez
font-display: swappour les polices web afin d'éviter le texte invisible (FOIT), mais sachez que swap peut provoquer des décalages de mise en page si la police de secours a des métriques différentes. Envisagez d'utilisersize-adjustoufont-display: optional.
Testez avec l'API Layout Instability dans Chrome DevTools pour identifier les décalages.
Outils et workflow pour une surveillance continue
La performance n'est pas une correction ponctuelle. Mettez en place un workflow :
- Référence : exécutez Lighthouse sur les pages clés et enregistrez les scores.
- Surveillez les données de terrain : utilisez la bibliothèque web-vitals pour envoyer les métriques à votre plateforme d'analyse. Configurez des alertes pour les régressions.
- Intégrez à la CI : utilisez Lighthouse CI pour faire échouer les builds si les budgets de performance sont dépassés.
- Audits réguliers : planifiez des revues mensuelles des Core Web Vitals dans Search Console.
N'oubliez pas que les améliorations doivent être centrées sur l'utilisateur, pas seulement dictées par les métriques. Un site rapide ravit les utilisateurs et booste le SEO.
FAQ
Quels sont les seuils actuels des Core Web Vitals ?
LCP : bon ≤ 2,5 s, à améliorer ≤ 4 s, médiocre > 4 s. FID : bon ≤ 100 ms, à améliorer ≤ 300 ms, médiocre > 300 ms. CLS : bon ≤ 0,1, à améliorer ≤ 0,25, médiocre > 0,25.
À quelle fréquence dois-je vérifier les Core Web Vitals ?
Les données de terrain sont mises à jour quotidiennement dans Search Console, mais les tendances significatives prennent des semaines. Surveillez en continu via les analyses et examinez mensuellement. Testez en laboratoire après des modifications majeures du code.
L'amélioration des Core Web Vitals affecte-t-elle vraiment le SEO ?
Oui, Google utilise l'expérience de page comme signal de classement. Bien que le contenu reste primordial, de bons Core Web Vitals peuvent vous donner un avantage, surtout dans les niches concurrentielles.
Prêt à optimiser vos images pour un meilleur LCP ? Essayez notre Compresseur d'images gratuit pour réduire la taille des fichiers sans perte de qualité.