SteerAds
TutorielGoogle AdsDébutants

Conversion tracking Google Ads : guide 2026

Sans tracking propre, tout le reste de Google Ads s'effondre : Smart Bidding optimise dans le vide, les rapports mentent, les budgets partent sur les mauvais clics. Voici le guide complet pour poser des fondations solides en 2026 — GTM, Enhanced Conversions, Consent Mode v2, server-side, vérifications.

Matt
MattTracking & Data Lead
···10 min de lecture

25 à 35% des comptes Google Ads ont un conversion tracking cassé ou incomplet (selon secteur et taille). Sans signal propre, Smart Bidding optimise sur du bruit et aucune stratégie ne compense — ce guide pose les fondations 2026 : GTM, Enhanced Conversions, Consent Mode v2, vérifications

Si vous gérez un compte Google Ads et que vous n'êtes pas absolument certain que toutes vos conversions sont trackées correctement, alors ce guide est pour vous. Sur les comptes observés dans les benchmarks publics, 25 à 35% ont un tracking cassé ou partiel (selon secteur et taille) — et dans la majorité des cas, personne ne s'en rend compte avant des mois de budget gaspillé.

Le problème est silencieux : Google Ads continue de reporter des conversions, Smart Bidding continue de « travailler », les tableaux de bord restent verts. Mais en coulisses, l'algorithme optimise vers un signal incomplet ou faux, et vos CPA réels sont 2 à 4 fois au-dessus de ceux affichés.

Ce guide couvre tout ce qu'un dev ou un marketer a besoin de savoir en 2026 : les 3 méthodes de tracking (gtag, GTM, server-side), le setup GTM en 5 étapes, Enhanced Conversions (+30% de précision), Consent Mode v2 (obligatoire en EEE depuis mars 2024), comment vérifier que tout marche, et les 5 pièges à éviter.

Pourquoi le tracking est-il la fondation Google Ads ?

Google Ads fonctionne sur une boucle de rétroaction simple : vous envoyez du trafic, certains utilisateurs convertissent, Google enregistre le signal, Smart Bidding apprend « ce clic a converti, ceux-là non » et ajuste les enchères en conséquence. Si ce signal est cassé — manquant, dupliqué, mal attribué — toute la chaîne d'optimisation s'effondre.

Concrètement : sans tracking propre, Smart Bidding optimise « dans le vide ». L'algo voit 100 clics, 0 conversions (ou 10 faux positifs), et conclut soit que vos campagnes sont nulles (il coupe le volume), soit qu'elles sont excellentes (il monte les enchères sur des signaux aléatoires). Dans les deux cas, le CPA réel dérive : nous observons régulièrement des CPA réels 2 à 4× au-dessus du CPA Google Ads affiché sur les comptes mal trackés.

C'est aussi la différence entre un compte qui scale et un compte qui plafonne. Avec un tracking fiable, vous pouvez appliquer nos 10 leviers pour réduire le CPA avec confiance. Sans, c'est comme piloter un avion sans altimètre. D'ailleurs, l'erreur #3 de notre top 10 des erreurs Google Ads est précisément « tracking cassé » — c'est le problème #1 des comptes référencés.

Quelle méthode de tracking choisir : gtag, GTM ou server-side ?

Trois approches techniques existent pour envoyer vos conversions à Google Ads. Chacune a un compromis entre simplicité, flexibilité et précision. Voici comment choisir :

Notre testeur GA4 URL simule la classification Default Channel Group avant déploiement campagne.

Verdict : pour 90% des comptes, GTM est le bon choix. C'est la méthode qu'on détaille dans la section suivante. Réservez server-side aux gros volumes (>50 000 conversions/mois) ou aux taux de perte client-side élevés (adblockers, ITP Safari).

Comment configurer le tracking GTM en 5 étapes ?

Comptez 30 à 60 minutes pour un setup propre. Les étapes qui suivent supposent que vous avez accès à Google Ads et que vous pouvez modifier le code de votre site (ou travailler avec un dev).

Étape 1 · Créer le conteneur GTM

Direction tagmanager.google.com. Créez un compte (nom de votre entreprise), puis un conteneur (type « Web », URL de votre site). GTM vous donne deux snippets à coller : l'un dans <head>, l'autre juste après l'ouverture de <body>. Sur un site Next.js, passez par le next/script avec stratégie afterInteractive.

Étape 2 · Créer l'action de conversion dans Google Ads

