Plugins Guides Blog Mes licences Parlons-en

Comment bloquer Google Analytics avant le consentement sur WordPress

Cookie ConsentMis à jour le 4 octobre 20265 min de lecture

Cookie Consent

Pour bloquer Google Analytics avant le consentement sur WordPress, la balise Google ne doit pas s’exécuter au chargement de la page. Elle ne s’exécute qu’une fois que le visiteur a cliqué sur Accepter, ou accepté la catégorie Statistiques. Vous pouvez le faire à la main dans le thème, dans Google Tag Manager, ou avec une extension de consentement qui retient la balise à votre place. Dans les trois cas, Google Consent Mode v2 indique à Google ce que le visiteur a choisi.

Le problème, c’est que la plupart des sites pensent le faire déjà. Le bandeau est là, mais le code Analytics est placé dans l’en-tête et se déclenche dès la première page vue. Ce guide montre comment le vérifier, puis comment corriger.

Vérifier si Analytics se charge avant le consentement

  1. Ouvrez votre site dans une fenêtre de navigation privée.
  2. Ouvrez les outils de développement (F12), choisissez l’onglet Réseau et rechargez.
  3. Sans toucher au bandeau, tapez collect dans le filtre. Une requête vers google-analytics.com/g/collect ou region1.google-analytics.com signifie qu’une page vue a déjà été envoyée.
  4. Tapez maintenant gtag ou gtm. Si googletagmanager.com/gtag/js ou gtm.js apparaît, la balise Google est chargée.
  5. Dans Application > Cookies, cherchez _ga et _ga_XXXX.

Si vous voyez l’un de ces éléments avant d’avoir cliqué, Analytics fonctionne sans consentement. Sur WordPress, le code vient en général de Site Kit by Google, d’une option du thème, d’une extension d’en-tête et de pied de page, ou d’une ligne collée dans header.php. Trouvez d’où vient le vôtre avant de modifier quoi que ce soit, pour ne pas vous retrouver avec deux balises.

Consent Mode est le moyen prévu par Google pour que votre site indique à ses balises ce que le visiteur a choisi. Vous définissez un état par défaut au chargement de la page, en général tout refusé, et vous le mettez à jour après la réponse du visiteur. Le guide du mode de consentement de Google liste les quatre signaux qui comptent :

  • analytics_storage : les cookies Analytics.
  • ad_storage : les cookies publicitaires.
  • ad_user_data : l’envoi de données utilisateur à Google à des fins publicitaires.
  • ad_personalization : les annonces personnalisées et le remarketing.

Ces deux derniers constituent la partie « v2 ». Google les exige depuis mars 2024 pour le trafic provenant de l’Espace économique européen : sans eux, Google Ads perd les audiences et le remarketing pour ces visiteurs.

Consent Mode fonctionne de deux façons, et la différence compte pour le RGPD :

  • Basique : la balise Google ne se charge pas du tout tant que le visiteur n’a pas accepté. Rien n’arrive chez Google avant le consentement.
  • Avancé : la balise se charge tout de suite avec tout refusé et envoie des « pings sans cookies » que Google utilise pour modéliser les données manquantes.

Le mode avancé envoie donc quand même des requêtes à Google, avec l’adresse IP du visiteur, avant tout choix. Plusieurs autorités européennes considèrent que c’est aussi un transfert qui nécessite un consentement. Pour rester du bon côté, utilisez le mode basique : bloquez la balise, et envoyez les signaux Consent Mode quand elle a le droit de se charger.

Trois façons de bloquer Analytics sur WordPress

1. À la main, dans le thème

Écrivez d’abord les valeurs par défaut de Consent Mode, le plus haut possible dans le <head>, puis ne chargez gtag.js qu’une fois que votre bandeau signale un oui :

<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('consent', 'default', {
  analytics_storage: 'denied',
  ad_storage: 'denied',
  ad_user_data: 'denied',
  ad_personalization: 'denied',
  wait_for_update: 500
});
</script>

Quand le visiteur accepte, appelez gtag('consent', 'update', {analytics_storage: 'granted'}) et injectez le script gtag.js. Cela fonctionne, mais vous écrivez et maintenez vous-même le bandeau, le cookie et le registre, et chaque nouveau traceur demande du nouveau code.

