Auditer son site : comprendre les metrics de performance web
Dernière mise à jour :
22/10/2024
Google a introduit les Core Web Vitals comme des indicateurs essentiels pour mesurer la performance d’un site web du point de vue de l'utilisateur. Ces indicateurs sont devenus un critère central dans l’algorithme de classement de Google, ce qui signifie qu'ils peuvent grandement influencer le référencement d'un site web.
Cependant il peut être difficile de les comprendre, et donc de savoir que faire en cas de problèmes sur son site web. Donc voici un petit guide pour comprendre les metrics de performance web.
Que se passe-t-il quand on clique sur un site web ?
Aujourd’hui, nous savons tous comment naviguer sur le web. Cependant, vous êtes vous jamais demandé ce qui se passe “derrière la machine” quand on accède à un site web ?
Pour la plupart des utilisateurs, c’est plutôt obscure (à la limite du “magique” pour certains) et compliqué. Et effectivement, ce n’est pas si facile à comprendre quand on débute.
Quand on clic sur un site web, toutes les actions provoquées peuvent-être découpées en 2 grandes parties :
- La demande et la récupération des données du serveur ; - L'affichage de ces données en pixels visibles sur l'écran d'un utilisateur.
La première partie -elle-même découpée en plusieurs étapes- dépend de beaucoup de variables, dont la rapidité de votre hébergeur, l’organisation de votre base de donnée et l’utilisation d’un DNS. L’indicateur qu’il faut surveiller est le Time to First Byte (TTFB).
La seconde partie constitue le reste du “chemin critique”. A savoir, du premier octet reçu du serveur à l’affichage finale sur vos écrans. Plusieurs indicateurs vous permettent de mesurer sa performance : le First Contentful Paint (FCP), Largest Contentful Paint (LCP), Cumulative Layout Shift (CLS) et le Total Blocking Time (TBT). Pas de panique, nous verrons tout ça quelques lignes plus loin !
1. Time to First Byte (TTFB)
Le Time to First Byte est le temps écoulé entre l'envoi d'une requête HTTP par le navigateur et la réception du premier octet de la réponse du serveur. Autrement dit : il mesure le temps entre une action de votre part (un clic par exemple) et le début de la conséquence de cette action.
Un TTFB faible indique un serveur rapide et une bonne optimisation de la chaîne de requêtes, ce qui est crucial pour améliorer le classement SEO et l'expérience utilisateur.
Un bon TTFB est inférieur à 800 ms (d’après la documentation de Google)
Décryptage du TTFB
Le TTFB se décompose en trois grandes phases :
1. Temps de traitement de la requête - le temps nécessaire au navigateur pour créer la requête et l'envoyer au serveur.
2. Temps de transit - le temps que met la requête pour atteindre le serveur (qui peut être influencé par la distance géographique).
3. Temps de réponse du serveur - le temps que prend le serveur pour traiter la requête et commencer à renvoyer des données.
Quelques conseils concrets
Choisissez bien votre hébergeur : pour beaucoup d’organisme que j’ai rencontré, le prix est la variable quasi exclusive pour le choisir. Même si vous n’êtes pas expert du sujet, il existe pleins d’articles comparatifs et accessibles pour les débutants vous permettant de faire un choix plus éclairé. Tout en ayant un excellent rapport qualité/ prix.
Utilisez un CDN (Content Delivery Network) : Un CDN permet de distribuer le contenu à partir de serveurs situés près de l'utilisateur, réduisant ainsi le temps de transit. Si les serveurs de votre hébergeur sont trop loin par rapport à vos utilisateurs, un CDN peut être un bon moyen de compenser.
Optimisez la base de données : assurez-vous que la base de données soit bien optimisée (pour les sites dynamiques notamment), avec des index correctement configurés pour accélérer les requêtes.
Utilisez un cache côté serveur : Implémentez un système de cache efficace pour réduire le temps de traitement des requêtes répétitives.
2. Le chemin critique
Le chemin critique fait référence à la séquence d'étapes nécessaires pour convertir le code HTML, CSS, et JavaScript d'une page web en pixels visibles sur l'écran d'un utilisateur. Plus ce chemin est court, plus la page se charge rapidement. C'est une étape cruciale pour améliorer les métriques telles que le First Contentful Paint (FCP) et le Largest Contentful Paint (LCP).
Décryptage du chemin critique
Le chemin critique commence dès que le navigateur reçoit les premiers octets de HTML du serveur. Il doit d'abord parser le HTML pour construire le DOM (Document Object Model), puis le CSS pour construire le CSSOM (CSS Object Model). Si du JavaScript est présent, il peut bloquer cette construction en attendant d'être exécuté. Une fois le DOM et le CSSOM construits, ils sont combinés pour créer le Render Tree, qui est ensuite utilisé pour dessiner la page.
Quelques conseils
Minimisez les CSS bloquants : Placez les feuilles de style CSS critiques dans l'en-tête pour qu'elles soient chargées en priorité, et retardez le chargement du CSS non essentiels en utilisant l'attribut media="print".
Chargez le JavaScript de manière asynchrone : Utilisez les attributs async ou defer pour les scripts JavaScript, afin qu'ils ne bloquent pas le parsing du HTML (qui est par défaut dans ce langage).
3. First Contentful Paint (FCP)
Le First Contentful Paint mesure le temps écoulé entre le moment où le navigateur commence à charger la page et le moment où un premier élément de contenu (texte, image, etc.) est affiché à l’écran. Il s'agit d'un indicateur clé pour évaluer la rapidité avec laquelle une page devient interactive pour l'utilisateur.
Le FCP est influencé par plusieurs facteurs, notamment la rapidité du serveur (TTFB), l'optimisation des ressources critiques (CSS, JavaScript), et la gestion des priorités de rendu. Le navigateur commence par afficher les éléments qui ne nécessitent pas l'attente de scripts ou de feuilles de style non critiques.
Un bon FCP est inférieur à 1.8s (d’après la documentation de Google)
Quelques conseils
Priorisez le contenu au-dessus de la ligne de flottaison : assurez-vous que le contenu visible à l’écran dès le chargement est priorisé. Cela peut inclure l'intégration directe du CSS critique dans le head de votre HTML.
Optimisez les polices web : utilisez au maximum les polices déjà disponibles dans le navigateur, pour lui éviter des efforts supplémentaires. Si vous utilisez des polices personnalisées, implémentez des techniques comme font-display: swap pour éviter qu’elles bloquent le rendu du texte.
Retardez le chargement des ressources non critiques : chargez les images et scripts non essentiels après que les éléments principaux ont été rendus en utilisant le lazy loading ou l'attribut defer.
4. Largest Contentful Paint (LCP)
Le Largest Contentful Paint mesure le temps nécessaire pour que le plus grand élément de contenu visible dans la fenêtre d'affichage (image, vidéo, bloc de texte) soit complètement chargé. Cette métrique est essentielle pour comprendre quand le contenu principal de la page est effectivement visible pour l'utilisateur.
Le LCP est généralement impacté par les temps de chargement des images de grande taille, des vidéos, et certains blocs de texte. Un LCP rapide est un indicateur que la page est utilisable dans un délai raisonnable, ce qui améliore l'expérience utilisateur.
Un bon LCP est inférieur à 2.5s (d’après la documentation de Google)
Quelques conseils
Optimisez les images et les vidéos : compressez et redimensionnez les images au format WebP avant de les ajouter sur votre site et utilisez des plateformes tiers pour les vidéos (YouTube par exemple).
Dimensionner correctement les images est l’un des problèmes les plus redondants sur les sites non optimisés. Avoir des images de plus de 1000x1000px ne sert qu’à le ralentir. Le navigateur n’a besoin que de la taille visible par l'utilisateur dans la fenêtre d'affichage.
Utilisez des serveurs rapides : le LCP est directement affecté par la performance du serveur. L’utilisation d’un hébergement performant ou d’un CDN pour distribuer les contenus lourds peut significativement réduire ce temps.
Retardez le chargement des éléments non critiques : au même titre que le FCP, retardez le chargement des éléments non critiques ou utilisez des techniques comme le lazy loading pour les images.
5. Cumulative Layout Shift (CLS)
Le Cumulative Layout Shift mesure l'instabilité visuelle des éléments d'une page pendant son chargement. Il s'agit d'un indicateur qui évalue la fréquence à laquelle des éléments de la page changent de position de manière inattendue pendant le chargement.
Un mauvais CLS se produit lorsque des images, des annonces ou des iframes sont chargés de manière asynchrone sans dimensions définies, ce qui entraîne des décalages de mise en page.
Un bon CLS est inférieur à 0.1 (d’après la documentation de Google)
Quelques conseils
Évitez les changements de contenu dynamiques : Si vous utilisez des scripts ou des annonces qui insèrent du contenu dynamique, assurez-vous qu'ils n’entraînent pas de décalages.
Pré-chargez les polices : Les polices web peuvent provoquer des décalages de mise en page lorsque la police de secours est remplacée par la police personnalisée. Utilisez font-display: swap pour minimiser ces décalages.
Toujours définir les dimensions des éléments multimédias : Assurez-vous que les images, vidéos et iframes aient des dimensions définies dans le code HTML pour éviter les changements de mise en page inattendus.
6. Total Blocking Time (TBT)
Le Total Blocking Time mesure le temps total pendant lequel la page est bloquée et ne répond pas aux interactions de l'utilisateur (clics, frappes au clavier, etc.) entre le First Contentful Paint (FCP) et le Time to Interactive (TTI). Le TBT est crucial pour comprendre la réactivité de votre page et, par conséquent, son impact sur l'expérience utilisateur.
Le TBT se produit lorsqu'un long processus de script (exécution JavaScript) empêche le thread principal du navigateur de répondre à l'utilisateur. Les scripts longs (>50 ms) peuvent bloquer ce thread, rendant le site non interactif pendant ce temps. Une faible valeur de TBT signifie que la page reste réactive, même pendant le chargement, ce qui est essentiel pour offrir une expérience fluide.
Quelques conseils
Évitez les scripts non critiques : Retardez le chargement et l'exécution des scripts JavaScript non critiques jusqu'à ce que le contenu principal de la page soit chargé et interactif. Utilisez l'attribut defer pour les scripts qui ne sont pas nécessaires immédiatement.
Optimisez le CSS : Les fichiers CSS bloquent souvent le rendu de la page. Minifiez et combinez les fichiers CSS pour réduire leur impact, et envisagez l'inlining des CSS critiques dans le head de votre document pour accélérer le premier rendu.
Conclusion
Les Core Web Vitals de Google sont bien plus que de simples métriques techniques : ils sont au cœur de ce qui rend une page web rapide, réactive et agréable pour les utilisateurs.
En comprenant et en optimisant ces indicateurs, vous pouvez non seulement améliorer la performance de votre site, mais aussi offrir une meilleure expérience à vos utilisateurs.
L'optimisation de ces métriques n'est pas seulement bénéfique pour le référencement, mais elle contribue également à un web plus accessible et plus éco-responsable. En réduisant les temps de chargement et en minimisant les ressources utilisées, vous faites un pas de plus vers un internet plus durable.
N'oubliez pas : un site performant est un site qui retient les utilisateurs, améliore l'engagement et, en fin de compte, favorise la croissance. Les Core Web Vitals sont votre guide pour atteindre ces objectifs de manière efficace et durable.
Ce site utilise des cookies nécessaires à son bon fonctionnement. Vous pouvez les accepter tous ou cliquer sur “en savoir plus” pour choisir les cookies que vous acceptez ou non.
Lire les politique de confidentialité
Nos cookies
Voici la liste des cookies nécessaires au bon fonctionnement du site, vous ne pouvez pas les désactiver, mais nous devons vous les indiquer.
Google Analytics
?
Nous permet d'analyser les statistiques de consultation de notre site
Nos cookies
Sur ce site, nous faisons usage de cookies dans le but d'analyser notre trafic et de maintenir une relation de qualité avec vous. Vous avez la possibilité de choisir ici ceux que vous acceptez de conserver.