Tips & Tricks · Parhum Khoshbakht

Pourquoi votre plugin d'analytics ralentit votre site

Les scripts d'analytics ajoutent une surcharge à chaque chargement de page. Voici comment vérifier l'impact de votre plugin, ce que la recherche dit sur les raisons pour lesquelles certains plugins sont plus rapides, et comment mesurer sur votre propre site.

Votre plugin d’analytics vous coûte peut-être des positions dans les classements

Chaque propriétaire de site WordPress installe un plugin d’analytics. La plupart ne pensent jamais à ce que ce plugin fait à la vitesse de leur page. Mais Google, lui, le fait.

Depuis 2021, Google utilise les Core Web Vitals comme signal de classement. L’une des trois métriques — le Largest Contentful Paint (LCP) — mesure la rapidité avec laquelle votre contenu principal apparaît. Un plugin d’analytics qui ajoute un script bloquant le rendu peut faire passer votre LCP de « bon » (moins de 2,5 secondes) à « à améliorer ». La différence entre se classer en première et en deuxième page peut se résumer à quelques centaines de millisecondes.

Nous avons comparé 8 plugins d’analytics WordPress populaires dans un test de stress synthétique (charge simultanée, sans mise en cache de page) et avons trouvé de grandes différences de surcharge LCP — de ~260 ms pour l’architecture la plus légère à plus de 3 secondes pour les plugins dont le chemin d’écriture côté serveur se dégradait sous charge. Ces chiffres ne sont pas des garanties de production — ils reflètent un seul test synthétique sans mise en cache — mais les patterns architecturaux qu’ils révèlent sont cohérents avec les recherches publiées sur les performances web.

Ce que mesurent les Core Web Vitals et pourquoi ils importent

Google évalue trois métriques sur chaque page de votre site :

Le Largest Contentful Paint (LCP) mesure quand votre contenu principal devient visible. Google considère moins de 2,5 secondes comme « bon ». Les scripts d’analytics qui bloquent le rendu font monter ce chiffre.

L’Interaction to Next Paint (INP) mesure la rapidité de réponse de votre site aux clics et aux tapotements. Le JavaScript lourd des plugins d’analytics peut retarder la réponse du navigateur aux interactions utilisateur.

Le Cumulative Layout Shift (CLS) mesure la stabilité visuelle. Les scripts d’analytics provoquent rarement des décalages de mise en page, mais des scripts mal chargés peuvent retarder le rendu d’autres éléments en position.

Une page qui ne réussit pas les Core Web Vitals ne perd pas automatiquement ses classements. Mais lorsque deux pages se disputent le même mot-clé avec une qualité de contenu similaire, la page la plus rapide a un avantage. Pour les sites e-commerce, l’impact va au-delà du SEO — une amélioration de 100 ms du temps de chargement peut augmenter les conversions jusqu’à 1,11 % par session.

Comment les scripts d’analytics ralentissent vos pages

Lorsque vous installez un plugin d’analytics, il ajoute généralement du JavaScript à chaque page de votre site. Ce JavaScript doit être téléchargé, analysé et exécuté par le navigateur de votre visiteur. Le coût en performance dépend de trois facteurs :

La taille du script. Le gtag.js de Google Analytics 4 pèse 134 Ko compressé. Les alternatives axées sur la confidentialité comme Koko Analytics utilisent 468 octets. La différence de temps d’analyse est significative, surtout sur les appareils mobiles où le traitement JavaScript est 2 à 5 fois plus lent que sur desktop.

La stratégie de chargement. Un script chargé sans attributs async ou defer empêche le navigateur de rendre tout contenu jusqu’à ce qu’il soit terminé. C’est ce qu’on appelle le « blocage du rendu » et c’est le plus grand tueur de performances pour les plugins d’analytics.

La méthode de transmission des données. Certains plugins utilisent XMLHttpRequest synchrone pour envoyer des données de suivi — cela bloque le thread principal. Les plugins modernes utilisent navigator.sendBeacon(), qui est en mode « tire et oublie » et ne bloque jamais l’interaction utilisateur.

Les données : comment 8 plugins d’analytics se comparent dans un test de stress