2. Dans Google Tag Manager

Si toutes vos balises se trouvent dans un conteneur GTM, vous pouvez y définir les valeurs par défaut de Consent Mode et ajouter une condition de consentement à chaque balise. Deux mises en garde. Le conteneur lui-même, gtm.js, se charge toujours avant le consentement : il contacte donc quand même Google. Et GTM ne contrôle que ce qu’il contient : un pixel ajouté par une extension ou une vidéo YouTube dans une page lui échappent.

3. Avec une extension de consentement qui bloque

Une extension peut repérer la balise Google dans la page et la désactiver jusqu’à ce que le visiteur accepte, quelle que soit la manière dont elle a été ajoutée. C’est la seule des trois méthodes qui couvre aussi le Meta Pixel, les vidéos intégrées, les cartes et les services que vous avez oubliés. Vérifiez que l’extension bloque avant le consentement au lieu de simplement « informer » : le test en navigation privée décrit plus haut vous le dit en une minute.

Cookie Consent suit la troisième voie. Avant que la page quitte votre serveur, elle repère la balise Google (et une cinquantaine d’autres services) et la désactive. Quand le visiteur accepte Statistiques, elle réactive la balise dans le navigateur, sans recharger la page.

  • Les valeurs par défaut de Consent Mode v2 sont écrites tout en haut de la page, avant toute balise Google, avec tous les signaux refusés et un court wait_for_update, pour que les visiteurs qui reviennent et ont déjà accepté soient comptés correctement.
  • Statistiques accorde analytics_storage ; Marketing accorde ad_storage, ad_user_data et ad_personalization.
  • Tag Manager est bloqué jusqu’au consentement par défaut. Si vous gérez déjà le consentement dans votre conteneur, vous pouvez le laisser se charger et vous appuyer sur les signaux.
  • Global Privacy Control : les visiteurs dont le navigateur envoie ce signal sont considérés comme refusant le marketing.
Onglet Third parties de Cookie Consent dans WordPress après une analyse du site, avec Google Analytics et Google Tag Manager listés sous Blocked until consent
L’analyse du site montre quels services sont bloqués jusqu’au consentement et lesquels ne sont pas reconnus.

Tout cela est inclus dans la version gratuite. Le guide Réglages explique les options Google, et Services tiers, analyse et règles personnalisées montre comment repérer les traceurs que vous ne connaissiez pas.

Après la correction : ce qui change dans vos chiffres

Attendez-vous à moins de visites dans Google Analytics. Chaque visiteur qui refuse, ou qui part sans répondre, n’est plus compté. La baisse varie beaucoup selon l’audience et l’aspect du bandeau : comparez donc les tendances dans le temps plutôt que les chiffres bruts avant et après. Vos journaux serveur et vos ventes restent la vraie référence.

Si les chiffres ne baissent pas du tout, refaites le test en navigation privée : quelque chose se charge peut-être encore avant le consentement.

Questions fréquentes

Consent Mode v2 suffit-il pour être conforme au RGPD ?

Non. Consent Mode ne fait que transmettre le choix du visiteur aux balises Google. Il vous faut toujours un bandeau qui pose la question, une trace du consentement et, pour rester prudent, des balises qui ne se chargent pas du tout avant un oui.

Quelle différence entre le mode basique et le mode avancé de Consent Mode ?

En mode basique, la balise Google ne se charge pas tant que le visiteur n’a pas accepté. En mode avancé, elle se charge tout de suite avec le consentement refusé et envoie à Google des pings sans cookies, qui contiennent quand même l’adresse IP du visiteur.

Bloquer Analytics casse-t-il les conversions Google Ads ?

Les conversions des visiteurs qui acceptent le marketing sont suivies comme avant. Pour ceux qui refusent, Google utilise la modélisation quand les signaux Consent Mode v2 sont présents. Sans les signaux v2, Google Ads perd les audiences et le remarketing pour les visiteurs de l’EEE.

Pourquoi mon trafic Analytics a-t-il baissé après l’installation d’un bandeau cookies ?

Parce que les visiteurs qui refusent ou ignorent le bandeau ne sont plus comptés. La baisse montre que le bandeau fonctionne. Comparez les tendances sur plusieurs semaines plutôt que les chiffres bruts avant et après.