Passer au contenu principal

Adapter votre configuration Axeptio pour Google Tag Gateway (GTG)

Vous utilisez Google Tag Gateway (GTG) ? Découvrez son impact sur le consentement et comment adapter votre configuration Axeptio.

Écrit par Alexandre Dias Da Silva

Cet article vous concerne uniquement si vous utilisez Google Tag Gateway (GTG) sur votre site.

Qu'est-ce que Google Tag Gateway et quel est son impact sur le consentement ?

Google Tag Gateway (GTG) est un mécanisme proposé par Google qui permet de servir les tags Google (gtag.js, gtm.js) depuis votre propre domaine au lieu de googletagmanager.com. Concrètement, GTG transforme des scripts tiers en scripts first-party.

L'activation se fait en un clic depuis l'interface Google Tag Manager : Google injecte alors une configuration CDN qui modifie la source du script chargé sur le site.

Une fois GTG activé, un tag qui était auparavant chargé depuis

https://www.googletagmanager.com/gtm.js?id=GTM-XXXXXX est désormais chargé depuis ​https://votre-domaine.com/gtm.js?id=GTM-XXXXXX

À quoi sert GTG ?

GTG offre une alternative légère au tracking server-side pour les sites qui veulent :

  • Contourner les adblockers qui bloquent les requêtes vers googletagmanager.com.

  • Améliorer la performance en réduisant les requêtes DNS tierces.

  • Renforcer la résilience du tracking face aux restrictions navigateur (ITP, ETP).

Contrairement au server-side tagging (qui nécessite un serveur GTM dédié), GTG s'active en un clic depuis l'interface GTM.

Impact sur le consentement : le risque de consentement tardif

Pour qu'Axeptio fonctionne correctement, deux signaux doivent être émis avant que les tags Google ne s'exécutent :

  • la commande default du Consent Mode (gtag('consent', 'default', {...}))

  • le TCF stub (window.__tcfapi), pour les sites soumis au framework IAB TCF v2.2

Si ce n'est pas le cas — c'est-à-dire si la commande default et/ou le TCF stub se chargent après que les tags Google ont déjà démarré — on parle alors de consentement tardif (late consent).

Lorsque le consentement est tardif, les premiers événements envoyés par les tags Google peuvent l'être sans que l'état de consentement choisi par l'utilisateur ait été pris en compte, ce qui contrevient aux exigences de mise en œuvre du Consent Mode.

Ce problème peut se produire indépendamment de GTG, notamment dans les situations suivantes :

  • intégration Axeptio par script manuel, si Axeptio n'est pas positionné avant GTM dans le HTML

  • utilisation du modèle de balise GTM Axeptio sans le déclencheur "Consent Initialization - All Pages"

  • intégration via plugin CMS, selon la façon dont celui-ci injecte le script

Si vous avez suivi nos recommandations d'intégration — tant sur la méthode d'intégration d'Axeptio que sur la configuration du Consent Mode v2 — la commande default est émise avant les tags Google : GTG n'a alors aucun impact sur votre configuration.GTG peut amplifier ce problème existant : en servant gtm.js depuis votre propre domaine, le script se charge potentiellement plus vite (pas de résolution DNS externe), ce qui réduit la tolérance aux problèmes d'ordre de chargement. GTG agit ainsi comme un révélateur : il rend visible un problème qui pouvait passer inaperçu jusqu'ici.

Ce que GTG ne fait pas

  • GTG ne contourne pas les choix de consentement de l'utilisateur. Le Consent Mode continue d'adapter le comportement des tags en fonction du consentement signalé par Axeptio.

  • GTG ne collecte aucune donnée supplémentaire par rapport à gtag.js / gtm.js. GTG modifie uniquement la manière dont le script est chargé, pas ce qu'il fait une fois chargé.

Comment vérifier si vous utilisez GTG ?

Important : la vérification de l'activation GTG doit être effectuée manuellement par vous. Axeptio détecte les symptômes (consentement tardif) mais c'est à vous de faire la corrélation avec GTG à l'aide des étapes ci-dessous.

Pour les étapes formelles de vérification, consultez le centre d'aide Google Tag Manager : https://support.google.com/tagmanager

