Formation Matomo

Le rapport de performance

  • Episode N° 9
  • Difficulté intermédiaire
  • Publié le 01/10/2021 par
  • Dernière mise à jour le 05/10/2021

Au milieu de l’été 2021, l'algorithme de Google à été mis à jour et prend désormais en compte l'expérience utilisateur comme facteur déterminant pour le référencement naturel. En réponse à cette évolution des règles de conception web, Matomo à intégré un rapport de performance et il faut le dire, il est plutôt très utile.

Cette nouvelle section permet de mettre un premier pied dans le monde des Core Web Vitals. Ces sont des indicateurs de performance de temps de chargement des pages, des métriques précieuses pour les développeurs de sites web.

Sachez également que vos visiteurs sont beaucoup plus susceptibles de réaliser des sessions de plusieurs pages si votre site web charge rapidement. Vous ne me contredirez pas si je vous dis que c’est toujours plus plaisant d’accéder au contenu souhaité sans attendre.

Nous allons nous pencher sur toutes les informations que ce rapport nous fournit. L’idée est de comprendre les différents termes utilisés, et les optimisations que nous pouvons apporter à nos sites web afin d’avoir des pages qui chargent toujours plus vite.

Comprendre les indicateurs de performance

L’interprétation de ce rapport peut être compliquée à première vue à cause des différents termes utilisés, je vais donc vous expliquer tout ça :

Temps moyen de connexion

Cette valeur correspond au temps moyen passé pour se connecter au serveur et obtenir une première connexion. Ce temps peut être réduit en utilisant un fournisseur de DNS optimisé comme CloudFlare, permettant de relier votre nom de domaine à votre serveur en un rien de temps. 

Une autre technique consiste à héberger une copie de votre site web sur différents serveurs dans le monde afin de rapprocher physiquement les serveurs de vos utilisateurs, on parle alors de CDN pour Content Delivery Network.

Average server time

Cette information correspond au temps moyen passé à partir du moment où le serveur génère la page jusqu'à l'envoi. Pour optimiser ce temps, il faut travailler la logique de génération de la page en limitant les opérations. Vous pouvez évidemment prendre un serveur plus puissant qui fait des calculs de génération de page plus rapidement, mais souvent une simple mise en cache des fichiers côté serveur permet de réduire drastiquement le temps passé !

Average transfer time

Correspond au temps moyen du transfert et au téléchargement de la page envoyé par le serveur vers le navigateur. Pour réduire ce temps de chargement, il faut évidemment limiter le poids des ressources et utiliser des protocoles permettant des techniques de transferts plus efficaces comme HTTP/2 ou plus récemment HTTP/3.

Vous pouvez également travailler l’ensemble des médias présents sur la page, compresser et optimiser les images et mettre en place des techniques de chargement différé (Lazy Loading).

Temps moyen de traitement du DOM

C’est le temps moyen passé par le navigateur web pour interpréter le document HTML reçu par le serveur. Plus le document est simple à traiter, plus le document sera affiché rapidement (on parle ici d’affichage du HTML, les images et le JavaScript et les polices de caractères ne sont pas forcément tous présents). 

Temps moyen de génération du DOM

Cette valeur correspond au temps moyen passé par le navigateur pour afficher la page web complète avec tous les médias. C’est également à ce moment que la plupart des codes JavaScript vont s'exécuter au déclenchement de l’événement DOMContentLoaded.

Average on load time

Dernière section du temps de chargement de la page, cette durée correspond au temps moyen passé par le navigateur pour exécuter l’ensemble des scripts JavaScript qui se déclenchent sur l’événement window.load (événement émis par le navigateur).

Temps de chargement moyen

Ici on retrouve une valeur moyenne qui reprend l’ensemble des valeurs précédentes. C’est le temps de chargement moyen pour une page du site web, de la requête initiale au serveur au chargement final de la page.

Rapport de performance de la page

Maintenant que vous savez à quoi correspond chaque indicateur, nous allons nous pencher sur les différents rapports.

Le premier rapport présente les évolutions des indicateurs de performance de la page, on y retrouve une timeline permettant de comprendre quels sont les indicateurs qu’il faut améliorer, et la régularité des informations. 

Si sur une journée vous constatez une augmentation significative temporaire, c’est sûrement que votre serveur a subi une forte hausse de trafic qu’il n’a pas pu supporter (qu’elle soit naturelle, ou que ce soit une attaque par déni de service).

Cette approche nous permet également de comprendre quel élément prend le plus de temps dans le chargement des pages. Dans mon cas, c’est très clairement le temps moyen de génération du DOM qui est trop long.

Maintenant que j’ai cette information, je vais pouvoir commencer une batterie de tests au niveau du navigateur pour comprendre ce qui met du temps à charger et pouvoir ensuite optimiser les différents points que j’aurai relevé.

Pour vous donner une idée, essayez de descendre en dessous de 0.30s pour chaque indicateur. Le but étant bien évidemment d’obtenir le temps de chargement le plus faible.

Performance globale

Le rapport suivant nous permet d’avoir une information moyenne sur la durée et par indicateur. C’est une bonne chose, mais qui peut cacher de réels soucis.

En effet, sur un gros site ou 95% des pages sont très bien optimisées, la moyenne nous informera que tout le site se porte bien alors que 5% de ses pages peuvent mettre plus de 5 secondes à charger. 

Il faudra systématiquement faire attention avec les résultats des rapports globaux. C’est pour ces raisons qu’il peut être judicieux de regarder les performances au niveau des pages.

Performance par page

Nous allons donc nous intéresser aux deux rapports suivants, les tableaux des performances par URL des pages et le rapport par titres de pages. Deux rapports proches mais avec des objectifs différents.

Le gros intérêt du rapport d’URL des pages est qu’il permet d’avoir une idée des temps de chargement par silo (encore faut-il que votre site web soit conçu de cette manière), on remarquera ici les 4 silos correspondant aux quatre séries présentes sur le site !

Le rapport de titres des pages est lui plus utile afin d’obtenir des informations concernant les pages qui performent le plus en termes de trafic. Ce sont bien évidemment ces pages qu’il est le plus important d’optimiser en premier, même si optimiser une page moins performance lui donnera surement un boost de visibilité.

Vous avez la possibilité d’afficher le rapport de performance de la page en passant la souris sur la ligne correspondante du tableau. Pour cela cliquez simplement sur le logo tachymètre, le rapport se chargera alors dans une popup.

Trouver les pages les plus lentes

Une autre manière d’utiliser ces rapports est de réorganiser les tableaux par indicateur de performance décroissant afin d’afficher en premier les pages les plus lentes. Vous pourrez alors simplement définir une liste des pages à améliorer en vous basant sur des données collectées. Vous trouverez en un rien de temps les pages les plus lentes de votre site web. Il peut être également intéressant de croiser ces données avec celles collectées par la Search Console de Google.

J’espère vous avoir donné une vision plus claire du rapport de performance. N’hésitez pas à configurer des alertes personnalisées pour détecter des temps de génération trop longs par exemple.