Core Web Vitals : Mesurer et Améliorer pour de Meilleures Performances Web
Vous avez construit un site web rapide, mais les utilisateurs se plaignent encore de lenteur. Ou peut-être que votre classement SEO a chuté après une mise à jour de Google. Le coupable pourrait être les Core Web Vitals—un ensemble de métriques qui quantifient l'expérience utilisateur réelle. Les ignorer peut nuire à la fois à l'utilisabilité et à la visibilité dans les recherches. Ce guide vous accompagnera dans la mesure et l'amélioration de chaque vital, avec des étapes pratiques que vous pouvez mettre en œuvre dès aujourd'hui.
Que sont les Core Web Vitals ?
Les Core Web Vitals sont trois métriques spécifiques que Google utilise pour évaluer l'expérience de page :
- Largest Contentful Paint (LCP) : Mesure la performance de chargement. Il suit le temps nécessaire pour que le plus grand élément de contenu (image, vidéo ou bloc de texte) devienne visible. Un bon LCP est de 2,5 secondes ou moins.
- Interaction to Next Paint (INP) : Mesure l'interactivité. Il enregistre la latence de toutes les interactions (clics, taps, pressions de touches) et rapporte un percentile élevé. Un bon INP est de 200 millisecondes ou moins.
- Cumulative Layout Shift (CLS) : Mesure la stabilité visuelle. Il quantifie les décalages de mise en page inattendus pendant le chargement. Un bon CLS est de 0,1 ou moins.
Ces métriques font partie des signaux d'expérience de page de Google, mais elles affectent aussi directement la façon dont les utilisateurs perçoivent votre site. Un LCP lent frustre les utilisateurs, un INP élevé rend la page peu réactive, et un CLS provoque des clics erronés.
Comment mesurer les Core Web Vitals
Vous avez besoin à la fois de données de laboratoire et de terrain pour obtenir une image complète. Les outils de laboratoire simulent des conditions, tandis que les données de terrain proviennent d'utilisateurs réels.
Outils de laboratoire
- Lighthouse : Intégré à Chrome DevTools, il audite les performances et fournit des scores pour LCP, CLS et TBT (un proxy pour INP). Exécutez-le en mode navigation privée avec limitation pour imiter les conditions mobiles.
- WebPageTest : Offre des tests avancés depuis plusieurs emplacements et appareils, avec des vues filmstrip et des diagrammes en cascade.
- PageSpeed Insights : Combine les données de laboratoire et de terrain (de CrUX) dans un seul rapport.
Outils de terrain
- Chrome User Experience Report (CrUX) : Un ensemble de données public de métriques d'utilisateurs réels pour des millions de sites. Accessible via PageSpeed Insights ou l'API CrUX.
- Google Search Console : Affiche l'état des Core Web Vitals pour votre site, regroupé par URL.
- Bibliothèque JavaScript web-vitals : Ajoutez-la à votre site pour collecter des métriques d'utilisateurs réels et les envoyer à votre analytique.
Utilisez les outils de laboratoire pour le débogage et les données de terrain pour valider les corrections. Une erreur courante est d'optimiser uniquement pour les scores de laboratoire en ignorant l'expérience utilisateur réelle.
Améliorer le LCP
Le LCP est souvent la métrique la plus impactante à corriger. Voici comment l'optimiser :
- Optimisez les images : Compressez les images sans perte de qualité, utilisez des formats modernes comme WebP ou AVIF, et servez des images responsives avec
srcset. Des outils comme Compresseur d'images peuvent aider à réduire la taille des fichiers. - Préchargez les ressources critiques : Utilisez
<link rel="preload">pour les images principales, les polices et les fichiers CSS/JS clés. - Éliminez les ressources bloquant le rendu : Intégrez le CSS critique, différez le JavaScript non critique et évitez les gros fichiers CSS.
- Utilisez un CDN : Servez les ressources depuis des emplacements edge proches des utilisateurs pour réduire la latence.
- Mettez en cache les ressources : Définissez de longues durées de cache pour les ressources statiques avec un cache busting via les noms de fichiers.
- Optimisez le temps de réponse du serveur : Utilisez un hébergement rapide, activez la compression (Brotli ou Gzip) et optimisez les requêtes de base de données.
Pour un exemple détaillé, considérez une image principale. Au lieu de servir un JPEG de 2 Mo, compressez-le à moins de 200 Ko, convertissez-le en WebP et préchargez-le. Cela seul peut réduire le LCP de plusieurs secondes.
Améliorer l'INP
L'INP mesure la réactivité. Un INP élevé provient souvent de longues tâches JavaScript bloquant le thread principal.
- Divisez les longues tâches : Utilisez
setTimeoutourequestIdleCallbackpour céder au thread principal. - Optimisez les gestionnaires d'événements : Appliquez un debounce ou un throttle aux événements fréquents comme le défilement ou le redimensionnement. Évitez les calculs lourds dans les gestionnaires.
- Réduisez l'exécution JavaScript : Code-splitting, tree-shaking et chargement différé du JS non critique.
- Utilisez des web workers : Déchargez les tâches coûteuses vers un thread worker.
- Minimisez les scripts tiers : Auditez et supprimez les analytiques, publicités ou widgets sociaux inutiles.
Testez l'INP en interagissant avec votre page dans le panneau Performance de Chrome DevTools. Recherchez les longues tâches (triangles rouges) et optimisez-les.
Améliorer le CLS
Le CLS concerne la stabilité visuelle. Les décalages inattendus agacent les utilisateurs et provoquent des clics erronés.
- Définissez des dimensions pour les images et vidéos : Incluez toujours les attributs
widthetheightou utilisez le CSS aspect-ratio. - Réservez de l'espace pour les publicités et les intégrations : Utilisez des espaces réservés avec des tailles fixes.
- Évitez d'insérer du contenu au-dessus du contenu existant : Sauf pour les interactions déclenchées par l'utilisateur.
- Utilisez font-display: swap : Mais sachez que le remplacement des polices peut causer des décalages. Envisagez de précharger les polices ou d'utiliser
size-adjust. - Appliquez des transformations CSS pour les animations : Au lieu de propriétés qui déclenchent une mise en page.
Utilisez la fonctionnalité Layout Shift Regions dans Chrome DevTools pour visualiser les décalages.
Outils et flux de travail
Intégrez la surveillance des Core Web Vitals dans votre flux de développement :
- Exécutez Lighthouse en CI pour détecter les régressions.
- Utilisez la bibliothèque web-vitals pour collecter des données de terrain et configurer des alertes.
- Vérifiez régulièrement la Search Console pour les problèmes.
- Priorisez les corrections en fonction de l'impact et de l'effort.
Rappelez-vous que les Core Web Vitals ne sont qu'une partie de la performance. Considérez toujours l'expérience utilisateur globale.
FAQ
Quels sont les seuils actuels pour les Core Web Vitals ?
Seuils bons : LCP ≤ 2,5s, INP ≤ 200ms, CLS ≤ 0,1. À améliorer : LCP ≤ 4s, INP ≤ 500ms, CLS ≤ 0,25. Mauvais : au-dessus de ces valeurs.
À quelle fréquence dois-je mesurer les Core Web Vitals ?
Surveillez les données de terrain en continu et exécutez des tests de laboratoire après des changements significatifs. Au minimum, vérifiez mensuellement et après les déploiements.
Puis-je améliorer les Core Web Vitals sans développeur ?
Certaines corrections comme la compression d'images et la mise en cache peuvent être faites via des plugins ou des paramètres CDN. Mais les optimisations plus poussées nécessitent souvent des modifications de code.
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é.