Tracking offline Google Ads : pourquoi ça ne remonte pas

Cyril Vescan
Tracking offline Google Ads : pourquoi ça ne remonte pas

Votre client a signé un chantier à 4 000 €. Il vous a rappelé pour vous dire merci. Dans Google Ads, la campagne qui a généré ce lead affiche toujours zéro conversion.

Quelques semaines passent. L’algorithme continue à optimiser — mais vers quoi ? Vers des formulaires soumis, pas vers des ventes réelles. Les budgets partent sur les mauvais clics. Et personne ne s’en rend compte, parce que les chiffres dans le tableau de bord ont l’air normaux.

C’est le problème n°1 des agences qui font du tracking offline : le setup casse en silence, et on ne le découvre souvent qu’en cherchant pourquoi les performances ont baissé.

Voici les 3 causes les plus courantes et comment les vérifier maintenant.


Pourquoi ça casse : les 3 causes principales

1. Le GCLID n’est pas capturé au bon moment

Le GCLID (identifiant Google) est le code unique que Google Ads ajoute automatiquement à l’URL quand un internaute clique sur votre annonce. Par exemple : votre-site.fr/contact?gclid=EAIaIQob.... C’est ce code qui fait le lien entre un clic publicitaire et une vente.

Pour qu’il soit exploitable, votre formulaire de contact doit capturer ce code dans un champ caché au moment où l’internaute soumet le formulaire.

Le problème survient souvent de deux façons :

Personne n’a configuré le champ caché. Le formulaire reçoit des soumissions, mais la valeur GCLID n’est jamais stockée nulle part. Le lien avec Google Ads est définitivement perdu.

Des UTMs manuels sont déjà dans l’URL. Les UTMs sont des paramètres de suivi que les équipes marketing ajoutent manuellement dans les liens de leurs campagnes (utm_source=google&utm_medium=cpc…). Quand l’auto-tagging Google Ads est actif en même temps, certaines configurations créent un conflit : le formulaire capture les UTMs mais rate le GCLID.

La vérification rapide : ouvrez les paramètres de votre compte Google Ads → Paramètres du compte → Marquage automatique. S’il est désactivé, aucun GCLID ne sera jamais ajouté à vos URLs.


2. Les bloqueurs de pubs et Safari suppriment le tracking

Environ 20 % des utilisateurs naviguent avec un bloqueur de publicités (uBlock Origin, Ghostery, Brave) ou depuis Safari en mode privé. Ces outils bloquent les scripts de tracking Google avant même qu’ils s’exécutent.

Résultat : le formulaire est soumis, le lead arrive dans votre CRM, mais sans aucun GCLID associé.

Safari pose un problème supplémentaire avec son système ITP (Intelligent Tracking Prevention — littéralement “prévention du suivi intelligent”). Ce mécanisme réduit la durée de vie des cookies déposés par des scripts tiers à 24 heures. Un prospect qui clique sur votre annonce un lundi et remplit le formulaire le mercredi depuis Safari ? Le GCLID est perdu, même si tout le reste est correctement configuré.

Sur les comptes que nous suivons chez Sevya, entre 15 % et 30 % des soumissions arrivent sans GCLID capturé quand le tracking repose uniquement sur des scripts côté navigateur. Ce chiffre monte dans les secteurs où Safari est dominant (mobile Apple, utilisateurs premium).


3. Le GCLID est capturé mais perdu dans le CRM

C’est la cause la plus fréquente et la moins visible.

Le formulaire capture bien le GCLID. Mais quand la soumission entre dans le CRM — ou dans la boîte mail du client — personne n’a créé de champ pour stocker cette valeur. Le code arrive dans les données du formulaire, et disparaît dans le vide.

Trois semaines plus tard, le client marque le lead “Gagné”. Vous voulez remonter la conversion dans Google Ads. L’identifiant original est introuvable. La conversion ne peut pas être créée.


Le diagnostic en 5 minutes

Trois vérifications concrètes, dans l’ordre.

Vérification 1 — L’auto-tagging est-il activé ?

