À Hotjar, nous prenons très au sérieux la performance du site et faisons tout notre possible pour optimiser tout le processus. Dans cet article, nous abordons les questions courantes sur Hotjar et la performance du site :
- Comment le script de Hotjar affecte-t-il le chargement de la page ?
- Hotjar peut-il affecter la performance de mon site ?
- Pourquoi le test de vitesse de Google Page Speed me dit-il que mon site est lent avec Hotjar ?
- Options pour améliorer le référencement et réduire l'impact potentiel sur la vitesse du site
Comment Hotjar affecte-t-il le chargement de la page ?
Nous prenons toutes les mesures nécessaires pour garantir la livraison rapide de notre service sur vos sites avec le moins d'impact possible. Voici comment :
-
Le script est chargé de manière asynchrone.
Le script Hotjar ne bloque pas le chargement de vos ressources car il est chargé de manière asynchrone.
-
Nous utilisons un réseau de diffusion de contenu (CDN) pour servir le script Hotjar.
Un système de serveurs positionnés stratégiquement dans le monde entier sert le script Hotjar plutôt que depuis un seul emplacement. L'utilisation d'un CDN permet au script Hotjar d'être chargé plus rapidement par vos utilisateurs tout en offrant une bien meilleure disponibilité. Nous avons actuellement une moyenne de 130 à 200ms à l'échelle mondiale.
-
Le script utilise correctement la mise en cache du navigateur.
Malgré le chargement asynchrone du script, il est toujours important de charger et d'exécuter le script le plus rapidement possible lors du suivi des utilisateurs. Nous le faisons en tirant le meilleur parti du cache du navigateur et en chargeant deux fichiers distincts qui sont rechargés par les navigateurs à des intervalles différents ou lorsqu'ils sont modifiés.
Hotjar peut-il affecter la performance de mon site ?
Étant donné que chaque morceau de code JavaScript ajouté peut affecter votre site d'une manière ou d'une autre, nous ne pouvons pas garantir que votre site ne sera pas affecté de quelque manière que ce soit. Cependant, le script Hotjar est conçu pour avoir un impact minimal sur la performance de votre site. Cela est principalement dû au fait que le suivi d'utilisation de Hotjar pour les enregistrements et les cartes thermiques ne fonctionne que dans les navigateurs modernes, qui exécutent efficacement JavaScript.
En termes de suivi d'utilisation, Hotjar fait principalement deux choses distinctes :
- À intervalles réguliers courts, toutes les 100ms ou dix fois par seconde, la position du curseur et la position de défilement sont enregistrées. Les clics sont enregistrés lorsqu'ils se produisent, capturant la position du curseur par rapport à l'élément cliqué. Ces fonctions n'affectent pas l'expérience de l'utilisateur car elles ne capturent que l'emplacement du pointeur lorsqu'un clic se produit ou toutes les 100ms. Les événements sont envoyés aux serveurs Hotjar via des trames dans le WebSocket. Cette méthode est plus efficace que l'envoi de requêtes XHR à intervalles réguliers.
- Pour les enregistrements, les modifications apportées à la page sont capturées à l'aide de l'API MutationObserver, qui est déjà incluse dans chaque navigateur moderne. Cela le rend efficace car le changement lui-même se produit déjà sur la page. L'API MutationObserver du navigateur nous permet d'enregistrer ce changement que nous analysons ensuite et envoyons via le WebSocket.
Pourquoi mon test de vitesse de page me dit-il que mon site est lent avec Hotjar ?
Des tests tels que PageSpeed de Google peuvent vous en dire long sur la façon dont votre page se charge. Nous reconnaissons l'importance de comprendre et d'optimiser le chargement de la page de cette manière. Il est essentiel de comprendre ce que ces rapports vous disent et ce qui est ou n'est pas un problème à résoudre.
Si nous devons examiner la vitesse de votre page, notre équipe de support utilisera webpagetest.org. Les rapports de webpagetest.org vous montreront quand la page était interactive pour les utilisateurs et quand le chargement du document a été terminé. Voici un exemple d'une page sans le code de suivi Hotjar.
Cette page est interactive en environ 0,4 seconde et se charge complètement en environ 1 seconde.
Ci-dessous se trouve la même page avec le code de suivi Hotjar ajouté :
La page est interactive en un peu plus de 0,4 seconde et se charge complètement en un peu moins de 1,3 seconde. Dans ce cas, nous pouvons voir que l'initialisation de Hotjar a eu un impact minimal sur la page en termes d'utilisabilité (environ 0,01 seconde) et a ajouté environ 0,3 seconde au chargement complet de la page.
Le script de Hotjar se charge de manière asynchrone en deux parties, la première partie contenant les paramètres pour votre site. Dans l'image ci-dessus, cela se charge à l'étape 3. Le reste du contenu du site se charge ensuite aux étapes 4-6, avant que le script de Hotjar ne reprenne le téléchargement à l'étape 7.
Lorsque des outils comme Google Page Speed Test mesurent un site avec Hotjar installé, ils incluent le temps que Hotjar prend pour demander l'ensemble des modules depuis nos serveurs, et le moment où nous commençons à renvoyer des données. Cela donne une image inexacte de la vitesse de votre site car votre site aura fini de se charger et Hotjar envoie uniquement des données analytiques.
Options pour améliorer le référencement et réduire l'impact potentiel sur la vitesse du site
Une façon de réduire tout impact potentiel que Hotjar pourrait avoir sur votre score SEO et la vitesse de votre site est de retarder le chargement de Hotjar. Vous pouvez le faire en utilisant la fonction de minuterie de GTM ou en chargeant Hotjar uniquement une fois que l'utilisateur a interagi avec la page, par exemple en cliquant ou en faisant défiler.
Une autre option est de charger Hotjar après que l'événement "DOM Interactive" sur votre site Web s'est produit. Cette méthode garantit que la majeure partie du Javascript d'une page nécessaire pour les ressources critiques sera terminée, et Hotjar pourra mettre en cache le contenu qu'il peut voir sans affecter les performances du site.
Ces options doivent être évaluées et mises en œuvre par vos développeurs/équipe et ne peuvent pas être mises en œuvre par le support Hotjar.