# GPTBot, ClaudeBot, PerplexityBot : le guide des crawlers IA et de robots.txt

> Trois familles de robots visitent votre site pour le compte des IA, et les confondre coûte cher : bloquer la mauvaise, c'est fermer la porte au visiteur le plus qualifié que vous ayez. Voici qui est qui, et quoi écrire.

Publié le: 2026-08-22 · Mis à jour le: 2026-08-26 · 8 min de lecture
Source: https://indexonic.com/blog/crawlers-ia-robots-txt/

Vous voyez passer `GPTBot` dans vos journaux et la question tombe : faut-il le bloquer ? Impossible d'y répondre tant qu'on n'a pas séparé trois choses que le mot « crawler IA » confond systématiquement.

## Trois familles, trois décisions distinctes

1. **Les robots d'entraînement.** Ils collectent du texte pour constituer des jeux de données. Ils ne vous envoient aucun trafic et ne vous citent pas dans l'immédiat ; ils alimentent la mémoire des futurs modèles. Bloquer, c'est protéger son contenu et sortir du chemin long.
2. **Les robots d'indexation.** Ils construisent l'index dans lequel un assistant va chercher au moment de répondre. Les bloquer revient à demander à ne pas être trouvé lorsqu'une réponse se construit.
3. **Les récupérations déclenchées par un humain.** Un utilisateur colle votre lien ou pose une question dont votre page est la réponse candidate ; l'assistant va la chercher sur-le-champ. Ce n'est pas un robot d'aspiration, c'est **votre prospect avec un intermédiaire**. Le bloquer est presque toujours une erreur.

> **La règle courte** — Le nom qui se termine par `-User` désigne presque toujours une récupération déclenchée par une personne réelle : `ChatGPT-User`, `Claude-User`, `Perplexity-User`. Ces trois-là, on les laisse entrer.

## Le tableau de référence