Dans Google Ads → Outils → Mesures → Conversions → Nouvelle action → Site Web. Définissez : nom (« Achat », « Lead formulaire »…), catégorie (Purchase, Lead…), valeur (fixe ou dynamique), décompte (One pour les leads, Every pour les achats), fenêtre d'attribution (30 jours par défaut). Notez bien le Conversion ID (format AW-XXXXXXXXXX) et le Conversion Label — vous en aurez besoin dans GTM.

Étape 3 · Configurer le tag Google Ads dans GTM

Dans GTM → Tags → Nouveau → Type « Google Ads Conversion Tracking ». Collez Conversion ID + Label. Pour une valeur dynamique (e-commerce), utilisez une variable de couche de données : {{DLV - transaction_value}}. Déclencheur : « Page View » sur /thank-you pour une conv. simple, ou « Custom Event » pour un événement dataLayer push côté code.

Étape 4 · Push des events depuis votre code

Après un achat confirmé, votre code pousse l'event dans la couche de données :

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
  event: "purchase",
  transaction_id: "ORDER-12345",
  transaction_value: 89.90,
  currency: "EUR",
  customer_email: "user@example.com" // pour Enhanced Conversions
});

Côté GTM, le déclencheur « Custom Event » avec event = purchase déclenche le tag Google Ads, qui envoie la conversion.

Étape 5 · Tester en Preview mode, puis publier

Dans GTM → Preview (coin haut-droit). Connectez-vous à votre site, reproduisez un achat test. Vérifiez que le tag Google Ads apparaît bien en « Tags Fired ». Une fois validé : cliquez « Submit » → nom de version → Publier. Le tag est live.

Comment Enhanced Conversions augmente-t-il la précision de +30% ?

Enhanced Conversions est la feature Google Ads la plus sous-estimée de ces deux dernières années. Le principe : vous envoyez à Google, en plus de la conversion elle-même, des données first-party hachées (email, téléphone, nom). Google matche ces données hachées avec ses comptes Google connectés, et récupère les conversions qui auraient été perdues à cause des bloqueurs, du mode Incognito, ou du cross-device (mobile → desktop).

Selon Google officiellement, Enhanced Conversions apporte +30% de précision moyenne sur les conversions remontées, et jusqu'à +50% dans des secteurs très mobile (e-commerce B2C).

Tip · 5-15 minutes de setup :

Sur un compte déjà tracké avec GTM, activer Enhanced Conversions prend littéralement entre 5 et 15 minutes. Dans GTM → votre tag Google Ads Conversion → « Include user-provided data » → sélectionnez les variables de votre dataLayer (email, phone). Côté Google Ads : Outils → Conversions → votre action → Enhanced Conversions → activer et valider. C'est le meilleur ROI de temps disponible aujourd'hui.

Pré-requis RGPD : vous devez avoir le consentement de l'utilisateur pour envoyer ses données hachées (voir section suivante). Sans consent, pas de données user envoyées — Google ne travaille qu'avec la conversion anonyme.

Comment implémenter Consent Mode v2 depuis mars 2024 ?

Depuis mars 2024, Google impose Consent Mode v2 à tous les annonceurs diffusant dans l'Espace Économique Européen. Si vous ne l'avez pas implémenté, vos campagnes de remarketing et d'audiences personnalisées sont déjà dégradées — et le seront de plus en plus dans les mois à venir.

Consent Mode v2 gère 4 signaux de consentement que votre CMP (Cookiebot, OneTrust, Axeptio…) doit transmettre à Google :

  • ad_storage — cookies publicitaires (remarketing)
  • analytics_storage — cookies GA4
  • ad_user_datanouveau v2, envoi des données user à Google
  • ad_personalizationnouveau v2, personnalisation des annonces

