Brouillon auto

Guide GTM Pixel Meta tracking cross-domain

Suivi cross-domain avec le Pixel Meta : guide complet via Google Tag Manager

Le tracking cross-domain avec le Pixel Meta (Facebook) est souvent négligé, pourtant c’est un maillon critique de la chaîne de conversion. Dès que votre site fait appel à plusieurs domaines (landing page, tunnel d’achat, prestataire externe…), une rupture d’attribution peut survenir si vous ne transmettez pas correctement les cookies entre domaines.

Dans ce guide, vous allez apprendre comment mettre en place une solution simple, 100 % client-side, via Google Tag Manager, pour restaurer une attribution fiable sans serveur, API ou outil tiers. Vous y trouverez des explications claires, des scripts prêts à l’emploi, des variantes plus avancées et toutes les bonnes pratiques à connaître.

Pourquoi le tracking cross-domain est un vrai problème avec le Pixel Meta ?

Avant de rentrer dans la technique, il est important de comprendre pourquoi le problème existe. Contrairement à Google, Meta ne gère pas le suivi multi-domaine par défaut.

Formez-vous à Google Tag Manager !

Apprenez grâce à nos formations Google Tag Manager une compétence précieuse pour tout professionnel du web. Cet outil permet de simplifier la gestion des balises, de gagner du temps, d'améliorer la précision des données et de personnaliser le suivi des événements. En maîtrisant GTM, vous pouvez optimiser vos campagnes marketing, améliorer les performances de votre site et prendre des décisions basées sur des données fiables et précises.

Lorsqu’un utilisateur clique sur une publicité Facebook, Meta génère un identifiant de clic (le cookie _fbc). Ce cookie est créé uniquement sur le domaine de destination. Si la conversion a lieu sur un autre domaine, le cookie n’existe pas là-bas. Résultat : la conversion ne peut pas être associée à la publicité d’origine.

C’est un problème fréquent dès que le tunnel de conversion s’appuie sur :

  • Un sous-domaine différent
  • Un prestataire tiers (Shopify, WooCommerce, ClickFunnels…)
  • Une page de paiement externe

Sans action de votre part, le Pixel Meta ne peut pas relier les points.

Comment transférer le cookie _fbc entre deux domaines ?

Voici la première étape du processus : transmettre la valeur du cookie _fbc dans l’URL, afin de la récupérer sur le domaine suivant.

Sur votre premier domaine (par exemple la landing page), vous devez injecter ce script dans une balise Custom HTML, déclenchée sur toutes les pages :

<script>
(function(){
function getCookie(name){
var v = document.cookie.match('(^|;)\\s*' + name + '\\s*=\\s*([^;]+)');
return v ? v.pop() : '';
}
var fbc = getCookie('_fbc');
if (!fbc) return;

document.querySelectorAll('a[href*="checkout.maboutique.com"]').forEach(function(a){
var url = new URL(a.href);
url.searchParams.set('fbc', fbc);
a.href = url.toString();
});
})();
</script>

Ce script ajoute automatiquement le paramètre ?fbc=... aux liens qui pointent vers le domaine de conversion. Cela permet de transférer l’identifiant du clic Facebook à l’étape suivante.

Comment recréer le cookie _fbc sur le domaine de destination ?

Une fois que l’utilisateur arrive sur le second domaine avec le paramètre ?fbc=..., il faut recréer le cookie _fbc pour que le Pixel Meta puisse l’utiliser.

Sur le second domaine (checkout, conversion, paiement…), ajoutez ce script dans un tag Custom HTML, déclenché sur All Pages :

htmlCopyEdit<script>
(function(){
function setCookie(name, value, days){
var d = new Date;
d.setTime(d.getTime() + days * 864e5);
document.cookie = name + "=" + value + "; path=/; domain=" + location.hostname + "; expires=" + d.toUTCString();
}
var params = new URLSearchParams(window.location.search);
var fbc = params.get('fbc');
if (fbc) {
setCookie('_fbc', fbc, 30);
}
})();
</script>

Ce cookie sera ensuite lu automatiquement par le Pixel Meta si ce dernier est bien présent sur le domaine.

