Le constat en 60 secondes
Le trafic IA vers les sites retail US a bondi de 393% sur un an en Q1 2026 selon Adobe Analytics. En mars 2026, ce trafic IA a converti 42% mieux que le trafic non-IA, passé 48% de temps en plus sur le site, et généré 37% de revenu par visite en plus. Pourtant, quand vous ouvrez Google Analytics 4, vous voyez rarement plus de 0,5% de trafic étiqueté “ChatGPT” ou “Perplexity”. Le chiffre est faux.
Selon le rapport State of AI Traffic 2026 de Loamly (446 405 visites analysées), 70,6% des visites référées par une IA arrivent sans referrer HTTP et GA4 les classe en “Direct / None”. Loamly infère que le vrai volume de trafic IA pourrait être 2 à 3 fois supérieur à ce que reportent les outils standards. Vos décisions d’investissement marketing reposent sur un angle mort.
Cet article explique pourquoi GA4 vous ment, comment mesurer le vrai trafic IA côté serveur, et donne les snippets regex exacts à déployer demain matin.
Pourquoi GA4 vous ment (les 4 trous noirs)
1. Le referrer disparaît dans 70,6% des cas
Le web moderne casse la chaîne du referrer HTTP sur quatre scénarios majeurs :
- Apps natives mobiles : l’app iOS de ChatGPT, l’app Claude, l’app Perplexity ouvrent les liens dans un webview qui sandboxe les clics sortants et ne transmet pas le document referrer (Parcel Perform, 9 avril 2026). Mesure concrete chez Retailgentic (7 avril 2026) sur l’app iOS Gemini : seules 5 visites sur 56 sont identifiees comme referrals IA par GA4, soit moins de 9% (Retailgentic DACT report).
- ChatGPT Atlas (le navigateur OpenAI lance le 21 octobre 2025) : strippe le referrer cote client via une sandbox interne. Tout le trafic Atlas atterrit en “Direct”.
- Referrer-Policy cote IA : la plupart des interfaces LLM appliquent
strict-originouno-referrersur leurs liens sortants, ce qui masque le chemin exact. - Copier-coller d’URL : quand un utilisateur copie une URL depuis une reponse ChatGPT et la colle dans un nouvel onglet, il n’y a tout simplement plus de referrer.
2. GA4 n’a pas de catégorie “AI Assistant” par défaut
Au 18 avril 2026, GA4 ne reconnaît toujours pas chatgpt.com, perplexity.ai ou claude.ai comme sources distinctes. Par défaut, ces referrers (quand ils passent) tombent dans le groupe Referral générique, mélangés à n’importe quel autre site. Sans configuration manuelle, vous n’avez aucune visibilité par canal IA.
3. Consent Mode v2 plafonne la mesure pour une part significative
Depuis mars 2024 dans l’EEE (obligatoire DMA), les sites européens doivent gérer le consentement RGPD via un CMP. Le blocage des cookies analytics vient du CMP, et Consent Mode v2 sert au contraire à modéliser une partie des conversions perdues. Selon les implémentations, 20 à 50% des sessions restent partiellement ou totalement non mesurées sur les sites e-commerce européens, en mode Basic Mode sans modélisation. Combiné à l’absence de referrer IA, une partie du trafic IA est donc doublement invisible.
4. Les revenus IA sont sous-reportés
GA4 sous-estime typiquement les revenus e-commerce de 20 à 30% par rapport aux backends Shopify ou Stripe (consensus issu de multiples audits sectoriels 2025-2026). L’écart est encore plus marqué sur les parcours IA : le visiteur arrive en “Direct” (referrer perdu), convertit, et la conversion est attribuée à Direct ou à Google selon le last-click. Résultat, vous sous-investissez en GEO parce que le ROI apparent est faible, alors que le ROI réel est très bon (+37% de RPV vs non-IA selon Adobe, mars 2026).
Les 3 sources du vrai trafic IA
Avant de mesurer, il faut distinguer trois populations très différentes qui se cachent derrière “trafic IA” :
A. Les crawlers d’entraînement
Ils visitent votre site pour alimenter les datasets d’entraînement des LLM. Ils ne génèrent aucune vente directe, mais conditionnent votre présence dans les réponses futures. Principaux bots en avril 2026 :
| Bot | Propriétaire | Rôle | Respecte robots.txt |
|---|---|---|---|
GPTBot | OpenAI | Entraînement des modèles GPT | Oui |
ClaudeBot | Anthropic | Entraînement Claude | Oui |
CCBot | Common Crawl | Dataset public utilisé par la plupart des LLM | Oui |
Google-Extended | Opt-out pour Gemini et AI Overviews (token robots.txt seulement, pas d’UA distinct) | Oui | |
Bytespider | ByteDance | Crawler TikTok AI | Inconsistant (blocage serveur recommande) |
Applebot-Extended | Apple | Opt-out Apple Intelligence | Oui |
Meta-ExternalAgent | Meta | Meta AI | Oui |
Source : documentation OpenAI, Anthropic, Google.
B. Les fetchers live (user-triggered)
Ce sont les bots qui vont chercher votre page en temps réel pour répondre à la question d’un utilisateur. Ce trafic est le signal le plus précieux : il indique que l’IA a jugé votre page pertinente pour une requête précise.
| Bot | Propriétaire | Déclencheur |
|---|---|---|
OAI-SearchBot | OpenAI | ChatGPT Search |
ChatGPT-User | OpenAI | Browse ou action utilisateur dans ChatGPT |
Claude-User | Anthropic | Action utilisateur dans Claude.ai |
Claude-SearchBot | Anthropic | Indexation pour réponses Claude |
PerplexityBot | Perplexity | Discovery et indexation |
Perplexity-User | Perplexity | Action utilisateur Perplexity (ignore robots.txt) |
Attention particulière sur Perplexity. Le pattern de crawlers furtifs Perplexity (user-agents Chrome generiques, rotation IPs/ASNs pour contourner robots.txt) reste actif au Q1 2026. Cloudflare l’a confirme dans son blog du 29 janvier 2026, et l’analyse independante DataDome AI Traffic Report du 16 mars 2026 a mesure que PerplexityBot affiche le plus haut taux d’usurpation d’identite parmi les crawlers IA en fevrier 2026 (2,4% des requetes frauduleuses analysees). Perplexity reste a ce jour hors de la liste des verified bots de Cloudflare. Le vrai volume Perplexity dans vos logs est donc superieur a ce que PerplexityBot indique. A noter, la doc Perplexity et l’analyse 51Degrees du 3 mars 2026 distinguent PerplexityBot (qui respecte robots.txt) de Perplexity-User (qui l’ignore par design quand un utilisateur declenche une fetch).
C. Les humains référés depuis une IA
C’est la catégorie qui convertit. Un utilisateur pose une question à une IA, clique sur un lien dans la réponse, atterrit sur votre site. On le mesure par le referrer (quand il est transmis) et par le domaine source :
| Domaine referrer | Plateforme | Fiabilité du referrer |
|---|---|---|
chatgpt.com | ChatGPT web | Bonne |
chat.openai.com | ChatGPT legacy (redirige) | Bonne |
perplexity.ai, www.perplexity.ai | Perplexity web | Bonne |
gemini.google.com | Gemini web | Bonne |
claude.ai | Claude web | Variable (souvent perdu en app) |
copilot.microsoft.com | Microsoft Copilot | Bonne |
| Apps natives (iOS, Android) | Toutes plateformes | Aucune (referrer perdu) |
| ChatGPT Atlas | Navigateur OpenAI | Aucune (strippé) |
| Perplexity Comet | Navigateur Perplexity | Bonne (référent préservé) |
Le cas Google AI Overviews
Particularité importante : Google AIO n’envoie pas de referrer distinctif. Quand un utilisateur clique sur une source dans une AI Overview, le referrer est google.com standard, identique à un clic organique classique. Il n’existe aucun paramètre permettant de distinguer un clic AIO d’un clic SERP bleu au 18 avril 2026. C’est le principal trou noir de la mesure GEO actuelle.
La méthode serveur en 4 étapes
Étape 1 : logger tous les user-agents
Sur Nginx, ajoutez ce log_format dédié IA :
log_format ai_traffic
'$remote_addr $time_iso8601 $status '
'"$request" "$http_referer" "$http_user_agent"';
server {
access_log /var/log/nginx/access-ai.log ai_traffic;
# ...
}
Sur Express (Node.js), un middleware minimal :
app.use((req, res, next) => {
const ua = req.headers['user-agent'] || '';
const ref = req.headers['referer'] || '';
const ip = req.headers['x-forwarded-for'] || req.ip;
if (isAiSignal(ua, ref)) {
logAiHit({ ua, ref, ip, path: req.path, ts: Date.now() });
}
next();
});
Étape 2 : la regex de classification
Cette fonction classe chaque hit dans une des 3 cohortes : training_bot, live_fetcher, ou human_ai_referral.
const TRAINING_BOTS = /\b(GPTBot|ClaudeBot|CCBot|Bytespider|Applebot-Extended|Meta-ExternalAgent|Google-Extended|DuckAssistBot|cohere-training-data-crawler|cohere-ai)\b/i;
const LIVE_FETCHERS = /\b(OAI-SearchBot|ChatGPT-User|PerplexityBot|Perplexity-User|Claude-User|Claude-SearchBot|Google-CloudVertexBot|Amazonbot|MistralAI-User)\b/i;
const AI_REFERRERS = /^https?:\/\/([a-z0-9-]+\.)?(chatgpt\.com|chat\.openai\.com|perplexity\.ai|gemini\.google\.com|bard\.google\.com|claude\.ai|copilot\.microsoft\.com|you\.com|poe\.com)/i;
function classifyHit(userAgent, referer) {
if (TRAINING_BOTS.test(userAgent)) return 'training_bot';
if (LIVE_FETCHERS.test(userAgent)) return 'live_fetcher';
if (AI_REFERRERS.test(referer)) return 'human_ai_referral';
return null;
}
Trois pièges à éviter :
- Ordre des tests : tester d’abord
training_bot, puislive_fetcher, puishuman_ai_referral. UnChatGPT-Userpeut avoir un referrerchatgpt.com, il faut le compter une seule fois dans la bonne cohorte. - Word boundary
\b: sans word boundary,ClaudematcheraitClaudeBotetClaude-Useren même temps dans des classifications différentes. - Flag
i: certains bots varient la casse selon les versions.gptbotexiste aussi en minuscules.
Étape 3 : stocker et agréger
Deux collections distinctes suffisent. Une table (ou collection MongoDB) pour les requêtes brutes, une table agrégée quotidienne pour les dashboards :
// Collection: ai_hits_daily
{
date: '2026-04-19',
cohort: 'human_ai_referral',
source: 'chatgpt.com', // ou 'GPTBot' pour les bots
path: '/products/foo',
hits: 42,
uniqueIps: 38
}
Indexez sur (date, cohort, source) pour des requêtes rapides. Purgez les IPs après 30 jours pour rester conforme RGPD.
Étape 4 : croiser avec GA4
Créez dans GA4 un Custom Channel Group avec un canal “AI Trafic” (ou “AI Assistant”) basé sur cette regex de source :
chatgpt\.com|chat\.openai\.com|perplexity\.ai|www\.perplexity\.ai|gemini\.google\.com|claude\.ai|copilot\.microsoft\.com|you\.com
Chemin exact dans GA4 (avril 2026) : Admin > Affichage des données > Groupes de canaux > Créer un groupe de canaux. Pour chaque canal à inclure : Ajouter un canal > Source > correspond au regex puis coller la regex ci-dessus.
Astuce puissante : une fois le groupe créé, cliquez sur le crayon à côté de “Groupe de canaux principal” pour définir votre groupe personnalisé comme principal. GA4 l’utilisera alors automatiquement dans tous les rapports d’acquisition par défaut, sans avoir à changer la dimension à chaque fois.
Limites importantes :
- Propriétés standard (gratuit) : 2 groupes personnalisés maximum, jusqu’à 50 canaux par groupe
- Propriétés GA4 360 : 5 groupes personnalisés, 50 canaux par groupe
- Non disponible dans le rapport “Parcours d’événements clés” (Key events paths)
Chronologie après création du groupe
| Moment | Ce qui se passe | Ce que vous voyez |
|---|---|---|
| T+0 (juste après clic “Enregistrer”) | GA4 enregistre la règle côté serveur, la propagation démarre | Rien dans les rapports d’acquisition. Le dropdown “Groupe de canaux par défaut de la session” ne montre pas encore votre nouveau groupe |
| T+5 à 10 min | La règle commence à être appliquée sur le trafic entrant en temps réel | Votre groupe peut apparaître dans Temps réel > Présentation mais pas encore dans les rapports standard |
| T+24 à 48 h | Propagation complète. GA4 a recalculé l’historique | Votre groupe apparaît dans le dropdown des rapports d’acquisition. Si vous l’avez défini comme “Groupe de canaux principal”, il remplace automatiquement le default dans tous les rapports |
| T+48 h et plus | Application rétroactive stable | Les sessions des 13 derniers mois sont reclassifiées automatiquement selon votre nouveau groupe. Pas besoin d’attendre du nouveau trafic pour avoir un historique comparable |
Pendant l’attente, deux vérifications utiles à faire tout de suite
1. Tester votre regex sur le trafic déjà existant
Allez dans Rapports > Acquisition > Acquisition de trafic, dans le dropdown des dimensions sélectionnez Source/Support de la session. Cherchez dans le tableau les lignes chatgpt.com / referral, perplexity.ai / referral, gemini.google.com / referral, claude.ai / referral, copilot.microsoft.com / referral.
- Si ces sources apparaissent avec du volume → votre regex va bien agréger ce trafic dans 24-48 h
- Si vous ne voyez aucune de ces sources → soit vous n’avez pas encore de trafic IA référé, soit (plus probable) il arrive massivement sans referrer et tombe en Direct. C’est exactement le blind rate qu’on est en train de mesurer
2. Préparer la comparaison avec vos logs serveur
Pendant que GA4 propage, récupérez dans vos logs (Cloudflare Analytics, Railway logs, Nginx access logs) le volume des 48 dernières heures pour :
- Sessions humaines référées par une IA (user-agent navigateur standard + referrer matching la regex
chatgpt.com|perplexity.ai|gemini.google.com|claude.ai|copilot.microsoft.com) - Crawlers IA (user-agent matching
GPTBot|ClaudeBot|PerplexityBot|Google-Extended|CCBot|ChatGPT-User)
À J+2, vous comparez : logs serveur humains référés IA vs GA4 “AI Trafic”. Le gap = votre taux de cécité GA4. Il est typiquement de 60% à 75% sur les sites e-commerce avec un fort trafic mobile et app-native, selon le State of AI Traffic 2026.
Résultat attendu
Vous aurez deux mesures à confronter : ce que GA4 voit (trafic humain référé avec referrer préservé) et ce que vos logs voient (total réel incluant les referrer perdus). Le gap entre les deux chiffres est votre taux de cécité GA4. Sur les sites e-commerce avec un fort trafic IA non filtré et un trafic apps natives important, ce gap dépasse fréquemment 60%.
Le trick UTM ChatGPT
Depuis avril 2025 sur les citations principales, puis généralisé en juin 2025 aux liens secondaires (section More), ChatGPT ajoute utm_source=chatgpt.com sur les liens qu’il cite dans ses réponses. C’est la seule IA grand public qui le fait systématiquement. Les autres (Perplexity, Gemini, Claude, Copilot) n’ajoutent rien.
Conséquences pratiques :
- Vous pouvez filtrer
utm_source=chatgpt.comdans GA4 pour isoler une partie du trafic ChatGPT même quand le referrer est perdu. Cette source survit au copier-coller d’URL et aux apps natives iOS. - Si vous placez vos propres UTM dans les URLs canoniques déclarées via sitemap ou llms.txt, il y a de bonnes chances qu’une IA les recopie telles quelles quand elle cite votre page. Exemple : déclarer vos produits avec un
utm_source=ai_commerce&utm_medium=discoverydans vos flux structurés crée un signal trackable.
Attention à ne pas abuser de cette technique. Les UTM internes doivent rester absents des URLs canoniques pour éviter la fragmentation d’indexation. Le bon endroit est le flux produit, le sitemap spécialisé, ou le llms.txt.
Matrice récapitulative des méthodes de mesure
Voici ce que chaque méthode voit réellement :
| Méthode | Crawlers training | Fetchers live | Humains IA | Revenus attribués |
|---|---|---|---|---|
| GA4 natif (sans config) | Non | Non | Partiel (referrer passe seulement) | Sous-estime, gap important sur sites IA |
| GA4 + Custom Channel regex | Non | Non | Partiel | Sous-estime moderement |
| Logs serveur user-agent | Oui | Oui | Non | N/A |
| Logs serveur UA plus referrer | Oui | Oui | Oui | N/A |
| Cloudflare AI Crawl Control | Oui | Oui | Partiel (analytics referrer) | N/A |
| Backend attribution (Shopify, Stripe) | Non | Non | Oui (via session) | Fiable |
| Croisement logs plus backend | Oui | Oui | Oui | Fiable |
La seule configuration fiable est la dernière : logs serveur pour la mesure du volume + backend e-commerce pour l’attribution revenu + session ID partagé entre les deux pour joindre les deux vues.
Cloudflare AI Crawl Control
Si votre site est derrière Cloudflare, activez AI Crawl Control (ex-AI Audit, renommé en août 2025 lors de sa mise en disponibilité générale). Le dashboard donne par défaut un breakdown par crawler : requêtes, octets transférés, paths populaires, et depuis la mise à jour du 9 février 2026, un pattern-based grouping et des analytics referral/data transfer. Documentation : developers.cloudflare.com/ai-crawl-control.
Attention, certaines configurations Cloudflare activent un AI Scrapers Block qui peut surcharger votre robots.txt et bloquer des crawlers IA malgré un Allow: / explicite. Pour vérifier : Security > Bots. Si le bloc est actif et que vous voulez apparaître dans les réponses IA, désactivez-le ou ajustez la configuration.
Ce que ça change pour vos décisions
Quand vous aurez vos vrais chiffres, vous constaterez probablement trois choses :
1. Le volume IA est 2 à 3x supérieur à ce que vous croyiez. Même à 3 à 5% du trafic total, vous êtes déjà sur un canal qui convertit 42% mieux et génère 37% de revenu par visite en plus (Adobe, mars 2026). Le ROI est supérieur au social paid sur la plupart des catalogues e-commerce.
2. ChatGPT domine le mix référent humain mais pas le mix crawl. Selon les données Statcounter (mars 2026), la distribution des référents humains depuis les IA est : ChatGPT 78,16%, Gemini 8,65%, Perplexity 7,07%, Copilot 3,19%, Claude 2,91%. Mais en volume de crawl, GPTBot, ClaudeBot et Bytespider dominent alors qu’ils ne convertissent rien directement. Ne confondez pas les deux signaux.
3. Google AIO reste le trou noir. Selon une étude Search Engine Land (Tom Wells, mars 2026), 83% des produits du carrousel ChatGPT correspondent aux 40 premiers résultats organiques Google Shopping (chevauchement de titres, similarité ≥ 0,8). Le signal Google AIO est donc critique et vous ne pouvez pas le mesurer au clic. La seule façon de le tracker indirectement est de mesurer l’évolution de votre trafic “Google organic” sur les pages produit, et de comparer aux impressions Google Search Console filtrées sur les requêtes qui déclenchent une AIO.
Ce qu’il faut mettre en place cette semaine
Une checklist minimale pour sortir de l’angle mort :
- Déployer le
log_format ai_trafficsur Nginx ou le middleware Express équivalent - Ajouter la regex de classification en 3 cohortes dans une fonction
classifyHit() - Créer une table ou collection
ai_hits_dailyagrégée - Créer dans GA4 le Custom Channel Group “AI Assistant” avec la regex de referrer
- Vérifier dans Cloudflare Security > Bots que AI Scrapers Block est désactivé si vous voulez être cité
- Lancer une requête quotidienne agrégée et comparer volume logs vs volume GA4 pour mesurer votre taux de cécité
En une semaine, vous aurez un vrai chiffre de trafic IA, un vrai split par plateforme, et une base pour toute décision d’investissement GEO. Vous aurez aussi probablement la mauvaise surprise de découvrir que Cloudflare bloquait vos crawlers IA depuis des mois.