Par défaut (utilisateur n'a pas encore cliqué sur la bannière), tous ces signaux sont à denied. Quand l'utilisateur accepte, la CMP push un event consent update qui bascule les signaux à granted. Google utilise le conversion modeling — un modèle statistique qui comble les trous — pour estimer les conversions manquantes des utilisateurs ayant refusé.

Warning · Tracking cassé silencieusement :

Si votre CMP n'est pas configurée pour Consent Mode v2, Google considère que tous vos visiteurs EEE sont en refus, ce qui fait chuter votre volume de conversions remontées de 30 à 60% — sans aucune erreur visible dans Google Ads. Beaucoup de comptes audités en 2025 ont ce problème exact : rapports verts, CPA faussés. Testez avec l'extension Tag Assistant Companion que votre consent est bien transmis.

Documentation officielle : Consent Mode — guide Google.

Comment vérifier que votre tracking fonctionne ?

Un tracking qu'on ne teste pas est un tracking qu'on ne peut pas faire confiance. Ces 3 tests prennent chacun moins de 5 minutes, à refaire après chaque déploiement.

Test 1 · Tag Assistant Companion

Installez l'extension Chrome Google Tag Assistant. Activez-la sur votre site, déclenchez une conversion test. L'extension affiche tous les tags firés, les paramètres envoyés, et les erreurs potentielles (ID invalide, valeur manquante, consent refusé…). C'est le test le plus rapide pour valider un setup.

Test 2 · Diagnostic Google Ads

Dans Google Ads → Outils → Conversions → cliquez sur votre action → onglet « Diagnostic ». Google liste : « Recording conversions », « No recent conversions », « Tag issue detected »… Si l'état est vert depuis plus de 7 jours, le tag est opérationnel. Toute autre valeur = investigation.

Test 3 · Monitoring continu et alertes

Un déploiement front peut casser le tracking sans prévenir. La solution : un monitoring qui compare le nombre de conversions par jour à la baseline des 30 derniers jours, et alerte en cas de chute brutale. C'est exactement ce que l'anomaly detection SteerAds fait automatiquement : alerte en moins d'une heure dès qu'un compteur de conversions chute de plus de 40% vs la baseline.

Quelles sont les 5 erreurs de tracking les plus fréquentes ?

Voici le parcours standard d'une conversion, de l'utilisateur final jusqu'aux enchères Smart Bidding, avec les points de rupture les plus courants :

Parcours d'une conversion : User → Site Web → GTM → Google Ads → Smart BiddingFlux de tracking : user, site web, Google Tag Manager, Google Ads, Smart BiddingUtilisateurClic + conversionSite WebdataLayer pushGTM+ Consent ModeGoogle AdsEnhanced Conv.Smart BiddingOptimise enchèresÉtape 1Étape 2Étape 3Étape 4Étape 5✗ Rupture : dataLayer mal poussé✗ Rupture : consent refusé / v2 manquant✗ Rupture : Enhanced Conv. non activé

Les 5 erreurs qui cassent silencieusement la chaîne :

  1. Double tracking. Vous avez gardé l'ancien tag gtag direct dans le code ET ajouté GTM. Résultat : chaque conversion est comptée 2 fois. Le CPA affiché est divisé par 2, Smart Bidding sur-enchérit, le CPA réel explose.
  2. Conversion sur page view de confirmation qui se rafraîchit. Si l'utilisateur recharge la page /thank-you, le tag re-firera. Solution : utiliser un event purchase avec transaction_id unique et déduplication côté Google Ads.
  3. Consent Mode absent. Tous vos visiteurs EEE sont traités comme « refus » par Google. Volume de conversions remontées -30 à -60% sans alerte (voir callout ci-dessus).
  4. Valeur hard-codée au lieu de dynamique. Votre tag envoie value: 50 sur chaque conversion au lieu de la vraie valeur panier. Impossible d'optimiser en Target ROAS, Smart Bidding confond un panier à 20€ et un à 500€.
  5. Tag cassé après déploiement front. L'équipe dev refactor le composant checkout, oublie de re-câbler le dataLayer. Zéro conversion remontée pendant 2 semaines. Sans monitoring (anomaly detection), personne ne s'en aperçoit avant la réunion mensuelle.

Comment ajouter les offline conversions au tracking avancé ?

Pour les business avec un cycle de vente long (B2B, immobilier, éducation…), la vraie conversion n'a pas lieu sur le site mais semaines plus tard, dans le CRM : signature d'un contrat, première facture payée, démo convertie en client. C'est là qu'interviennent les Offline Conversions.

Le principe : votre formulaire capture un gclid (identifiant de clic Google Ads) au moment de la soumission, stocké avec le lead dans votre CRM. Quand le lead convertit réellement (contrat signé), vous renvoyez le gclid à Google Ads via Google Sheets, l'API, ou un connecteur HubSpot/Salesforce, avec la valeur réelle du deal.

Résultat : Smart Bidding optimise vers les vraies conversions rentables (contrats signés), pas vers les formulaires remplis qui ne closent jamais. C'est le levier le plus puissant pour un B2B avec un CPA-lead bas mais un CAC réel élevé. Comptez 2 à 5 jours de setup selon la maturité de votre CRM. Couvert en détail dans notre guide Smart Bidding.

Enhanced Conversions for Web en 2026 : la migration

Enhanced Conversions for Web est passée de feature optionnelle à composante critique du tracking 2026. La raison : avec Consent Mode v2 actif et 30 à 60% du trafic EEE en mode dégradé, c'est désormais le seul mécanisme fiable pour reconnecter les conversions aux clics en environnement cookieless. La migration depuis un setup gtag standard prend 30 minutes à 2 heures selon la complexité, et récupère typiquement 18 à 32% des conversions perdues côté client.

Différences vs Enhanced Conversions for Leads. Les deux features partagent le même mécanisme (envoi de PII hashées en SHA-256 à Google), mais ciblent des moments différents. Enhanced Conversions for Web déclenche au moment de la conversion online (achat, formulaire submit) — Google matche les PII hashées à son graph utilisateur pour récupérer les conversions perdues à cause des bloqueurs ou du cross-device. Enhanced Conversions for Leads déclenche plus tard (signature contrat, lead qualifié) en envoyant les PII hashées via API ou Google Sheets — c'est le mécanisme qui remplace le gclid pour les business avec cycles longs sans first-party JS persistant. En 2026, les deux peuvent coexister sur le même compte : Web pour la conversion immédiate, Leads pour la conversion offline downstream.

Le mapping PII hashées. Trois champs sont supportés (au moins un requis) : email, téléphone, adresse complète (prenom, nom, code postal, pays). Les valeurs doivent être normalisées avant hashing : lowercase systématique, trim des espaces, suppression des caractères non-numériques pour le téléphone (format E.164 international préfixé +33 pour la France). Le hashing se fait en SHA-256 hex. Erreur la plus fréquente : envoyer la PII en clair et sa version hashée — Google traite cela comme une violation RGPD potentielle et désactive Enhanced Conversions silencieusement.

Compatibilité technique. Enhanced Conversions for Web fonctionne en gtag.js, GTM web, et GTM server-side. Pour gtag standard, il suffit d'ajouter user_data à l'event de conversion. Pour GTM web, activer « Include user-provided data » dans le tag Google Ads Conversion et mapper les variables dataLayer. Pour GTM server-side, utiliser le client Enhanced Conversions API. Documentation officielle sur le support Google Ads et l'API documentation.

Snippet de hashing SHA-256 client-side avant envoi. Voici le pattern à utiliser quand le hashing doit se faire dans le navigateur (cas standard gtag/GTM web) — l'API Web Crypto est supportée nativement depuis 2017 sur tous les navigateurs modernes :

async function sha256Hash(value) {
  if (!value) return null;
  const normalized = value.trim().toLowerCase();
  const encoder = new TextEncoder();
  const data = encoder.encode(normalized);
  const hashBuffer = await crypto.subtle.digest('SHA-256', data);
  const hashArray = Array.from(new Uint8Array(hashBuffer));
  return hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
}

async function pushEnhancedConversion(orderData) {
  const emailHash = await sha256Hash(orderData.email);
  const phoneHash = await sha256Hash(
    orderData.phone.replace(/[^0-9+]/g, '')
  );

  window.dataLayer.push({
    event: 'purchase',
    transaction_id: orderData.id,
    transaction_value: orderData.total,
    currency: 'EUR',
    user_data: {
      sha256_email_address: emailHash,
      sha256_phone_number: phoneHash,
    },
  });
}

Le tag Google Ads Conversion dans GTM lit ensuite user_data depuis le dataLayer et l'envoie hashé à Google. Aucun PII en clair ne quitte le navigateur.

Compliance RGPD : hashing != anonymisation :

attention : le hashing SHA-256 ne rend pas une donnée anonyme au sens du RGPD. C'est une pseudonymisation — la donnée reste réversible en pratique (rainbow tables sur emails communs). En conséquence : l'utilisateur doit avoir donné son consentement explicite (ad_user_data: granted dans Consent Mode v2) avant tout envoi de PII hashée à Google. La CNIL a publié plusieurs délibérations sur le sujet en 2024-2025. Sans consent, basculer le bloc user_data à null côté code — c'est ce que fait Consent Mode v2 nativement quand correctement implémenté.

Migration depuis un setup standard. Si vous avez déjà GTM + Google Ads Conversion Tracking actif, la migration prend ~45 minutes : (1) modifier le code site pour pousser email + phone hashés dans le dataLayer ; (2) activer « Include user-provided data » dans le tag Google Ads Conversion GTM ; (3) mapper les variables ; (4) tester en Preview mode + Tag Assistant ; (5) publier. L'effet sur les conversions remontées est visible dès 24-48h. Pour la suite logique du setup tracking (server-side, audiences first-party), voir notre guide server-side tracking 2026 et guide Customer Match first-party data.

Consent Mode v2 sans gtag : alternative serveur

La majorité des tutoriels Consent Mode v2 partent du principe que vous avez gtag.js ou GTM web déployé sur le site. Mais que faire si votre stack est 100% server-side custom (Next.js avec un proxy backend, Edge Functions, Worker Cloudflare) et que vous ne voulez pas charger gtag.js côté client ? La réponse : Consent Mode v2 peut fonctionner en server-side pur, avec quelques limitations à connaître.

Le mapping des 4 flags Consent Mode v2. Les 4 flags transmis à Google sont identiques quelle que soit l'implémentation :

  • ad_storage : autorise le stockage de cookies à finalité publicitaire (remarketing, attribution).
  • analytics_storage : autorise le stockage de cookies à finalité analytics (GA4).
  • ad_user_data (nouveau v2) : autorise l'envoi de données user (emails, téléphones, identifiants) à Google pour le matching.
  • ad_personalization (nouveau v2) : autorise la personnalisation des annonces basée sur l'historique utilisateur.

En setup gtag standard, ces flags sont gérés par la CMP (Cookiebot, OneTrust, Axeptio) qui les push dans le dataLayer. En server-side, vous devez les transmettre explicitement avec chaque conversion via Measurement Protocol ou Enhanced Conversions API, en les dérivant du consent stocké côté serveur (cookie de consent ou session backend).

CompareTable : gtag.js Consent Mode vs server-side custom.

Limitations actuelles du server-side pur. Trois limites à connaître. (1) Le conversion modeling Google performe moins bien sans signaux contextuels (page_view, scroll depth, engagement_time_msec) — ces events sont collectés automatiquement par gtag.js, pas par défaut en server-side. (2) Certaines features récentes (Cross-account conversion sharing, Conversion adjustments via UI) requièrent encore un setup partiel gtag.js. (3) Le debug est plus complexe : Tag Assistant ne fonctionne pas, il faut s'appuyer sur les logs Cloud Run/Worker et le rapport de diagnostic Google Ads. Le risk de mesure : sur les comptes que je migre en server-side custom pur, on observe une perte de signal de 5-10% sur les 4 premières semaines, le temps que Google calibre le conversion modeling sur le nouveau pattern. Compensable mais à anticiper.

Code block 1 : dataLayer push consent côté client (setup hybride GTM + server-side). Pour le cas où vous gardez GTM web minimal pour le consent et server-side pour les conversions, le pattern dataLayer reste standard :

// CMP callback quand l'utilisateur clique sur "Accepter tout"
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
  event: 'consent_update',
  consent: {
    ad_storage: 'granted',
    analytics_storage: 'granted',
    ad_user_data: 'granted',
    ad_personalization: 'granted',
  },
});

