Aller au contenu
METAVIZOR
Toutes les ressources

Votre anti-bot bloque probablement GPTBot. Comment le vérifier en une heure

La plupart des e-commerçants qui découvrent qu'ils sont absents des réponses génératives n'ont pas un problème de contenu. Ils ont une règle WAF écrite en 2021, avant que ces crawlers n'existent, et que plus personne n'a relue depuis.

Publié le /8 min

Pourquoi ce blocage est presque toujours involontaire

Aucun directeur e-commerce n’a décidé de bloquer GPTBot. Ce qui s’est passé est plus banal : une solution anti-bot a été déployée pour contenir le scraping de prix et le credential stuffing, avec une politique par défaut qui refuse tout agent non identifié comme navigateur. Cette politique fonctionne. Elle fait exactement ce pour quoi elle a été achetée.

Le problème est qu’entre-temps une nouvelle catégorie de robots est apparue, dont la visite a une valeur commerciale positive. La règle, elle, n’a pas bougé. Elle traite GPTBot/1.1 comme elle traite un scraper chinois : un client non humain, donc suspect.

Personne n’est alerté, parce qu’un anti-bot qui bloque un robot ne signale pas un incident — il signale un succès. Le blocage remonte dans les tableaux de bord comme une menace neutralisée.

Les quatre user-agents qui comptent

Avant de chercher, il faut savoir quoi chercher. Les chaînes utiles aujourd’hui :

  • GPTBot — indexation OpenAI pour l’entraînement et la recherche
  • OAI-SearchBot — surface de recherche de ChatGPT
  • ChatGPT-User — visite déclenchée en direct par un utilisateur
  • ClaudeBot, Claude-User, Claude-SearchBot — Anthropic
  • PerplexityBot, Perplexity-User — Perplexity
  • Google-Extended — jeton de contrôle Google pour Gemini et AI Overviews
  • Applebot-Extended, meta-externalagent, Bytespider, cohere-ai

La distinction entre crawler d’indexation et visite déclenchée par un utilisateur est importante sur le plan commercial : ChatGPT-User et Perplexity-User correspondent à quelqu’un qui, à cet instant, cherche à acheter. Les bloquer coûte du chiffre d’affaires immédiat, pas de la visibilité à long terme.

Étape 1 — Compter les refus dans vos journaux

Si vos journaux d’accès sont au format combiné Apache ou Nginx, une seule commande donne l’état des lieux sur trente jours :

zgrep -hiE "GPTBot|ClaudeBot|PerplexityBot|Google-Extended|OAI-SearchBot" access.log*.gz \
  | awk '{print $9}' \
  | sort | uniq -c | sort -rn

Vous obtenez la répartition des codes de statut renvoyés à ces agents. La lecture est immédiate :

  • une majorité de 200 : vous êtes accessible, passez à l’étape 3 ;
  • des 403 ou 401 : blocage applicatif ou WAF ;
  • des 429 : limitation de débit, souvent plus insidieuse — l’accès existe mais reste trop lent pour être exploité ;
  • aucune ligne du tout : le cas le plus fréquent, et le plus mal interprété.

Étape 2 — L’absence de ligne n’est pas une bonne nouvelle

Si la recherche ne remonte rien, deux hypothèses. Soit aucun crawler IA n’est jamais venu — improbable pour un site marchand référencé. Soit, et c’est presque toujours le cas, le blocage a lieu en amont de votre serveur applicatif.

Datadome, Cloudflare Bot Management et Akamai Bot Manager tranchent à la périphérie. La requête n’atteint jamais votre origine, donc elle n’apparaît jamais dans vos journaux Apache ou Nginx. Il faut alors regarder ailleurs :

  • console Datadome, section Traffic filtrée par user-agent ;
  • Cloudflare, Security Events, filtre User Agent contains GPTBot ;
  • journaux du CDN, pas ceux de l’origine.

C’est à cette étape que la plupart des équipes découvrent des dizaines de milliers de refus mensuels.

Étape 3 — Vérifier ce que le crawler reçoit réellement

Un 200 ne suffit pas. Encore faut-il que la réponse contienne quelque chose d’exploitable. Comparez la taille et le contenu servi à un navigateur et à un crawler :

curl -s -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 Chrome/128.0 Safari/537.36" \
  https://votre-site.fr/categorie/chaussures | wc -c

curl -s -A "Mozilla/5.0 (compatible; GPTBot/1.1; +https://openai.com/gptbot)" \
  https://votre-site.fr/categorie/chaussures | wc -c

Deux écarts sont révélateurs. Si la seconde réponse est nettement plus courte, vous servez une variante dégradée — parfois une page de défi anti-bot renvoyée avec un code 200, ce qui échappe à tous les comptages de statut. Si les deux sont identiques mais courtes, le problème n’est pas le blocage : c’est le rendu côté navigateur, sujet distinct traité plus bas.

Vérifiez enfin le texte réellement présent, hors balises :

curl -s -A "Mozilla/5.0 (compatible; GPTBot/1.1; +https://openai.com/gptbot)" \
  https://votre-site.fr/produit/ref-1234 \
  | sed -e 's/<script[^>]*>.*<\/script>//g' -e 's/<[^>]*>/ /g' \
  | tr -s ' ' | wc -c

En dessous de 1 500 caractères sur une fiche produit, considérez que l’agent ne dispose d’aucune matière : ni description, ni prix, ni disponibilité.

Étape 4 — Relire le robots.txt, ligne à ligne

Le blocage peut être parfaitement volontaire et documenté, hérité d’une décision prise à la hâte en 2023 quand la presse expliquait qu’il fallait « se protéger de l’IA » :

User-agent: GPTBot
Disallow: /

Cette directive existe encore sur un grand nombre de sites français. Elle a été ajoutée dans un contexte de crainte du pillage de contenu, à une époque où aucun trafic commercial ne venait de ces surfaces. Ce n’est plus le cas.

Attention également aux règles implicites : un User-agent: * suivi d’un Disallow: / s’applique à tous les crawlers n’ayant pas leur propre groupe.

Que faire du résultat

Le réflexe « on ouvre tout » est aussi mauvais que le blocage global. La position défendable est un arbitrage :

  • ouvrir les gabarits qui font vendre — accueil, catégories, fiches produit, pages de marque ;
  • laisser fermés les espaces client, tunnels de commande, recherche interne à facettes, et tout ce qui génère des URL infinies ;
  • distinguer les crawlers d’indexation des visites déclenchées par un utilisateur, et être plus permissif sur les seconds ;
  • mesurer ensuite, sinon la décision ne sera jamais réévaluée.

Une règle d’autorisation se déploie en quelques heures. Ce qui prend du temps, c’est de reconstruire ce que les agents ont cessé de voir pendant les mois où personne ne regardait.

Ce que cette méthode ne montre pas

Elle établit un fait — vous êtes bloqué, ou vous ne l’êtes pas. Elle ne dit ni combien cela vous coûte, ni quels gabarits sont les plus pénalisés, ni comment le corriger sans rouvrir la porte au scraping de prix. Ce sont trois questions distinctes, et elles se traitent en regardant votre chaîne de diffusion complète, pas une ligne de journal.

À lire ensuite

Vos concurrents découvriront le problème en lisant leurs chiffres d'octobre.

Un diagnostic prend cinq jours. Il vous dit si les agents IA accèdent à votre catalogue, ce qui les en empêche, et ce que coûte la correction.

Demander un audit