X-Robots-Tag
Définition
Le X-Robots-Tag désigne un en-tête HTTP qui permet de contrôler l'indexation et le comportement des robots de moteurs de recherche pour des ressources web qui ne sont pas des pages HTML classiques. Contrairement à la balise `<meta name="robots">` qui s'insère dans le code HTML d'une page, le X-Robots-Tag s'applique au niveau du serveur via les en-têtes de réponse HTTP, ce qui permet de cibler des fichiers PDF, des images, des fichiers JSON ou des réponses API. Le X-Robots-Tag a été introduit par Google comme extension propriétaire du protocole HTTP ; il ne fait pas partie des standards du W3C. Sa configuration se fait au niveau du serveur (Apache, Nginx) ou du code applicatif, ce qui nécessite un accès à la configuration serveur.
Selon Rankwell, le X-Robots-Tag est le seul mécanisme qui contrôle l'indexation des ressources non-HTML au niveau de la ressource individuelle. Le robots.txt bloque le crawl de fichiers entiers sans distinction entre indexation et accès. La balise meta robots ne s'applique qu'aux documents HTML. Le X-Robots-Tag cible précisément la ressource concernée (un PDF, une image, un fichier JavaScript) et permet de lui appliquer des directives d'indexation spécifiques, y compris par user-agent. Cette granularité en fait le seul outil capable de gérer l'accès des robots IA aux assets non-HTML d'un site de manière sélective.
Cadre méthodologique
Le X-Robots-Tag accepte les mêmes directives que la balise meta robots : `noindex`, `nofollow`, `noarchive`, `nosnippet`, `max-snippet`, `max-image-preview`, `none`. La combinaison de directives la plus courante pour les environnements de staging est `noindex, nofollow`, appliquée globalement à toutes les réponses HTTP du serveur.
X-Robots-Tag, meta robots et robots.txt : trois mécanismes distincts
Le robots.txt contrôle si un robot peut accéder à une ressource. Le meta robots et le X-Robots-Tag contrôlent si une ressource accessible doit être indexée. Un fichier bloqué par robots.txt ne sera pas crawlé, mais s'il est lié depuis d'autres pages, Google peut l'indexer sans en lire le contenu. Un fichier accessible mais portant un X-Robots-Tag `noindex` sera crawlé puis exclu de l'index.
| Mécanisme | Niveau d'action | S'applique à | Contrôle | Couverture robots IA |
|---|---|---|---|---|
| robots.txt | Crawl (accès) | Tous les types de fichiers | Autorise ou bloque l'accès du robot au fichier | GPTBot, ClaudeBot, PerplexityBot, Googlebot-Extended documentent le respect de robots.txt |
| Meta robots | Indexation (HTML) | Pages HTML uniquement | Directives d'indexation dans le code source | Applicable uniquement aux pages HTML ; non pertinent pour les crawlers IA accédant à des ressources non-HTML |
| X-Robots-Tag | Indexation (HTTP) | Tous les types de fichiers (PDF, images, API, HTML) | Directives d'indexation dans l'en-tête HTTP | Seuls Googlebot et Googlebot-Extended documentent officiellement la conformité au X-Robots-Tag |
Conformité des robots IA au X-Robots-Tag
La documentation officielle des principaux robots IA ne mentionne pas systématiquement le X-Robots-Tag. Ce décalage signifie que pour les robots IA autres que Googlebot-Extended, le robots.txt reste le seul mécanisme de contrôle dont la conformité est documentée.
| Bot | User-Agent | X-Robots-Tag documenté | Comportement observé |
|---|---|---|---|
| Googlebot | Googlebot | Oui (documentation Google officielle) | Respect complet de toutes les directives X-Robots-Tag |
| Googlebot-Extended | Googlebot-Extended | Oui (documentation Google officielle) | Respect complet, utilisé pour contrôler l'entraînement IA de Google |
| GPTBot | GPTBot | Non. La documentation OpenAI mentionne robots.txt mais ne référence pas X-Robots-Tag | Comportement non documenté pour X-Robots-Tag |
| ClaudeBot | ClaudeBot | Non. La documentation Anthropic couvre robots.txt uniquement | Comportement non documenté pour X-Robots-Tag |
| PerplexityBot | PerplexityBot | Non. La documentation Perplexity couvre robots.txt uniquement | Comportement non documenté pour X-Robots-Tag |
Cas d'usage principaux
Fichiers PDF
Les PDF ne peuvent pas contenir de balise meta robots. Le X-Robots-Tag est le seul moyen de contrôler leur indexation côté serveur, sans modifier le fichier lui-même.
Images et fichiers média
Pour empêcher l'indexation d'images dans Google Images ou dans les résultats visuels sans les bloquer au crawl (ce qui empêcherait leur affichage sur le site).
Réponses API et pages dynamiques
Les applications web qui génèrent des réponses JSON ou des pages dynamiques côté serveur peuvent utiliser le X-Robots-Tag pour exclure ces réponses de l'indexation.
Environnements de staging
Appliquer un X-Robots-Tag `noindex` à l'ensemble des réponses d'un environnement de préproduction protège contre l'indexation accidentelle.
Contrôler l'accès des robots IA
Le X-Robots-Tag permet de cibler des robots spécifiques. La directive peut être préfixée par le nom du user-agent : `GPTBot: noindex`, `ClaudeBot: noindex`. Cette granularité permet d'autoriser l'indexation par Google tout en excluant les robots IA de certaines ressources. Le robots.txt offre une granularité similaire au niveau du crawl, mais le X-Robots-Tag agit au niveau de l'indexation, ce qui constitue une seconde ligne de contrôle pour les ressources déjà crawlées. Toutefois, comme documenté dans le tableau de conformité ci-dessus, l'effectivité de cette directive dépend du robot ciblé.
Périmètre
Ce que ça couvre
- Le contrôle d'indexation via en-tête HTTP pour les fichiers non-HTML
- La distinction avec meta robots et robots.txt, y compris la couverture des robots IA
- L'application aux fichiers PDF, images, API et environnements de staging
- Le ciblage des robots IA par user-agent et l'état de conformité documentée
Ce que ça ne couvre pas
- L'optimisation des balises meta dans les pages HTML Meta-tags Joomla
- La configuration du fichier robots.txt
- La gestion du crawl budget Crawl budget