Les opérateurs marqués « documenté » publient eux-mêmes la liste de leurs agents et la manière de les contrôler : [OpenAI](https://platform.openai.com/docs/bots), [Anthropic](https://support.anthropic.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler), [Perplexity](https://docs.perplexity.ai/guides/bots) et [Google](https://developers.google.com/search/docs/crawling-indexing/overview-google-crawlers).

| User-Agent | Opérateur | Famille | Effet du blocage |
| --- | --- | --- | --- |
| GPTBot | OpenAI | Entraînement | Sort des futurs jeux d'entraînement |
| OAI-SearchBot | OpenAI | Indexation | Absent des recherches de ChatGPT |
| ChatGPT-User | OpenAI | Déclenché par un humain | L'utilisateur reçoit une erreur à votre place |
| ClaudeBot | Anthropic | Entraînement | Sort des futurs jeux d'entraînement |
| Claude-SearchBot | Anthropic | Indexation | Absent des recherches de Claude |
| Claude-User | Anthropic | Déclenché par un humain | La demande de l'utilisateur échoue |
| PerplexityBot | Perplexity | Indexation | Absent de l'index Perplexity |
| Perplexity-User | Perplexity | Déclenché par un humain | La demande de l'utilisateur échoue |
| Google-Extended | Google | Contrôle d'usage IA | Contenu écarté de certains usages IA de Google, sans effet sur le classement |
| Googlebot | Google | Indexation | Disparition de Google Search — à ne pas toucher |
| Applebot-Extended | Apple | Contrôle d'usage IA | Écarte le contenu des usages IA d'Apple |
| Bytespider | ByteDance | Entraînement | Sort des collectes ByteDance |
| CCBot | Common Crawl | Archive publique | Sort d'un corpus réutilisé par de nombreux acteurs |

Deux précisions qui évitent des décisions à l'aveugle. `Google-Extended` n'est pas un robot : c'est un jeton de contrôle d'usage — le contenu est toujours exploré par Googlebot, mais son emploi dans certains produits d'IA de Google est écarté, et le classement dans Search n'en dépend pas. Et `CCBot` alimente une archive publique dont beaucoup d'acteurs se servent : le bloquer a un effet bien plus large que son nom ne le suggère.

## Comment robots.txt fonctionne réellement

Le format est normalisé par la [RFC 9309](https://www.rfc-editor.org/rfc/rfc9309.html). Trois règles suffisent à éviter la quasi-totalité des erreurs constatées :

- **Un robot n'obéit qu'à un seul groupe** : celui dont le `User-agent` correspond le plus précisément à son nom. Si `GPTBot` a son propre groupe, il ignore entièrement le groupe `*` — y compris les règles que vous pensiez générales.
- **La correspondance ne tient pas compte de la casse** et porte sur un jeton, pas sur la chaîne complète du User-Agent.
- **Le fichier n'a aucun pouvoir contraignant.** C'est une demande polie. Les opérateurs sérieux la respectent ; un aspirateur anonyme ne la lira même pas. Un blocage réel se fait au niveau du serveur ou du CDN.

## Trois configurations à copier

Choisissez selon la décision que vous prenez, pas selon la mode.

*A — Visibilité maximale : tout le monde entre*

```
User-agent: *
Allow: /

Sitemap: https://votre-domaine.com/sitemap.xml
```

*B — Le compromis le plus courant : citation oui, entraînement non*

```
# Récupérations déclenchées par un humain : toujours autorisées.
User-agent: ChatGPT-User
Allow: /

User-agent: Claude-User
Allow: /

User-agent: Perplexity-User
Allow: /

# Indexation pour les moteurs de réponse : autorisée, c'est ainsi qu'on est cité.
User-agent: OAI-SearchBot
Allow: /

User-agent: Claude-SearchBot
Allow: /

User-agent: PerplexityBot
Allow: /

# Collecte pour l'entraînement : refusée.
User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Bytespider
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: Applebot-Extended
Disallow: /

User-agent: *
Allow: /

Sitemap: https://votre-domaine.com/sitemap.xml
```

*C — Fermeture aux IA, en gardant la recherche classique*

```
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

User-agent: GPTBot
Disallow: /

User-agent: OAI-SearchBot
Disallow: /

User-agent: ChatGPT-User
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Claude-User
Disallow: /

User-agent: PerplexityBot
Disallow: /

User-agent: Perplexity-User
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: *
Allow: /
```

La configuration C a un coût qu'il faut assumer en connaissance de cause : vous n'êtes plus une réponse possible, y compris pour un utilisateur qui vous cherche nommément. Elle se justifie pour des contenus dont la valeur tient à leur exclusivité — bases documentaires payantes, archives sous licence — rarement pour un site commercial.

## Content-Signal : dire l'usage autorisé, pas seulement l'accès

robots.txt exprime une permission binaire : entrer ou non. Il ne dit rien de ce qu'on peut _faire_ du contenu une fois lu. L'en-tête `Content-Signal`, proposé pour combler ce vide, sépare trois usages et se place dans le même fichier :

*Une déclaration d'usage exploitable par une machine*

```
Content-Signal: search=yes, ai-input=yes, ai-train=no

# search=yes    — indexez et faites un lien
# ai-input=yes  — citez dans une réponse générée, avec attribution
# ai-train=no   — n'utilisez pas ce contenu comme donnée d'entraînement
```

Une réserve honnête : il s'agit d'une convention, pas d'une norme adoptée, et elle n'a aucune force exécutoire. Son intérêt est double — elle exprime une intention non ambiguë, et elle laisse une trace datée de cette intention. C'est peu, mais c'est plus qu'une absence de déclaration. Notre propre `robots.txt` la porte, parce qu'un produit qui audite ce point chez les autres doit le tenir chez lui.

## Vérifier qu'un robot est bien celui qu'il prétend être

Un User-Agent est une chaîne de caractères libre : n'importe quel script peut s'annoncer comme `GPTBot` pour contourner un filtre, et un aspirateur agressif le fait souvent. Avant de tirer la moindre conclusion d'une ligne de journal — et surtout avant de bloquer une adresse — vérifiez l'origine. Les opérateurs sérieux publient soit leurs plages d'adresses IP, soit un DNS inverse vérifiable.

*Vérification en DNS inverse, puis en DNS direct*

```
# 1. À quel nom d'hôte appartient l'adresse vue dans le journal ?
host 203.0.113.42
# 2. Ce nom d'hôte renvoie-t-il bien à la même adresse ?
host le-nom-obtenu.exemple.com
# Les deux doivent concorder. Sinon, le User-Agent est usurpé.
```

Ce contrôle en deux temps est le même que celui recommandé de longue date pour authentifier Googlebot. Il évite l'erreur symétrique la plus coûteuse : bloquer un vrai robot d'indexation sur la foi d'un journal, ou laisser entrer un aspirateur parce qu'il a écrit le bon nom.

## Quand robots.txt ne suffit pas

Face à un client qui ignore le fichier, la seule réponse efficace se situe au niveau du serveur ou du CDN. Sur nginx, un refus par User-Agent tient en trois lignes ; il s'applique avant toute exécution applicative, donc il coûte quasiment rien.

*nginx — refus effectif, et non plus demande polie*

```
map $http_user_agent $bloque_ia {
    default 0;
    ~*(Bytespider|ClaudeBot|GPTBot) 1;
}

server {
    if ($bloque_ia) { return 403; }
}
```

Deux réserves avant de généraliser ce réglage. Un blocage trop large finit toujours par attraper un agent que vous vouliez garder — relisez la liste avant de l'appliquer. Et un refus servi avec un code 200 et une page d'erreur stylée n'est pas un refus : renvoyez un vrai 403, sinon les deux camps se trompent sur ce qui s'est passé.

## Les erreurs qui coûtent le plus

- **Le `Disallow: /` de préproduction remis en ligne.** Toujours le premier suspect quand une visibilité s'effondre du jour au lendemain.
- **Bloquer les CSS et le JavaScript.** Les moteurs qui rendent la page ne peuvent plus la comprendre, et vous perdez sur les deux tableaux.
- **Bloquer les fichiers `.md`.** Ils sont précisément la version propre que vous vouliez faire lire aux agents.
- **Croire qu'un blocage retire l'existant.** robots.txt agit sur les visites futures ; il ne supprime rien de ce qui a déjà été collecté ni de ce qu'un modèle a déjà mémorisé.
- **Interdire l'accès puis s'étonner de l'absence.** C'est le cas le plus fréquent que nous voyons à l'audit : le site interdit ce qu'il souhaite voir cité, souvent par un réglage laissé par une extension.

> **Vérification en une commande** — `curl -sS https://votre-domaine.com/robots.txt` — lisez-le en entier. L'audit Indexonic va plus loin : il contrôle chaque groupe d'agents, détecte le soft-404, et vous dit lequel de vos réglages contredit ce que vous voulez obtenir.


## Questions fréquentes

### Bloquer GPTBot m'empêche-t-il d'apparaître dans ChatGPT ?
Pas directement. GPTBot alimente l'entraînement ; la recherche de ChatGPT passe par OAI-SearchBot et les récupérations à la demande par ChatGPT-User. Bloquer le premier sans bloquer les deux autres reste cohérent : refuser l'entraînement, accepter la citation.

### robots.txt est-il juridiquement contraignant ?
Non. C'est une convention technique respectée par les opérateurs sérieux. Pour un blocage effectif, il faut un filtrage côté serveur ou CDN — par User-Agent, par IP, ou par une vérification d'authenticité du robot.

### Comment savoir qui visite réellement mon site ?
Vos journaux d'accès. Une seule ligne de grep sur les noms d'agents vous donne la liste datée et comptée. C'est la seule source qui ne dépend d'aucune interprétation.

### Faut-il bloquer CCBot ?
Cela dépend de votre tolérance à la réutilisation. CCBot alimente une archive publique utilisée par de très nombreux acteurs, y compris des chercheurs. Le blocage a donc une portée large, et il ne retire pas les collectes déjà effectuées.

---
Indexonic — https://indexonic.com · https://agent.indexonic.com