Connectez-vous à Google Ads → Paramètres du compte (icône d’engrenage en haut à droite) → Marquage automatique. L’option doit être activée. Si elle est désactivée, Google n’ajoute aucun GCLID aux URLs de vos annonces. Tout le reste est inutile.

Vérification 2 — Le GCLID apparaît-il bien dans l’URL après un clic ?

Ouvrez une fenêtre de navigation privée. Cherchez votre propre annonce sur Google et cliquez dessus. Regardez l’URL de la page d’atterrissage : vous devez voir ?gclid= suivi d’une longue chaîne de caractères. Si ce paramètre est absent, l’auto-tagging ne fonctionne pas correctement.

Vérification 3 — Le champ GCLID existe-t-il dans votre CRM ?

Ouvrez un lead récent venu de Google Ads. Cherchez un champ nommé “GCLID”, “Source ID”, ou équivalent. S’il est vide ou absent, votre setup ne stocke pas les identifiants. Pour aller plus vite : ouvrez votre formulaire de contact en mode édition et vérifiez s’il contient un champ caché mappé sur le paramètre gclid.


Comment corriger chaque problème

GCLID absent à cause d’un conflit UTM

Dans Google Ads, activez l’auto-tagging. Ne désactivez l’option “Permettre aux marquages manuels de remplacer l’auto-tagging” que si vous avez un outil tiers qui en a absolument besoin. Dans la majorité des cas, l’auto-tagging seul suffit et s’ajoute proprement aux UTMs existants.

Bloqueurs et Safari ITP

Solution court terme : stockez le GCLID à la fois dans un cookie ET dans le localStorage du navigateur. Si Safari supprime le cookie au bout de 24 heures, le localStorage prend le relais pour la durée de la session.

Solution long terme : passez au tracking server-side. Le GCLID est transmis depuis votre serveur directement à l’API Google Ads, sans dépendre du navigateur du prospect. C’est la seule solution qui résiste aux bloqueurs. Pour le setup complet, voir notre guide Import de conversions offline dans Google Ads.

Champ GCLID absent du CRM

Créez un champ texte nommé gclid dans votre CRM (HubSpot, Pipedrive, Airtable — n’importe lequel). Mappez ce champ au champ caché de votre formulaire. Ensuite, vérifiez les 20 derniers leads entrants : combien ont une valeur dans ce champ ? Si moins de 8 sur 10 ont une valeur, le problème est en amont (causes 1 ou 2).


Setup bricolé vs infrastructure native

La plupart des agences arrivent au même point par le bricolage : un Zap qui écoute un changement de statut dans le CRM, un Google Sheet intermédiaire, et une importation manuelle dans Google Ads une fois par semaine.

Ça fonctionne. Jusqu’au jour où une étape casse — et personne ne sait depuis combien de temps.

CritèreSetup Zapier + SheetsSevya
Capture du GCLIDDépend du formulaire, souvent manquantCapture native à la soumission
Résistance aux adblockersAucune (scripts côté navigateur)Server-side, indépendant du navigateur
Délai d’import vers Google Ads3 à 7 jours (manuel ou Zap hebdo)Quelques minutes (déclenché au statut “Gagné”)
Taux de correspondanceNon suiviVisible en temps réel dans le dashboard
Alerte si ça casseAucune — découverte après des semainesAlerte immédiate sur les leads sans GCLID
Configuration CRMÀ faire manuellement pour chaque clientIntégré par défaut

La différence n’est pas que technique. Elle est opérationnelle : avec un setup bricolé, le tracking peut être cassé depuis 3 semaines sans que vous le sachiez. Ce sont 3 semaines de budget optimisé vers rien.


Ce que vous pouvez faire maintenant

Faites les trois vérifications ci-dessus avant la fin de la journée. Dans la majorité des cas, vous trouverez au moins un point de rupture.

Réparer la capture du GCLID et créer le champ dans le CRM prend rarement plus d’une demi-journée. L’effet sur le Smart Bidding met 2 à 4 semaines à se voir — mais c’est le type de correctif qui transforme une campagne qui “tourne” en campagne qui optimise vraiment vers des ventes.

Si vous voulez un setup qui fait ça par défaut, sans configuration manuelle pour chaque nouveau client, Sevya est construit pour ça.