Faut-il installer le Pixel Meta sur tous les domaines ?

Beaucoup oublient un détail essentiel : le Pixel Meta doit être actif sur tous les domaines pour que la méthode fonctionne.

Il ne suffit pas de recréer le cookie _fbc — encore faut-il que le Pixel puisse le lire. Cela signifie que le Pixel Meta (avec le même identifiant) doit être installé sur :

  • La landing page
  • Le tunnel de conversion
  • La page de confirmation

Voici un exemple de balise HTML standard pour intégrer le pixel :

<script>
!function(f,b,e,v,n,t,s){
if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,'script',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('init', 'VOTRE_PIXEL_ID');
fbq('track', 'PageView');
</script>

Comment automatiser le suivi cross-domain sur tous les liens sortants ?

Dans certains cas, vous ne connaissez pas à l’avance tous les domaines de destination. Cette section vous explique comment généraliser le transfert du cookie _fbc vers tous les liens externes.

Voici une version dynamique du script précédent, à insérer dans un tag GTM Custom HTML (All Pages) :

<script>
(function(){
function getCookie(name){
var v = document.cookie.match('(^|;)\\s*' + name + '\\s*=\\s*([^;]+)');
return v ? v.pop() : '';
}
var fbc = getCookie('_fbc');
if (!fbc) return;

var currentHost = window.location.hostname;

document.querySelectorAll('a[href^="http"]').forEach(function(link){
try {
var url = new URL(link.href);
if (url.hostname === currentHost) return;
if (url.searchParams.has('fbc')) return;
url.searchParams.set('fbc', fbc);
link.href = url.toString();
} catch (e) {
console.warn('Lien ignoré', link.href);
}
});
})();
</script>

Ce script s’adapte automatiquement à tous les cas : SaaS multi-marques, CMS dynamique, tunnel réparti sur plusieurs prestataires.

Comment tester et valider le tracking cross-domain du Pixel Meta ?

Vous devez vous assurer que tout fonctionne avant de passer en production. Cette section détaille les outils et étapes de vérification.

Étapes de test

  1. Google Tag Manager – Mode Preview
    Testez que les balises se déclenchent correctement et modifient les liens sortants.
  2. Chrome DevTools > Application > Cookies
    Vérifiez que le cookie _fbc est bien recréé sur le second domaine.
  3. Meta Events Manager
    Utilisez ?fbp_debug=1 dans l’URL pour afficher les événements en temps réel.

Quelles règles RGPD s’appliquent au tracking cross-domain Pixel Meta ?

Ce type de suivi implique des cookies publicitaires, soumis au consentement utilisateur. Il est donc indispensable de respecter la réglementation.

Bonnes pratiques RGPD

  • Ne déclenchez les balises que si l’utilisateur a consenti au tracking marketing
  • Intégrez un CMP (Consent Management Platform) compatible avec TCF v2.0
  • Dans GTM, utilisez une variable de consentement pour conditionner vos balises

Bonnes pratiques pour un tracking cross-domain Pixel Meta fiable

Voici un rappel rapide des points essentiels pour garantir un tracking stable, efficace et conforme.

À faireÀ éviter
Installer le Pixel sur tous les domainesLaisser le consentement de côté
Tester dans différents navigateursSupprimer les paramètres fbc en redirect
Conserver la valeur _fbc sur 30 joursOublier les variantes de lien dynamique
Documenter le plan de taggageUtiliser un Pixel différent par domaine

Pour finir : Pourquoi cette méthode est aujourd’hui la meilleure option ?

Le tracking cross-domain avec le Pixel Meta est une problématique critique dès que votre tunnel de conversion dépasse un seul domaine.
La méthode présentée ici vous offre :

  • Une implémentation légère, 100 % côté client
  • Une compatibilité totale avec Google Tag Manager
  • Une meilleure précision dans vos données d’attribution
  • Une conformité possible avec le RGPD via une CMP

C’est aujourd’hui la solution la plus simple, la plus robuste et la plus rapide à déployer pour toutes les équipes marketing ou techniques.

Retour en haut
Formations Analytics