Nous avons testé chaque plugin isolément sur un site WordPress 6.9 avec WooCommerce, en utilisant de vrais navigateurs Chromium pendant que 50 utilisateurs HTTP simultanés mettaient le serveur sous pression. Aucune mise en cache de page n’était installée — chaque requête traversait le chemin PHP WordPress complet. Ce n’est pas ainsi que les sites WordPress en production sont généralement exécutés, mais cela révèle comment l’architecture de chaque plugin gère la contention. Classé par surcharge LCP dans notre test à passage unique :

PluginSurcharge LCP dans le testArchitecture
Statnive+260msCore inline + externe async
Independent Analytics+566msHooks PHP côté serveur
Jetpack Stats+776msDistant (WordPress.com)
MonsterInsights (GA4)+964msgtag.js externe 134 Ko
WP Slimstat+1030msScript externe + REST
WP Statistics+1424msScript externe + admin-ajax
Koko Analytics+2278msInline 468 o + écritures DB par requête
Burst Statistics+3592msExterne async + Beacon API

Mises en garde importantes avant de tirer trop de conclusions de ces chiffres :

  • Il s’agit d’un seul passage sur une machine de développement sans mise en cache de page. Les sites en production avec W3TC, WP Rocket ou la mise en cache Cloudflare montreraient des différences considérablement plus faibles car les pages mises en cache n’exécutent jamais le code PHP du plugin.
  • Les très grands deltas pour Koko Analytics et Burst Statistics sont suspects. Ils reflètent probablement des problèmes de contention d’écriture côté serveur spécifiques (sérialisation des écritures en base de données, traitement par lots WP-Cron) qui se sont déclenchés lors de notre charge synthétique, pas la surcharge en régime permanent. Ne les interprétez pas comme « Koko et Burst ralentiront votre site de 2 à 3 secondes » — ils ne le feront pas, sur un site normal.
  • Ce sont les patterns architecturaux qui se généralisent, pas les millisecondes spécifiques. Les Trackers core inline, le chargement async, le transport Beacon API et les chemins d’écriture sûrs en conditions de concurrence sont des bonnes pratiques documentées soutenues par des recherches de Google, WordPress Core et web.dev. Les chiffres spécifiques de n’importe quel test varieront.

Sur une connexion mobile 3G, toute surcharge JavaScript importe davantage car les temps d’analyse et de compilation sont 2 à 5 fois plus longs sur les processeurs mobiles — donc le choix d’une architecture de Tracker légère aide les utilisateurs mobiles quel que soit le serveur que vous exécutez.

Passez à Statnive : zéro pénalité de performance, analytics complètes

Le Tracker inline de 1,1 Ko de Statnive déclenche votre vue de page avant que tout script externe ne se charge. Toutes les données restent sur votre serveur WordPress — pas de Cookie, pas de bannières de Consent. Installez gratuitement depuis WordPress.org.

Comment vérifier la surcharge d’analytics de votre propre site

Vous n’avez pas à nous croire sur parole. Voici trois façons de mesurer l’impact de performance de votre plugin d’analytics sur votre propre site :

Méthode 1 : Google PageSpeed Insights

Allez sur pagespeed.web.dev, entrez votre URL et vérifiez la section « Diagnostics ». Cherchez votre script d’analytics sous « Réduire le temps d’exécution JavaScript » ou « Supprimer les ressources bloquant le rendu ». Si votre JS d’analytics y apparaît, il nuit à vos scores.

Méthode 2 : Onglet Performance de Chrome DevTools

Ouvrez Chrome DevTools (F12), allez dans l’onglet Performance et enregistrez un chargement de page. Dans le graphique en cascade, recherchez le nom de votre script d’analytics. La largeur de son bloc d’exécution indique exactement combien de millisecondes il coûte. Comparez cela au temps total de chargement de la page.

Méthode 3 : Désactiver et comparer

Le test le plus fiable : exécutez PageSpeed Insights avec votre plugin d’analytics actif, notez le score LCP, puis désactivez temporairement le plugin et testez à nouveau. La différence est le coût de performance exact de votre plugin.

Ce qu’il faut rechercher dans un plugin d’analytics rapide

Si vous choisissez un plugin d’analytics en tenant compte des performances, priorisez ces caractéristiques :

Chargement de script async ou différé. Le plugin doit utiliser le paramètre natif strategy de WordPress 6.3 ou ajouter des attributs async/defer à son script Tracker. Un script sans ces attributs bloque le rendu.

