Même les métriques publicitaires les plus fondamentales — impressions, clics, conversions — sont définies différemment par chaque plateforme. Les modèles cross-plateformes qui traitent ces métriques comme équivalentes sans documentation produisent des comparaisons trompeuses.
Décalage de la hiérarchie des campagnes
Avant même de pouvoir comparer les métriques, il faut mapper les structures de campagnes sur un schéma commun. Chaque plateforme organise différemment sa hiérarchie publicitaire :
| Niveau | Google Ads | Meta Ads | LinkedIn Ads |
|---|---|---|---|
| Haut | Campaign | Campaign | Campaign Group |
| Milieu | Ad Group | Ad Set | Campaign |
| Bas | Ad | Ad | Creative |
LinkedIn inverse tout : ce que LinkedIn appelle une « Campaign » correspond à ce que Google et Meta appellent un « Ad Group ». Ce que LinkedIn appelle un « Campaign Group » correspond à ce que tout le monde appelle une « Campaign ». En bas de la hiérarchie, LinkedIn utilise « Creative » là où Google et Meta utilisent « Ad ».
Ce n’est pas qu’un inconvénient de nommage mineur. Tout modèle cross-plateforme doit mapper ces hiérarchies sur un schéma commun avant qu’un seul UNION ALL puisse fonctionner. Dans la couche intermédiaire, le « Campaign Group » de LinkedIn est renommé en « Campaign » et la « Campaign » de LinkedIn est renommée en « Ad Group ». Sans ce remapping, vous comparerez des campagnes Google avec des groupes d’annonces LinkedIn en vous demandant pourquoi les chiffres semblent étranges.
Comptage des impressions
« Impressions » semble un concept simple — combien de fois l’annonce a-t-elle été affichée ? Mais chaque plateforme applique des standards différents :
LinkedIn compte une impression quand 50 % des pixels de l’annonce sont visibles pendant au moins 1 seconde. C’est le standard de visibilité IAB. Une annonce qui se charge sous la ligne de flottaison et n’est jamais scrollée ne compte pas.
Google compte une impression quand l’annonce est servie, qu’elle ait été vue ou non par l’utilisateur. Une annonce de recherche apparaissant en page 2 de résultats que l’utilisateur ne scrolle jamais s’enregistre quand même comme impression.
Meta compte une impression quand l’annonce entre dans le viewport, mais sans le seuil d’une seconde de LinkedIn.
10 000 impressions LinkedIn représentent un standard plus strict de visibilité que 10 000 impressions Google, mais un rapport unifié les traite comme équivalentes. Il n’est pas possible d’appliquer rétroactivement le standard de visibilité de LinkedIn aux données Google ; la meilleure approche est de documenter la différence et de la communiquer aux parties prenantes.
Définitions des clics
Les clics ont le même problème de comparabilité. LinkedIn compte les actions sociales (likes, partages, commentaires) comme des clics par défaut. Google et Meta ne le font pas — leurs métriques de clics ne comptent que les clics qui naviguent l’utilisateur vers une destination.
Si vous comparez le CTR (taux de clic) entre plateformes sans ajustement, LinkedIn semblera avoir un taux d’engagement plus élevé qu’il ne l’est réellement par rapport aux autres. La colonne « clics » de votre modèle unifié contient des éléments structurellement différents selon la plateforme qui a produit la ligne.
Pour LinkedIn, vous pouvez demander les clicks excluant les actions sociales via l’API (en utilisant externalWebsiteClicks ou landingPageClicks au lieu des clicks totaux). Si votre outil d’extraction le supporte, configurez-le pour utiliser la métrique de clic plus étroite pour une meilleure comparabilité cross-plateforme. Sinon, documentez la différence et signalez-la dans votre modèle.
Fenêtres d’attribution
Les chiffres de conversion de chaque plateforme reflètent une période de lookback différente :
| Plateforme | Fenêtre clic par défaut | Fenêtre vue par défaut | Notes |
|---|---|---|---|
| Google Ads | 30 jours | Aucune (search) | Fenêtre clic la plus longue |
| Meta | 7 jours | 1 jour | Réduit post-iOS 14 |
| 90 jours | — | Fenêtre extrêmement longue |
Une « conversion » Google Ads attribue des clics jusqu’à 30 jours en arrière. Une « conversion » Meta ne compte que les clics des 7 derniers jours. La fenêtre de 90 jours de LinkedIn signifie qu’elle revendique le crédit pour des achats effectués trois mois après le clic publicitaire.
Si les trois plateformes revendiquent le crédit pour le même achat, le total dépassera les revenus réels. Chaque plateforme raconte sa propre version de la vérité, et votre entrepôt est le seul endroit où vous pouvez voir que les chiffres ne s’additionnent pas. C’est le problème fondamental de biais d’attribution qui rend les métriques globales plus fiables que les métriques spécifiques à chaque plateforme.
Temps de conversion vs. temps d’impression
Le changement d’attribution Meta de juin 2025 a introduit une autre couche de complexité. Les événements on-Meta (leads générés sur des formulaires Facebook, par exemple) sont désormais attribués au moment de l’impression. Les événements off-Meta (achats sur votre site) sont attribués au moment de la conversion. Cela signifie qu’un seul rapport de campagne Meta mélange deux méthodologies d’attribution temporelle différentes dans le même jeu de données.
Pour vos modèles intermédiaires, cela signifie que les conversions Meta ne peuvent pas être comparées proprement aux conversions Google jour par jour. Une conversion apparaissant le « mardi » dans les données Meta peut signifier « l’impression s’est produite mardi » ou « la conversion s’est produite mardi », selon l’endroit où s’est produit l’événement de conversion.
Pré-agrégation des fuseaux horaires
Chaque plateforme pré-agrège les totaux journaliers dans son propre fuseau horaire (typiquement le fuseau horaire du compte publicitaire). Votre entrepôt stocke probablement tout en UTC. Une campagne qui dépense 100 $ entre 22h et 2h dans le fuseau horaire du compte publicitaire affichera cette dépense répartie sur deux jours UTC différents.
Le package dbt_ad_reporting de Fivetran documente explicitement ce défi dans son DECISIONLOG. La recommandation : accepter de petits écarts liés aux fuseaux horaires (1 à 3 %) comme normaux plutôt que de chercher une réconciliation exacte. Si vos totaux de dépenses cross-plateformes diffèrent de plus de 3 % de la somme des interfaces des plateformes individuelles, le problème est probablement un bug de pipeline, et non un problème de fuseau horaire.
Rendre la divergence visible
Un pattern pratique : ajouter un modèle de documentation metric_notes ou une colonne qui enregistre, pour chaque plateforme, ce que signifie « impressions », ce qu’inclut « clics » et quels événements de conversion sont comptabilisés. Mettre la définition dans la description du modèle dbt plutôt que dans un wiki séparé la rend accessible quand les parties prenantes demandent pourquoi les chiffres diffèrent.
Les cinq métriques comparables entre plateformes — clics, impressions, dépenses, conversions et valeur des conversions — sont les meilleures approximations disponibles, pas des équivalents exacts, et doivent être documentées comme telles.