La mise en place d’un proxy pour Google Analytics 4 (GA4) est une solution technique recommandée par la CNIL pour rendre son utilisation conforme au RGPD. Ce guide détaille les étapes nécessaires pour configurer correctement un serveur proxy pour GA4 en utilisant Google Tag Manager Server-Side (GTM-SS).
Ce qu’il vous faut
- Un compte Google Tag Manager existant
- Un site web déjà configuré avec Google Analytics 4
- Des connaissances de base en configuration de serveurs web
- Un compte Google Cloud Platform (GCP) ou un serveur propre pour l’hébergement
Étape 1 : Créer un conteneur Google Tag Manager côté serveur
- Connectez-vous à votre compte Google Tag Manager (https://tagmanager.google.com)
- Cliquez sur « Créer un conteneur »
- Nommez votre conteneur (par exemple « Proxy GA4 »)
- Sélectionnez « Server » comme type de cible
- Cliquez sur « Créer »
Étape 2 : Déployer le conteneur serveur
Option A : Déploiement sur Google Cloud Platform (recommandé)
- Dans votre conteneur serveur GTM, allez dans « Admin » > « Paramètres du conteneur »
- Cliquez sur « Déployer sur Google Cloud »
- Suivez les instructions pour configurer l’hébergement sur Cloud Run
- Choisissez la région Europe (idéalement en France) pour respecter les exigences de la CNIL
- Configurez les paramètres de ressources selon vos besoins de trafic
- Finalisez le déploiement
Option B : Déploiement sur votre propre infrastructure
Si vous préférez héberger vous-même votre serveur proxy :
- Téléchargez l’image Docker officielle de Google Tag Manager Server-Side
- Déployez-la sur votre serveur en Europe (idéalement en France)
- Configurez les paramètres réseau et de sécurité appropriés
- Assurez-vous que votre serveur est accessible depuis Internet
Étape 3 : Configurer un domaine personnalisé
Pour éviter les problèmes liés aux bloqueurs de publicités et améliorer la sécurité :
- Créez un sous-domaine sur votre domaine principal (par exemple :
analytics.votredomaine.com) - Configurez les enregistrements DNS nécessaires pour pointer vers votre serveur proxy
- Dans votre conteneur serveur GTM, allez dans « Admin » > « Paramètres du conteneur »
- Mettez à jour l’URL de votre serveur de taggage avec votre domaine personnalisé
Étape 4 : Configurer le client GA4 dans votre conteneur serveur
- Dans votre conteneur serveur, allez dans la section « Clients »
- Cliquez sur « Nouveau » pour créer un client
- Sélectionnez « Google Analytics: GA4 » comme type de client
- Configurez les paramètres du client :
- Nommez votre client (par exemple « Client GA4 »)
- Dans la section des paramètres avancés, activez « Redact visitor IP address » (obligatoire selon la CNIL)
- Activez « Accept enhanced measurement events » si nécessaire
- Si vous utilisez un domaine personnalisé, cochez « Default gtag.js paths for specific IDs » et ajoutez votre Measurement ID
Étape 5 : Configurer le tag GA4 dans votre conteneur serveur
- Dans votre conteneur serveur, allez dans la section « Tags »
- Cliquez sur « Nouveau » pour créer un tag
- Sélectionnez « Google Analytics: GA4 » comme type de tag
- Laissez les champs Measurement ID et Event Name vides pour qu’ils héritent automatiquement des données du client
- Créez un déclencheur pour ce tag :
- Cliquez sur « Triggering » pour configurer un déclencheur
- Créez un nouveau déclencheur de type « Custom »
- Configurez-le pour qu’il se déclenche uniquement sur « Some Events »
- Choisissez la variable « Client Name » et définissez la condition pour qu’elle corresponde au nom du client GA4 que vous avez créé
- Enregistrez le tag
Étape 6 : Implémenter la proxyfication conforme à la CNIL
Pour répondre aux exigences de la CNIL, nous devons configurer des transformations pour anonymiser et pseudonymiser les données :
6.1 Anonymisation de l’adresse IP
L’adresse IP est déjà redactée grâce à l’option activée dans le client GA4.
6.2 Pseudonymisation des identifiants utilisateurs
- Créez une nouvelle variable de type « Custom JavaScript » :
- Nommez-la « Hachage Client ID »
- Utilisez un code JavaScript qui génère un hash sécurisé du client_id
- Créez un tag personnalisé qui intercepte les requêtes GA4 :
- Modifiez les identifiants client_id et user_id avec la fonction de hachage
- Assurez-vous que cette modification se fait avant l’envoi des données à Google
6.3 Traitement du referrer et des URL
- Créez une variable qui nettoie le referrer pour ne conserver que le nom de domaine
- Créez une variable qui nettoie les URLs en supprimant les paramètres sensibles (comme gclid, fbclid, utm_id, etc.)
- Intégrez ces variables dans votre configuration
Étape 7 : Modifier la configuration de votre Google Tag dans le conteneur web
- Dans votre conteneur web GTM, ouvrez le tag Google (anciennement Google Analytics 4)
- Cliquez sur « Configuration settings » > « Add parameter »
- Ajoutez le paramètre « server_container_url » avec la valeur de l’URL de votre serveur proxy (par exemple : « https://analytics.votredomaine.com« )
- Si vous utilisez des tags GA4 événementiels, ajoutez également ce paramètre à chacun d’eux ou utilisez une variable de configuration
Étape 8 : Tester votre configuration
- Activez le mode aperçu dans votre conteneur serveur
- Activez également le mode aperçu dans votre conteneur web
- Naviguez sur votre site web pour générer des événements
- Vérifiez dans le mode aperçu du conteneur serveur que :
- Vérifiez dans Google Analytics que les données sont bien reçues
Étape 9 : Valider la conformité RGPD/CNIL
Assurez-vous que votre implémentation répond aux exigences de la CNIL :
- L’adresse IP complète n’est pas transférée à Google
- Les identifiants utilisateurs sont pseudonymisés
- Les informations de referrer sont traitées pour préserver la confidentialité
- Les paramètres d’URL pouvant contenir des données personnelles sont supprimés
- Le serveur proxy est hébergé dans l’Union européenne
Étape 10 : Publier vos modifications
- Publiez votre conteneur serveur GTM
- Publiez votre conteneur web GTM
- Documentez votre configuration pour références futures
Dépannage
Si vous rencontrez des problèmes :
- Vérifiez les journaux de votre serveur proxy
- Utilisez le mode aperçu de GTM pour identifier où la chaîne est rompue
- Assurez-vous que votre domaine personnalisé est correctement configuré
- Vérifiez que tous les paramètres de redirection sont correctement définis

