En complément, voici trois vérifications pratiques que vous pouvez effectuer en quelques minutes.

Dans le code source de la page

  1. Ouvrez la page concernée dans un navigateur.

  2. Affichez le code source (clic droit → Afficher le code source de la page ou Ctrl+U / Cmd+Option+U).

  3. Recherchez la balise <script> qui charge gtm.js ou gtag/js.

Tag servi via GTG :https://votre-domaine.com/gtm.js?id=GTM-XXXXXXTag NON servi via GTG :https://www.googletagmanager.com/gtm.js?id=GTM-XXXXXX

Le critère de vérification est le domaine source du script : il doit être le vôtre (par ex. https://example.com/gtm.js) et non https://www.googletagmanager.com/gtm.js.

Le nom du script peut avoir été personnalisé. GTG permet de modifier le nom du fichier de conteneur (par défaut gtm.js). Si ce nom a été changé, la recherche dans le code source ne donnera rien. Dans ce cas, utilisez la méthode Réseau + Initiateur décrite ci-dessous.

Dans l'onglet Réseau du navigateur

  1. Ouvrez les outils développeurs du navigateur (F12 ou Cmd+Option+I).

  2. Allez dans l'onglet Réseau (Network).

  3. Filtrez sur gtm.js ou gtag.

  4. Rechargez la page.

  5. Inspectez la colonne Domaine / Initiator de chaque requête.

Si vous voyez votre-domaine.com/gtm.js?id=… → ✅ Tag servi via GTG

Si vous voyez www.googletagmanager.com/gtm.js?id=… → ❌ Tag non servi via GTG

Cas particulier : nom de conteneur personnalisé

GTG permet de modifier le nom du fichier de conteneur (par défaut gtm.js). Si vous avez personnalisé ce nom — ou si vous ne savez pas s'il a été modifié — la recherche sur gtm.js dans l'onglet Réseau ne renverra aucun résultat. Voici comment procéder dans ce cas :

Note : Axeptio ne peut pas détecter automatiquement si GTG est activé — il n'existe pas d'API publique pour cela. Cette vérification est donc toujours manuelle.

Étape 1 — Vérifier l'URL d'origine du tag

Si le tag est servi depuis une URL commençant par https://www.googletagmanager.com/, GTG n'est pas activé. Vous pouvez vous arrêter ici.

Si l'URL de chargement est différente (domaine propre ou inconnu), passez à l'étape suivante.

Étape 2 — Identifier la requête réseau du tag concerné

  1. Naviguez sur le site et ouvrez les outils développeurs (F12 ou Cmd+Option+I).

  2. Allez dans l'onglet Réseau (Network).

  3. Identifiez une requête HTTP émise par le tag concerné. Pour Google Analytics (GA4), filtrez par exemple sur le mot collect — les requêtes de collecte de données GA4 contiennent ce terme.

⚠️ Cette étape est la plus délicate. La requête peut être partiellement obfusquée selon la configuration du tag. Si vous ne la trouvez pas, cherchez des requêtes vers des domaines Google Analytics ou Google Ads (analytics.google.com, google-analytics.com, doubleclick.net).

Étape 3 — Remonter à l'URL initiatrice

  1. Cliquez sur la requête identifiée à l'étape 2.

  2. Ouvrez l'onglet Initiateur (Initiator).

  3. La call stack affiche la chaîne d'appels qui a déclenché cette requête. Remontez jusqu'au script source : c'est lui qui correspond au tag chargé via GTG (ou non).

Si ce script source est servi depuis votre propre domaine (et non googletagmanager.com), GTG est activé pour ce tag.

Dans l'interface Google Tag Manager

  1. Depuis la page d'accueil de GTM, cliquez sur l'onglet Google tags.

  2. Cliquez sur le tag Google concerné.

  3. Dans le menu de gauche, allez dans AdminGoogle tag gateway.

  4. Un panneau s'ouvre avec un tableau Domains. Regardez la colonne Status : - First-party → GTG est actif pour ce domaine - Not started → GTG n'est pas encore configuré pour ce domaine

Si votre domaine n'apparaît pas du tout dans ce tableau, GTG n'est pas activé.

Que faire avec ce résultat ?

  • Si aucun de vos tags Google n'est servi via GTG : aucune action GTG à mener. Continuez à utiliser Axeptio comme aujourd'hui.

  • Si certains de vos tags Google sont servis via GTG et que vous voyez un avertissement de consentement tardif : passez à la section ci-dessous.

Si vous utilisez GTG

Axeptio vous aide à détecter les problèmes de consentement tardif

Shake — Google Consent Mode Check effectue automatiquement un scan de votre site par mois pour détecter les problèmes de consentement tardif. Disponible pour tous les clients Axeptio.

  • Les résultats sont visibles directement depuis votre back-office, dans la section Google Consent Mode Check.

  • Un rapport PDF est envoyé automatiquement à l'issue de chaque scan.

  • Il n'est pas possible de relancer un scan manuellement avant la prochaine échéance de 30 jours.

Shake ne détecte pas GTG directement (aucune API publique ne le permet), mais il identifie les symptômes problématiques (consentement tardif, signaux manquants) et vous guide vers les actions à mener.

Que faire si Axeptio détecte un consentement tardif et que GTG est activé ?

Les problèmes de consentement tardif liés à GTG sont causés par un ordre de chargement des tags qui échappe au contrôle d'Axeptio. Ces problèmes doivent être résolus dans votre configuration de tags ou dans votre stratégie de déploiement — Axeptio ne peut pas les corriger seul.

💡 Si vous avez suivi les recommandations d'intégration Axeptio et que vous n'observez pas de late consent — aucune action n'est requise, votre configuration est conforme.

Si vous utilisez GTG et que votre configuration présente un problème de consentement tardif, trois options de résolution sont possibles, par ordre de recommandation décroissante.

(Recommandé) Option A — Adopter le mode de consentement avancé

Passer au mode de consentement avancé : les tags Google se déclenchent immédiatement en envoyant des pings sans cookies (mesure limitée). Une fois le consentement obtenu, la mesure complète reprend ; en cas de refus, seuls les pings cookieless sont conservés.

⚠️ Éligibilité à la modélisation comportementale : votre propriété GA4 doit atteindre un seuil minimum de 1 000 visiteurs consentants par jour (sur au moins 7 des 28 derniers jours). En dessous de ce seuil, la modélisation ne s'activera pas. → En savoir plus

  • Activer les Data Transmission Controls dans les paramètres de votre Google tag selon vos besoins — documentation Google

  • Les Global Consent Defaults sont gérés automatiquement par Axeptio.

Pourquoi cette option est recommandée :

  • C'est le mécanisme explicitement recommandé par Google pour les déploiements GTG.

  • Le mode basique est plus fragile dans ce contexte : il repose sur une maîtrise stricte de l'ordre de chargement. Si ce n'est pas le cas, GTG peut mettre en évidence ce problème existant.

Points d'attention :

  • Vérifiez que vos tags Google supportent le mode avancé.

  • La modélisation comportementale nécessite 1 000 visiteurs consentants/jour minimum.

  • Les Data Transmission Controls sont à configurer selon vos besoins.

📖 Pour la configuration détaillée du Consent Mode avancé avec Axeptio, consultez notre article support dédié : Configurer le Google Consent Mode v2

Option B — Migrer tous les tags dans un conteneur GTM puis déployer GTM via GTG

Cette option s'adresse à vous si vous n'utilisez pas GTM — script manuel dans le ou plugin CMS Axeptio (WordPress, Drupal, Shopify, etc.).

  • Centraliser tous les tags marketing/analytics dans un conteneur Google Tag Manager unique.

  • Activer GTG au niveau du conteneur GTM, pas au niveau de chaque tag individuel.

  • Le conteneur GTM est ainsi servi depuis votre domaine, et c'est GTM qui orchestre l'ordre de chargement des tags qu'il contient.

Points d'attention :

  • Nécessite de mettre en place GTM. Axeptio doit être configuré avec le déclencheur "Consent Initialization - All Pages".

  • Axeptio doit être configuré avec le déclencheur "Consent Initialization - All Pages" pour garantir l'ordre de chargement.

Option C — Configuration manuelle de GTG

En quoi ça consiste :

  • Mettre en place GTG « manuellement » : héberger soi-même la redirection vers le CDN Google sur son propre serveur / CDN et contrôler explicitement l'ordre d'import des scripts dans le HTML.

  • Garantir que la balise Axeptio est chargée et exécutée avant la balise GTG.

Points d'attention :

  • Nécessite des compétences techniques côté serveur / CDN.

  • L'ordre de chargement est entièrement sous votre responsabilité — une erreur de configuration peut réintroduire le problème.

  • Voir la documentation Google pour la configuration manuelle.

Matrice de décision rapide

Situation

Option recommandée

Vous voulez la solution la plus robuste et la plus simple à maintenir

Option A — Mode avancé

Vous n'utilisez pas GTM (script manuel ou plugin CMS Axeptio) et voulez reprendre le contrôle de l'ordre de chargement

Option B — Migrer vers GTM via GTG

Vous avez une équipe technique et voulez garder le contrôle total sans changer de mode de consentement

Option C — GTG manuel

Vous ne savez pas par où commencer

Option A — Mode avancé (recommandé par Google et par Axeptio)

Consentement dans les régions où le bandeau n'est pas affiché

Cette section vous concerne si vous avez configuré Axeptio pour restreindre l'affichage du bandeau à certaines régions (par exemple, uniquement l'EEA, via une zone d'exclusion géographique) et que vous suivez l'Option A (mode de consentement avancé).

Ce qui se passe quand un visiteur arrive depuis une région exclue

Quand Axeptio est configuré avec une zone d'exclusion géographique, les visiteurs hors de cette zone ne voient pas de bandeau. Dans ce cas, Axeptio émet automatiquement un signal consent update: granted pour les quatre types de consentement (ad_storage, analytics_storage, ad_user_data, ad_personalization) dès le chargement de la page, sans attendre d'interaction.

Ce comportement garantit la continuité de la mesure : les tags Google ont besoin d'un signal de consentement même dans les régions où aucun bandeau n'est affiché. Axeptio gère cela automatiquement — aucune configuration supplémentaire n'est nécessaire de votre côté.

Prérequis : ce comportement automatique nécessite que l'écran Consent Mode v2 soit activé dans votre bandeau Axeptio. Sans cet écran, Axeptio ne peut émettre aucun signal de consentement, même granted. → Configurer le Google Consent Mode v2

Important : Axeptio doit être chargé sur toutes les pages, y compris dans les régions exclues

Pour que le signal granted soit émis, Axeptio doit être chargé sur la page même dans les régions où le bandeau est masqué. Si votre implémentation conditionne le chargement d'Axeptio à la région du visiteur (par exemple en supprimant la balise script pour les visiteurs hors EEA), aucun signal de consentement ne sera envoyé et les tags Google fonctionneront sans état de consentement — ce qui n'est pas conforme.

Le schéma correct est le suivant : charger Axeptio sur toutes les pages, configurer la zone d'exclusion dans les paramètres Axeptio, et laisser Axeptio masquer le bandeau tout en émettant le signal de consentement.

Relation avec les Data Transmission Controls et les Global Consent Defaults

Les Data Transmission Controls (DTC) et les Global Consent Defaults (GCD) sont des paramètres configurés directement dans Google Ads, Google Analytics ou Google Tag Manager. Ils contrôlent le comportement des tags Google en attendant ou après réception d'un signal de consentement — mais ils ne produisent pas eux-mêmes un signal de consentement. C'est toujours Axeptio qui l'émet.

Concrètement :

  • Les DTC et GCD ne fonctionnent correctement que si Axeptio est chargé et émet des signaux sur toutes les pages.

  • Si vous avez défini des GCD globaux à denied pour toutes les régions par mesure de sécurité, le signal granted émis par Axeptio pour les régions sans bandeau viendra bien surcharger ce défaut — c'est le comportement correct et attendu.

Annexe — Références et documentation

Documentation Axeptio

Documentation Google

Les pages Google ci-dessus sont les sources autoritaires. En cas de divergence, les pages Google font foi.

Avez-vous trouvé la réponse à votre question ?