Google Ads CAPI
Guide technique pour les media buyers : conversions côté serveur et conversions améliorées. Architecture sGTM, déduplication, consentement européen, dépannage.
1Rôle et objectif
Les conversions améliorées de Google Ads (Enhanced Conversions) sont la destination côté serveur des conversions Google Ads. Elles occupent une place précise dans la chaîne de tracking :
Boutique Shopify ↓ GTM Web (DataLayer + Consent Mode v2) ↓ GA4 (transport technique) ↓ sGTM (Server-Side GTM) ↓ ┌─────────────────────────────────────┐ │ GADS – Conv – purchase (tag sGTM) │ ← Ce guide │ Conversions améliorées actives │ │ Hachage SHA-256 automatique │ └─────────────────────────────────────┘ ↓ Google Ads Conversions API
Cette configuration apporte :
- Un tracking Google Ads 100 % côté serveur
- Une conformité RGPD stricte (consentement UE obligatoire)
- Une meilleure résistance aux bloqueurs de publicité
- Une attribution plus précise grâce aux conversions améliorées
- Une déduplication déterministe
Le système repose sur une source unique de conversions : le DataLayer du GTM Web, transporté par GA4 jusqu'au sGTM, puis acheminé vers Google Ads.
2Architecture d'ensemble
Le flux de données complet
Cookiebot (CMP UE)
↓
GTM Web (Consent Mode v2 + DataLayer)
↓
GA4 (transport technique uniquement)
↓
Server-Side GTM (sGTM)
↓
Modèle Google Ads d'Addingwell
↓
Google Ads Conversions APIRoutage dans le sGTM
Le conteneur sGTM reçoit les événements GA4 et les achemine vers chaque destination, dont Google Ads :
sGTM (serveur) → GA4 Client (reçoit la requête) ├── GA4 Server tag → Google Analytics 4 ├── META – CAPI – All Events → Meta (Full CAPI) ├── GADS – Conv – purchase → Google Ads Enhanced Conversions ← Ce guide └── (bientôt) TikTok Events API, Snap CAPI
Principes fondamentaux
- Aucune balise Google Ads directement dans le thème
- Jamais de conversion envoyée deux fois (client et serveur)
- Une seule source pour purchase : le dataLayer du GTM Web
- Consentement obligatoire avant tout envoi
- GA4 sert de transport technique
- La balise de remarketing reste côté client, pour les audiences
Une source unique pour les conversions
Toutes les conversions suivent exclusivement ce chemin :
GTM Web → dataLayer purchase → GA4 event → sGTM
Aucun envoi direct depuis :
- Une balise Google Ads côté navigateur
- Le thème Shopify
- Une application externe
3Les conversions améliorées en détail
Architecture des conversions améliorées
Les conversions améliorées (EC) sont activées par défaut dans la balise sGTM GADS – Conv – purchase. Addingwell hache automatiquement les données utilisateur côté serveur, sans aucune intervention de votre part.
Données envoyées (first-party)
Les données suivantes sont collectées après consentement, puis hachées en SHA-256 côté serveur avant d'être envoyées à Google :
- E-mail (hachage SHA-256)
- Téléphone (hachage SHA-256)
- Le cas échéant, nom et prénom (hachage SHA-256)
- Adresse (hachage SHA-256)
Comment les EC améliorent la correspondance
Google se sert de ces données hachées pour rattacher la conversion au clic Google Ads d'origine, même quand le cookie gclid manque ou a expiré. Le taux de correspondance augmente nettement : l'attribution gagne en précision et les enchères en efficacité.
Sans EC :
Clic Google Ads → cookie gclid → purchase → correspondance (si le cookie est présent)
Avec EC :
Clic Google Ads → cookie gclid → purchase → correspondance via gclid
→ correspondance via e-mail (haché)
→ correspondance via téléphone (haché)
→ correspondance via adresse (hachée)
= Taux de correspondance plus élevé, même sans cookieHachage côté serveur
Sécurité des données
Les données personnelles (PII) sont hachées uniquement côté serveur (sGTM). Aucune donnée personnelle ne circule en clair dans les requêtes du navigateur. Le modèle Addingwell s'occupe du hachage automatiquement.
Les règles à respecter
- Données collectées uniquement après consentement (ad_storage + ad_user_data)
- Hachées en SHA-256 avant envoi à Google
- Jamais envoyées en clair
- Le hachage se fait dans le sGTM, pas côté client
4Événements et paramètres
Conversion principale
| Action utilisateur | GA4 | Google Ads |
|---|---|---|
| Achat | purchase | Action de conversion |
Paramètres transmis
- transaction_id
- value
- currency
- items (si besoin)
- gclid / wbraid / gbraid
- user_data hachées (conversions améliorées)
5Logique de déduplication
Un identifiant unique partout
transaction_id = conversion_id
Le même identifiant sert à la fois pour :
- Le purchase GA4
- La conversion Google Ads
- Les logs du sGTM
Règles
- Un purchase et un seul dans le dataLayer
- Aucun second envoi Google Ads côté client
- Aucun double mapping dans le sGTM
- Aucune conversion importée en parallèle
6Identifiants d'attribution Google
gclid
- Paramètre d'URL Google Ads
- Conservé dans un cookie first-party (_gcl_aw)
- Prioritaire pour l'attribution
- Le cookie restore d'Addingwell le réécrit en first-party
wbraid / gbraid
- Utilisés sur iOS et dans les contextes à forte protection de la vie privée
- gbraid : attribution multi-appareils (app → web)
- wbraid : attribution web vers app, iOS 14.5+
- Transmis quand ils sont présents
Cookies d'attribution (first-party)
Addingwell conserve les cookies d'attribution en first-party (cookie restore) : ils résistent à l'ITP de Safari et aux purges du navigateur.
| Cookie | Paramètre | Rôle |
|---|---|---|
| _gcl_aw | gclid | Click ID : attribution des conversions Google Ads |
| _gcl_gb | gbraid | Click ID : attribution multi-appareils (app → web) |
| _gcl_gw | wbraid | Click ID : attribution web vers app, iOS 14.5+ |
Transmission au serveur
- 1Lus dans le GTM Web
- 2Injectés dans l'événement GA4
- 3Transmis au sGTM par le transport first-party
- 4Injectés dans le modèle Google Ads d'Addingwell
7Configuration
Identifiants requis
| Paramètre | Source | Emplacement |
|---|---|---|
| ID de conversion | Google Ads > Conversions > Paramètres | Variable du GTM serveur |
| Libellé de conversion | Google Ads > Conversions > Paramètres | Variable du GTM serveur |
Balise sGTM
La balise GADS – Conv – purchase est configurée dans le conteneur sGTM à partir du modèle Addingwell. Les conversions améliorées y sont activées par défaut.
Conversions améliorées dans Google Ads
- 1Allez dans Google Ads > Conversions > Paramètres
- 2Activez les « Conversions améliorées »
- 3Choisissez « Google Tag Manager » comme méthode
- 4Vérifiez que les diagnostics confirment la réception des données
Balise de remarketing
La balise de remarketing reste côté client, dans le GTM Web, pour les audiences Google Ads. Seule la conversion purchase passe par le sGTM.
8Consentement dans l'UE
Le consentement est géré exclusivement par :
Cookiebot + GTM Consent Mode v2
Signaux exigés par Google Ads
| Signal | Requis | Catégorie Cookiebot |
|---|---|---|
| ad_storage | Oui | Marketing |
| ad_user_data | Oui | Marketing |
Sans consentement analytics ni marketing
- Aucune conversion envoyée
- Aucun gclid transmis
- Aucune donnée utilisateur envoyée
- Les conversions améliorées ne fonctionnent pas sans consentement
9Vérification
Où vérifier
- 1Google Ads > Conversions > Diagnostics : vérifiez que les conversions améliorées sont bien reçues
- 2Google Ads Tag Assistant : validez la balise de conversion et les conversions améliorées
- 3Aperçu du sGTM : confirmez que la balise GADS – Conv – purchase se déclenche
- 4DevTools > Application > Cookies : vérifiez la présence des cookies gclid, wbraid et gbraid
Phase 3 : checklist Google Ads
Les points de contrôle propres à Google Ads, extraits de la recette complète :
10Lire les métriques Google Ads
Pourquoi conversions et clics ne concordent pas toujours
Les causes normales :
- Consentement refusé
- Utilisateurs multi-appareils
- Cookies bloqués
- Délais d'attribution
- Conversions modélisées
Pourquoi GA4 ≠ Google Ads
GA4
Repose sur les sessions analytics
Google Ads
Repose sur les clics publicitaires
Les deux outils ne comptent pas de la même façon. Un écart entre eux est normal.
11Les métriques fiables pour optimiser
Les KPI à suivre en priorité :
- Coût par conversion
- ROAS
- Valeur de conversion
- Taux de conversion après consentement
- Volume de conversions côté serveur
12Matrice des responsabilités
- Événement purchase dans le dataLayer
- Persistance de gclid / wbraid
- Respect du consentement
- Déduplication
- Intégrité du sGTM
- Paramétrage des actions de conversion
- Stratégie d'enchères
- Analyse des performances
- Lecture de l'attribution
- Analyse des écarts entre plateformes
- Validation des volumes
- Débogage entre systèmes
13Dépannage
Vérifier :
- 1Consentement actif (ad_storage + ad_user_data)
- 2purchase GA4 présent dans l'aperçu du sGTM
- 3Réception dans le sGTM : balise GADS – Conv – purchase déclenchée
- 4Transmission à Google Ads : conversion visible dans Diagnostics
Vérifier :
- gclid présent dans l'URL d'arrivée
- Cookie first-party _gcl_aw actif (vérifiez dans DevTools > Cookies)
- Fenêtre de conversion configurée dans Google Ads
- Conversions améliorées actives et données reçues
- Cookie restore d'Addingwell fonctionnel
Causes possibles :
- Événement purchase en double dans le dataLayer
- Conversion importée en parallèle (import hors ligne)
- Pas de transaction_id stable
- Balise Google Ads côté navigateur encore active en plus de celle du serveur
Vérifier :
- 1Vérifiez que les EC sont activées dans Google Ads > Conversions > Paramètres
- 2Vérifiez que les données utilisateur sont présentes dans le DataLayer (e-mail, téléphone)
- 3Vérifiez dans l'aperçu du sGTM que les données hachées sont bien transmises
- 4Attendez 48 à 72 h : les diagnostics des EC peuvent mettre du temps à se mettre à jour
Vérifier :
- Cookie restore désactivé dans Addingwell
- Domaine personnalisé du sGTM non configuré (les cookies sont écrits par le domaine first-party du sGTM)
- Vérifiez dans DevTools > Application > Cookies la présence de _gcl_aw, _gcl_gb et _gcl_gw
- Activez Cookie Restore dans Addingwell > Settings
14Checklist
Checklist hebdomadaire du media buyer
À vérifier chaque semaine :
Vérifiez la couche que vous venez d'installer
Scannez la boutique : 41 contrôles lisent ce qu'elle envoie maintenant à GA4, Meta et Google Ads.