// Et pour un refus partiel (uniquement analytics) :
window.dataLayer.push({
  event: 'consent_update',
  consent: {
    ad_storage: 'denied',
    analytics_storage: 'granted',
    ad_user_data: 'denied',
    ad_personalization: 'denied',
  },
});

Code block 2 : équivalent server-side via Enhanced Conversions API. En server-side pur, le consent est résolu côté backend (à partir du cookie de consent ou de la session) puis transmis explicitement à chaque envoi de conversion à l'API Google Ads :

// Node.js : envoi conversion server-side avec Consent Mode v2
import { GoogleAdsApi } from 'google-ads-api';

async function uploadConversion(orderData, userConsent) {
  const client = new GoogleAdsApi({
    client_id: process.env.GOOGLE_ADS_CLIENT_ID,
    client_secret: process.env.GOOGLE_ADS_CLIENT_SECRET,
    developer_token: process.env.GOOGLE_ADS_DEV_TOKEN,
  });

  const customer = client.Customer({
    customer_id: process.env.GOOGLE_ADS_CUSTOMER_ID,
    refresh_token: process.env.GOOGLE_ADS_REFRESH_TOKEN,
  });

  const conversion = {
    conversion_action: `customers/${process.env.CID}/conversionActions/${process.env.ACTION_ID}`,
    conversion_date_time: new Date().toISOString(),
    conversion_value: orderData.total,
    currency_code: 'EUR',
    order_id: orderData.id,
    consent: {
      ad_user_data: userConsent.ad_user_data === 'granted' ? 'GRANTED' : 'DENIED',
      ad_personalization: userConsent.ad_personalization === 'granted' ? 'GRANTED' : 'DENIED',
    },
    user_identifiers: userConsent.ad_user_data === 'granted'
      ? [{ hashed_email: orderData.emailHash }]
      : [],
  };

  await customer.conversionUploads.uploadClickConversions({
    conversions: [conversion],
    partial_failure: true,
  });
}

