Créer des canaux personnalisés dans GA4 pour corriger votre attribution

Paid Search classé en Organic, LinkedIn Ads en Social Organic : les défauts d'attribution natifs de GA4 et comment les corriger via les Channel Groups personnalisés.

GA4 attribue par défaut vos sessions à des canaux qu’il définit lui-même : Organic Search, Paid Search, Organic Social, Paid Social, Email, Direct, Referral, etc. Le problème : ces règles par défaut produisent régulièrement des erreurs d’attribution. Des sessions google / cpc se retrouvent classées en Organic Search. Du LinkedIn payant atterrit dans Organic Social. Et le reporting devient menteur.

La solution est dans les Channel Groups personnalisés : on définit ses propres règles, on impose un ordre de priorité, et on stoppe les mauvais classements. Voici la procédure exacte.

L’essentiel
  • GA4 mélange souvent payant et organique sur Google et LinkedIn.
  • La correction passe par un Channel Group personnalisé dans Admin > Affichage de données.
  • L’ordre des règles est critique : GA4 évalue de haut en bas et s’arrête au premier match.
  • Sans UTM normalisés en amont, aucun Channel Group ne donnera de résultats fiables.

Pourquoi GA4 se trompe sur certains canaux

Le moteur d’attribution natif de GA4 regarde le couple source / medium puis applique des règles génériques. Quand la source est google et le medium cpc, il est censé classer en Paid Search. Mais sur certains comptes, les règles dérapent. Les causes les plus fréquentes :

  • UTM mal formés côté équipe média (utm_medium=paid au lieu de cpc)
  • Auto-tagging Google Ads désactivé sur certaines campagnes
  • Sources peu courantes que GA4 ne reconnaît pas (Bing Ads, RTB, partenaires d’affiliation)
  • Évolutions de la taxonomie GA4 que les setups historiques n’ont pas suivies

Résultat : entre 5 et 20 % du trafic peut être mal classé selon les comptes. Sur des décisions budgétaires, ça compte.

Étape 1 — Cadrer un mapping avant de toucher à GA4

Avant d’ouvrir Channel Groups, formaliser la grille de mapping. Un document partagé entre l’équipe média et l’analytics.

Ce que le document doit contenir

  • Vue d’ensemble : liste des canaux, priorité d’évaluation, description, exemples d’URLs typiques
  • Règles par canal : conditions sur source, medium, paramètres UTM ; opérateurs (égal, contient, regex) ; valeurs exactes
  • UTM standardisés : valeurs autorisées pour utm_source, utm_medium, utm_campaign, utm_content, utm_term
  • Guide d’implémentation : étapes de config GA4, responsable, calendrier, procédure de validation

Sans ce document, on patche des règles dans GA4 sans cohérence et on rejoue les mêmes erreurs six mois plus tard.

Étape 2 — Imposer un UTM Builder à l’équipe média

Le Channel Group ne peut classer correctement que si les UTM en entrée sont propres. Un UTM Builder partagé (Google Sheets typiquement) standardise les valeurs.

Champs à imposer

  • Base URL (page d’atterrissage)
  • Source du trafic (liste fermée : google, facebook, linkedin, newsletter, etc.)
  • Medium (liste fermée : cpc, ppc, paid, email, social, display, affiliate)
  • Campagne (format imposé, exemple 2026-Q2-launch-fr)
  • Term (mots-clés), Content (variante d’annonce)
  • URL finale générée auto

L’UTM Builder doit être la seule source d’URLs trackées. Toute URL générée hors Builder est susceptible de polluer le Channel Group.

Étape 3 — Créer le Channel Group dans GA4

Direction Admin (icône engrenage) → Affichage de données → Groupes de canaux → Créer un groupe de canaux. Donner un nom explicite (par exemple Channel Group corrigé 2026) et une description.

Le défaut : sessions google / cpc parfois classées en Organic Search.

  • Nom du canal : Paid Search
  • Conditions : Support matches regex^(cpc|ppc|paidsearch|paid)$
  • Optionnellement : ajouter ET Source matches regex^(google|bing|yahoo|duckduckgo)$ pour ne pas confondre avec du paid social

B) Corriger Paid Social

Le défaut : LinkedIn ou Meta payants classés en Organic Social.

  • Nom du canal : Paid Social
  • Conditions : Source matches regex^(facebook|instagram|linkedin|twitter|tiktok|pinterest)$
  • ET Support matches regex^(cpc|ppc|paid|paidsocial)$

