Cours Web Performances & SEO
Session 1 Module 3 20 min

Les Core Web Vitals en Détail

LCP, INP, CLS et autres métriques

1) Qu'est-ce que les Core Web Vitals ?

Les Core Web Vitals sont 3 métriques définies par Google pour mesurer concrètement l'expérience utilisateur sur un site web. Depuis 2021, ces métriques sont un facteur de classement SEO officiel, ce qui signifie qu'elles influencent directement ta position dans les résultats de recherche.

Chaque métrique mesure un aspect différent de l'expérience : le LCP évalue la vitesse de chargement, l'INP mesure la réactivité aux interactions, et le CLS vérifie la stabilité visuelle de la page. Ensemble, ces trois indicateurs donnent une image complète de la qualité perçue par tes visiteurs.

3 metriques definies par Google pour mesurer l'experience utilisateur

LCP Largest Contentful Paint

Temps pour afficher le plus grand element visible

Mesure : Chargement
< 2.5s
2.5-4s
> 4s
INP Interaction to Next Paint

Rapidite de reaction quand on clique ou tape

Mesure : Interactivite
< 200ms
200-500ms
> 500ms
CLS Cumulative Layout Shift

Est-ce que la page "saute" pendant le chargement ?

Mesure : Stabilite visuelle
< 0.1
0.1-0.25
> 0.25
Field vs Lab Data

Field (terrain) = donnees de vrais utilisateurs Chrome → ce que Google utilise pour le SEO

Lab (labo) = simulation Lighthouse → utile pour debugger

2) LCP - Largest Contentful Paint (Chargement)

Le LCP mesure le temps nécessaire pour afficher le plus grand élément visible de la page. C'est généralement une grande image (hero image, bannière), un bloc de texte principal ou une vidéo. Cette métrique représente le moment où l'utilisateur perçoit que le contenu principal est chargé.

< 2.5s Bon
2.5-4s À améliorer
> 4s Mauvais

Un mauvais LCP est souvent causé par des images trop lourdes qui mettent du temps à se télécharger, un serveur lent à répondre (TTFB élevé), ou du CSS/JavaScript qui bloque l'affichage du contenu principal. Optimiser ces éléments permet généralement d'améliorer significativement cette métrique.

LCP Largest Contentful Paint

Temps pour afficher le plus grand element visible de la page

example.com
← LCP Hero Image / Grande Image

L'element LCP est souvent l'image hero ou le titre principal

Ce qui est mesure :
  • Grande image (hero, banniere)
  • Bloc de texte principal
  • Video (poster/thumbnail)
  • Image de fond CSS
Causes frequentes de mauvais LCP :
  • Images trop lourdes / non optimisees
  • Serveur lent a repondre (TTFB eleve)
  • CSS/JS qui bloquent l'affichage
  • Polices web qui retardent le texte
Solutions courantes :
  • ✅ Optimiser/compresser les images (WebP, AVIF)
  • ✅ Utiliser un CDN
  • ✅ Precharger l'image principale (<link rel="preload">)
  • ✅ Optimiser le temps serveur
< 2.5s Bon
2.5 - 4s A ameliorer
> 4s Mauvais

3) INP - Interaction to Next Paint (Interactivité)

L'INP mesure la rapidité de réaction de ton site quand un utilisateur interagit avec lui. Cela inclut les clics sur des boutons ou liens, la saisie au clavier, et les interactions tactiles sur mobile. Cette métrique a remplacé le FID depuis mars 2024 car elle donne une vision plus complète de la réactivité.

< 200ms Bon
200-500ms À améliorer
> 500ms Mauvais

Les causes les plus fréquentes d'un mauvais INP sont le JavaScript trop lourd, les tâches longues qui bloquent le navigateur (plus de 50ms), ou simplement trop de scripts qui s'exécutent en même temps. Quand le navigateur est occupé à exécuter du code, il ne peut pas répondre aux interactions de l'utilisateur.

INP Interaction to Next Paint

Rapidite de reaction quand l'utilisateur interagit avec la page

Remplace FID depuis mars 2024
✅ Bon INP
--
❌ Mauvais INP
--
Ce qui est mesure :
Clics
Clavier
Tactile
Causes frequentes :
  • JavaScript trop lourd
  • Taches longues bloquantes
  • Scripts tiers (pubs, analytics)
Solutions :
  • ✅ Utiliser defer / async
  • ✅ Diviser le code en chunks
  • ✅ Supprimer les scripts inutiles
< 200ms Bon
200 - 500ms A ameliorer
> 500ms Mauvais

4) CLS - Cumulative Layout Shift (Stabilité visuelle)

Le CLS mesure la stabilité visuelle de ta page : est-ce que les éléments "sautent" pendant le chargement ? Tu as sûrement déjà vécu cette situation frustrante : tu veux cliquer sur un bouton, une publicité apparaît soudainement, et tu cliques dessus par erreur. C'est exactement ce que le CLS cherche à éviter.

< 0.1 Bon
0.1-0.25 À améliorer
> 0.25 Mauvais

Les décalages de mise en page sont généralement causés par des images sans dimensions définies (le navigateur ne sait pas quelle place réserver), des publicités qui s'insèrent dans le contenu, des polices qui changent de taille au chargement (FOUT), ou du contenu injecté dynamiquement par JavaScript. Définir les dimensions à l'avance et réserver l'espace pour le contenu dynamique résout la plupart de ces problèmes.

CLS Cumulative Layout Shift

Est-ce que la page "saute" pendant le chargement ?

❌ Mauvais CLS
PUBLICITE
Acheter
👆

La pub s'insere, le bouton descend, tu cliques sur la pub !

✅ Bon CLS
PUBLICITE
Acheter
👆

L'espace est reserve, rien ne bouge !

Ce qui cause des decalages :
  • Images sans dimensions definies
  • Publicites qui s'inserent
  • Polices qui changent de taille
  • Contenu injecte dynamiquement
Solutions :
  • width et height sur les images
  • ✅ Reserver l'espace pour les pubs
  • font-display: swap
  • aspect-ratio en CSS
< 0.1 Bon
0.1 - 0.25 A ameliorer
> 0.25 Mauvais

5) Autres métriques à connaître

Au-delà des 3 Core Web Vitals, d'autres métriques complètent l'analyse de performance :

  • TTFB (Time To First Byte) : Temps avant de recevoir le premier octet du serveur. Indicateur de la réactivité serveur.
  • FCP (First Contentful Paint) : Premier élément affiché à l'écran (texte, image, etc.).
  • TBT (Total Blocking Time) : Temps total où le navigateur est bloqué par JavaScript. Corrélé à l'INP.
  • Speed Index : Mesure la rapidité de remplissage visuel de la page.
TTFB Time To First Byte

Temps de reponse du serveur (1er octet recu)

< 800ms > 1.8s
Cote serveur
FCP First Contentful Paint

Premier element visible affiche (texte, image...)

< 1.8s > 3s
Cote client
TBT Total Blocking Time

Temps total ou le navigateur est bloque par JS

< 200ms > 600ms
Labo only
SI Speed Index

Vitesse de remplissage visuel de la page

< 3.4s > 5.8s
Labo only
Difference Lab vs Field

TBT et Speed Index sont des metriques "labo" → utiles pour debugger mais pas utilisees par Google pour le ranking.

Les Core Web Vitals (LCP, INP, CLS) utilisent les donnees "terrain" des vrais utilisateurs.

Question 1/5

Que mesure le LCP (Largest Contentful Paint) ?

Le LCP mesure le temps pour afficher le plus grand element visible (souvent une image hero ou un bloc de texte principal).