Les flags ad_storage et analytics_storage ne sont pas transmis ici car ils concernent le stockage navigateur (non pertinent en server-side). Seuls ad_user_data et ad_personalization sont transmis à Google pour décider du modeling à appliquer. Le bloc user_identifiers n'est rempli que si ad_user_data: granted — sinon Google reçoit une conversion anonyme et applique son conversion modeling pour estimer l'impact.

Recommandation pratique. Pour 90% des comptes, gtag.js + Consent Mode v2 + Enhanced Conversions reste la combinaison la plus rentable. Le server-side custom devient pertinent au-delà de 50k conversions/mois, ou pour les stacks Edge (Cloudflare Workers, Vercel Edge Functions) où charger gtag.js dégrade les Core Web Vitals. Dans tous les cas, valider le setup avec le rapport de diagnostic Google Ads (Outils → Conversions → Diagnostic) sur les 30 premiers jours post-migration.

Pour aller plus loin, voir aussi nos guides guide Quality Score, guide complet Performance Max, ROAS, CPA, CPC : guide clair.

Sources

Sources officielles consultées pour ce guide :

FAQ

Le tracking est-il obligatoire pour Smart Bidding ?

Oui, absolument. Smart Bidding (Target CPA, Maximize Conversions, Target ROAS) ne peut fonctionner sans signal de conversion fiable. L'algorithme a besoin d'au moins 30 conversions sur 30 jours pour sortir de la phase d'apprentissage. Sans tracking propre, il optimise dans le vide : les CPA observés dérivent de 2 à 4× au-dessus de la cible, le volume s'effondre, et les budgets sont gaspillés sur les mauvais clics.