C) Email

Souvent fragile car les sources email varient (newsletter interne, Mailchimp, ESP custom).

  • Nom du canal : Email
  • Conditions (avec OU entre les blocs) :
    • Support égal à email
    • Support contient mail
    • Source contient newsletter
    • Document URL contient utm_medium=email

D) Display

Trafic display Google ou autres réseaux.

  • Nom du canal : Display
  • Conditions : Support matches regex^(display|banner|cpm)$
  • OU Source matches regex^(googleads-display|criteo|adroll)$

E) Affiliates

Trafic d’affiliation, souvent éclaté en sources nombreuses.

  • Nom du canal : Affiliates
  • Conditions :
    • Source contient awin OU tradedoubler OU effiliation OU kwanko
    • OU Support égal à affiliate

F) Referral corrigé

Inutile de tout réécrire — GA4 gère le Referral correctement. À ajouter seulement les partenaires qui ont leur propre UTM (utm_source=partner).

Étape 4 — Définir l’ordre de priorité

C’est le point critique. GA4 évalue les règles de haut en bas et s’arrête au premier match. Si Paid Search est listé après Organic Search, une session google / cpc peut être classée en Organic si la règle Organic match avant.

Ordre recommandé :

  1. Paid Search
  2. Paid Social
  3. Email
  4. Display
  5. Affiliates
  6. Organic Social
  7. Referral (corrigé)
  8. Organic Search
  9. Direct

Les canaux payants en premier, les organiques après, le Direct toujours en dernier. C’est ce qui garantit que les sessions trackées correctement passent dans le bon bucket et que seules les sessions vraiment directes tombent en Direct.

Étape 5 — Valider avec DebugView puis attendre

Une fois le Channel Group enregistré, le valider avant de l’ériger en source de vérité.

Test immédiat avec DebugView

  • Activer DebugView dans GA4 (Admin → DebugView)
  • Créer des URLs test avec différentes combinaisons d’UTM (?utm_source=facebook&utm_medium=cpc&utm_campaign=test)
  • Naviguer vers ces URLs en mode debug (extension Chrome ou paramètre debug_mode=true)
  • Vérifier que chaque session apparaît dans le bon canal

Vérification des rapports (24-48h plus tard)

  • Acquisition → Acquisition utilisateurs : vérifier que la répartition entre canaux correspond aux attentes
  • Comparer avec les rapports source / medium pour cohérence
  • Comparer avec les volumes Ads, Meta Ads Manager, console email

Dépannage rapide

SymptômeCause probable
Trop peu de trafic dans un canalRègles trop restrictives, regex trop strict
Trop de trafic dans un canalRègle trop générique ou priorité trop haute
Attribution incorrecteOrdre de priorité mal réglé ou UTM en entrée non normalisés

Le cas particulier du server-side

Si vous êtes en setup server-side ou Measurement Protocol, le Channel Group natif ne suffira pas. Les hits arrivent sans contexte navigateur (pas de referrer, UTM manquants), et tout finit en Direct ou (not set). La solution est en amont : capturer les UTM côté client, les stocker dans un cookie first-party, et les renvoyer à GA4 via des dimensions custom. C’est exactement l’angle de l’article cookie d’attribution server-side. Le sujet est aussi traité dans l’article résoudre le (not set) dans GA4 côté diagnostic.

Au passage, ce travail s’inscrit dans une logique plus large d’attribution. Sur le choix du modèle au-dessus du Channel Group, voir les 6 modèles d’attribution marketing. Et si l’audit complet de votre attribution est l’objectif, c’est ce que couvre la méthodologie d’audit tracking que j’applique.

En synthèse

Un Channel Group personnalisé prend 1 à 2 heures à monter sur un compte standard. Il corrige les erreurs natives de GA4, surtout pour le paid Search/Social, et permet de reprendre la main sur la lecture des canaux. Mais il vaut zéro si les UTM en amont ne sont pas standardisés — d’où l’importance du mapping et de l’UTM Builder partagé en amont.

Sources

Besoin d'aide sur ce sujet ?

Je peux vous accompagner sur la mise en place ou l'optimisation de votre tracking.

Sans surprise : forfaits affichés en clair, devis validé avant kick-off, pas d'avenant.