Petite taille de script. Moins de 5 Ko compressé est la cible. Tout ce qui dépasse 50 Ko ajoute un temps d’analyse mesurable sur les appareils mobiles. Google Analytics 4 pèse 134 Ko — c’est pourquoi les alternatives axées sur la confidentialité le surpassent systématiquement.

Beacon API pour la transmission des données. navigator.sendBeacon() envoie les données sans bloquer la page. Les anciens plugins qui utilisent XMLHttpRequest synchrone ou admin-ajax ajoutent un travail inutile sur le thread principal.

Traitement des données auto-hébergé. Les plugins qui envoient des données à des serveurs externes (Google Analytics, Jetpack) nécessitent le chargement de bibliothèques JavaScript tierces. Les plugins auto-hébergés comme Statnive, Koko Analytics et WP Statistics ne chargent que leur propre Tracker léger.

Pas de Cookie ni de localStorage. Les plugins qui définissent des Cookie ajoutent une surcharge d’en-tête HTTP à chaque requête ultérieure. Les plugins sans Cookie comme Statnive évitent cela entièrement tout en éliminant également le besoin de bannières de Consent.

Questions fréquentes

La désactivation de mon plugin d’analytics améliore-t-elle vraiment les Core Web Vitals ?

Dans la plupart des cas, oui — mais l’ampleur dépend fortement de votre configuration de mise en cache. Sans cache de page, chaque requête exécute le code PHP du plugin et l’impact peut être significatif. Avec un cache de page correctement configuré, la plupart de la surcharge PHP disparaît et il ne reste que le coût JavaScript côté client — qui pour les Trackers bien conçus est quelques kilo-octets chargés de manière asynchrone. La vraie réponse à « combien coûte mon plugin » est : faites votre propre mesure sur votre propre site en production.

Puis-je conserver Google Analytics et avoir quand même de bons Core Web Vitals ?

Oui, si le reste de votre site est assez rapide pour absorber la surcharge de ~100 ms. Mais si vous êtes déjà à la limite des Core Web Vitals, passer à une alternative plus légère peut vous faire entrer dans la plage « bonne » sans rien changer d’autre sur votre site.

Le suivi côté serveur est-il meilleur pour les performances ?

Le suivi côté serveur (où PHP traite le hit au lieu de JavaScript) élimine entièrement le temps d’analyse JavaScript côté client — un avantage réel sur mobile où les coûts d’analyse dominent. Cependant, il ajoute du temps de traitement serveur (TTFB) et peut créer un goulot d’étranglement sous charge simultanée sans mise en cache. Une approche hybride — JavaScript inline minimal + point d’entrée REST léger — vous donne le meilleur des deux : aucun coût d’analyse pour le hit critique, travail serveur minimal par requête.

Dans quelle mesure les plugins d’analytics affectent-ils spécifiquement les utilisateurs mobiles ?

L’impact mobile est disproportionnellement plus élevé. L’analyse JavaScript sur un téléphone Android de milieu de gamme prend 2 à 5 fois plus de temps que sur un desktop. Un script qui ajoute 50 ms de temps d’analyse sur desktop peut en ajouter 100 à 250 ms sur mobile. C’est pourquoi la taille du script et le chargement async importent le plus pour les Core Web Vitals mobiles.

La conclusion

Votre plugin d’analytics fait du travail sur chaque page de votre site. La quantité dépend de trois choses : l’architecture du plugin (script inline vs bloquant, synchrone vs asynchrone, traitement local vs distant), votre configuration de mise en cache (réduit considérablement la surcharge PHP lorsqu’elle est configurée) et votre hébergement (affecte le TTFB sous charge). Choisissez un plugin avec une architecture bien conçue, configurez un cache de page et mesurez sur votre propre site. Vous n’avez pas à choisir entre la précision des analytics et la vitesse des pages — mais vous ne devriez pas non plus faire confiance à un seul benchmark, y compris le nôtre.

Lisez la comparaison complète du test de stress, découvrez comment nous avons optimisé le Tracker de Statnive, ou comparez Statnive avec Google Analytics, Jetpack Stats et d’autres plugins.

Obtenir Statnive gratuitement