GTM vs gtag direct : lequel choisir en 2026 ?

Google Tag Manager dans 90% des cas. GTM centralise tous vos tags (Ads, GA4, Meta, LinkedIn…) dans une interface unique, sans toucher au code à chaque ajout. Gtag direct ne se justifie que pour des sites ultra-simples à 1 seul tag, ou quand la politique IT interdit les scripts tiers. Le coût d'entrée GTM (30 min) est largement compensé dès la 2e modification.

Combien de temps pour implémenter Consent Mode v2 ?

Comptez 2 à 4 heures si vous avez déjà une CMP (Cookiebot, OneTrust, Axeptio) : activation du mode v2, mapping des signaux ad_storage, analytics_storage, ad_user_data, ad_personalization. Entre 1 et 2 jours si vous partez de zéro : sélection CMP, intégration, tests. L'implémentation est obligatoire depuis mars 2024 pour diffuser des annonces personnalisées en EEE.

Quand passer au server-side tracking ?

Passez en server-side quand vous avez plus de 50 000 conversions/mois, ou que votre taux de perte client-side dépasse 15% (adblockers, ITP Safari, bloqueurs mobiles). Le server-side améliore la précision de 10 à 25% et sécurise vos données first-party. Coût : 1 à 3 jours de setup + ~20€/mois d'hébergement Cloud Run ou équivalent. Sinon, GTM client-side + Enhanced Conversions suffisent.

Puis-je avoir Consent Mode v2 sans déployer gtag.js ?

Oui, mais avec des limitations à comprendre. Consent Mode v2 peut être implémenté en server-side via GTM Server, en envoyant les 4 flags (ad_storage, analytics_storage, ad_user_data, ad_personalization) directement à l'API Google Ads via Measurement Protocol ou Enhanced Conversions API. Cette approche est valide et conforme RGPD. Les limitations actuelles : le conversion modeling Google fonctionne mieux avec gtag.js standard car il agrège plus de signaux contextuels (page_view, scroll, engagement) ; en server-side pur, vous ne remontez que les events explicites. Sur les comptes que je migre, le server-side custom récupère 85-92% des conversions vs 95-98% avec gtag.js + Consent Mode v2. La différence est compensable si vous activez Enhanced Conversions for Web côté server-side et que vous remontez les paramètres user-provided complets.

Ready to optimize your campaigns?

Start a free audit in 2 minutes and discover the ROI potential of your accounts.

Start my free audit

Free audit — no credit card required

Keep reading