Lorsqu’on travaille sur plusieurs environnements web – par exemple une préproduction et une production – il est fréquent d’avoir des identifiants Google Analytics différents.
Par défaut, de nombreux utilisateurs du Tag Manager créent deux conteneurs ou deux balises distinctes, ce qui complique la maintenance.
Pourtant, il existe une méthode bien plus élégante : utiliser une Lookup Table (table de correspondance) afin que votre balise Google Analytics sélectionne automatiquement le bon identifiant en fonction de l’environnement.
Le problème : deux environnements, deux identifiants
Prenons un cas simple :
- Environnement production :
G-XXXXXXX - Environnement préproduction :
G-YYYYYYY
Vous souhaitez que vos tests sur la préprod ne remontent pas de données dans la propriété de production.
Mais vous ne voulez pas gérer deux balises distinctes dans GTM.
La solution : une seule balise GA4, alimentée par une variable dynamique qui choisira le bon identifiant.
La solution : la Lookup Table
La Lookup Table est une variable GTM qui renvoie une valeur différente selon une condition.
Dans notre cas, la condition sera le nom d’hôte (hostname) du site chargé.
Exemple :
- Si le site est
www.monsite.com→ on utilise l’ID de production - Si le site est
staging.monsite.com→ on utilise l’ID de préproduction
Étape 1 : créer une variable pour le hostname
- Ouvrez Google Tag Manager.
- Allez dans Variables.
- Activez la variable intégrée {{Page Hostname}} si ce n’est pas déjà fait.
Cette variable renvoie le domaine du site chargé, par exemplewww.monsite.comoustaging.monsite.com.
Étape 2 : créer la Lookup Table
- Cliquez sur Nouvelle variable.
- Type de variable : Table de correspondance (Lookup Table).
- Dans le champ d’entrée, sélectionnez {{Page Hostname}}.
- Ajoutez les lignes suivantes :
| Entrée (Page Hostname) | Sortie (ID GA4) |
|---|---|
www.monsite.com | G-XXXXXXX |
staging.monsite.com | G-YYYYYYY |
- Définissez une valeur par défaut (par exemple l’ID de prod) pour éviter les erreurs.
- Nommez la variable :
GA4 ID dynamique.
Étape 3 : insérer la variable dans la balise Google Analytics
- Ouvrez votre balise Google Analytics : Configuration GA4.
- Dans le champ ID de mesure, remplacez l’identifiant statique par la variable :
{{GA4 ID dynamique}} - Enregistrez et publiez.
À partir de maintenant, GTM sélectionnera automatiquement l’identifiant correspondant à l’environnement.
Étape 4 : tester en mode Preview
Passez votre conteneur en mode Preview et testez :
- Sur
staging.monsite.com, la balise doit envoyer les données versG-YYYYYYY. - Sur
www.monsite.com, la balise doit envoyer les données versG-XXXXXXX.
Cette approche est fiable, maintenable et ne nécessite aucune duplication de conteneur ni de balise.
Avantages de cette méthode
- Un seul conteneur GTM à maintenir.
- Aucune duplication de balises GA4, Google Ads ou autres outils.
- Plus de sécurité : impossible d’envoyer par erreur des données de préprod vers la prod.
- Extensible : fonctionne aussi pour gérer des versions multi-domaines, langues ou marques.
Variantes possibles
1. Identifier l’environnement via une variable personnalisée
Si votre préprod utilise le même domaine (ex : monsite.com avec un chemin /staging/), vous pouvez utiliser une variable JavaScript personnalisée ou une variable Data Layer pour déterminer l’environnement.
2. Lookup Table pour d’autres outils
Cette approche fonctionne aussi avec :
- Google Ads Conversion ID
- Meta Pixel ID
- Hotjar Site ID
- Microsoft Clarity Tag
- n’importe quelle balise qui nécessite un identifiant différent selon l’environnement.
Bonnes pratiques
- Gardez une documentation interne listant les correspondances d’IDs.
- N’oubliez pas d’ajouter une valeur par défaut dans la Lookup Table.
- Utilisez une convention claire pour vos domaines ou sous-domaines.
- Testez systématiquement via le mode Preview avant chaque publication.
Conclusion
Grâce aux Lookup Tables, il est possible de gérer plusieurs environnements avec un seul conteneur Google Tag Manager.
Cette méthode simplifie considérablement la maintenance du tracking tout en garantissant que chaque environnement envoie ses données au bon endroit.