Le robots.txt est un fichier texte placé à la racine d’un site web (https://mondomaine.fr/robots.txt) qui communique aux robots d’indexation les directives d’accès — quelles zones du site peuvent être crawlées et lesquelles doivent être exclues. C’est le premier fichier que tout crawler respectueux du protocole consulte avant d’explorer un site. Il agit comme un panneau de signalisation pour les bots, pas comme un mur de sécurité.
• Googlebot consulte le robots.txt avant le crawl.
• La directive Disallow bloque le crawl d’une URL ou d’un répertoire.
• La directive Allow autorise le crawl d’une exception dans une zone bloquée.
• Le robots.txt optimise le budget crawl.
• Le robots.txt ne contrôle pas l’indexation d’une page.
• Le sitemap XML est référencé dans le robots.txt.
Distinction fondamentale : crawl ≠ indexation
C’est l’erreur la plus répandue en SEO technique. Le robots.txt contrôle le crawl (exploration), pas l’indexation. Une page bloquée par Disallow ne sera pas crawlée, mais elle peut toujours être indexée si Google la découvre via des liens externes, des sitemaps ou d’autres sources. Dans ce cas, Google affiche l’URL dans ses résultats avec la mention « Aucune information n’est disponible pour cette page » — le pire scénario possible : la page est visible dans les SERPs mais sans titre, sans description et sans aucun contrôle. Pour empêcher l’indexation, il faut utiliser la balise <meta name= »robots » content= »noindex »> ou l’en-tête HTTP X-Robots-Tag: noindex — et ces directives nécessitent que la page soit crawlable pour être lues par Googlebot.
User-agent: Googlebot
Disallow: /admin/
Disallow: /panier/
Disallow: /*?s=
Disallow: /*&tri=
Allow: /admin/public/
# Bloc de règles pour tous les bots
User-agent: *
Disallow: /wp-admin/
Disallow: /tmp/
Allow: /wp-admin/admin-ajax.php
# Blocage des crawlers d’IA
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Bytespider
Disallow: /
# Référence au sitemap Sitemap: https://mondomaine.fr/sitemap_index.xml
User-agent — Identifie le crawler ciblé par le bloc de règles. * désigne tous les bots. Les User-agents spécifiques (Googlebot, Bingbot, GPTBot, ClaudeBot) permettent de définir des règles différenciées par moteur ou par système d’IA.
Disallow — Interdit le crawl d’un chemin. Disallow: / bloque l’intégralité du site. Disallow: (vide) autorise tout. Le chemin est sensible à la casse et fonctionne par préfixe : Disallow: /catalogue/ bloque toute URL commençant par /catalogue/.
Allow — Autorise le crawl d’une exception à l’intérieur d’une zone bloquée. Principalement utilisé par Google et Bing (extension non standard mais largement supportée). En cas de conflit entre Allow et Disallow, la règle la plus spécifique (chemin le plus long) l’emporte.
Sitemap — Indique l’emplacement du ou des sitemaps XML. Cette directive est indépendante des blocs User-agent et peut apparaître n’importe où dans le fichier. Elle facilite la découverte d’URLs par les crawlers, indépendamment du maillage interne.
Caractères spéciaux (extensions Google/Bing)
* (wildcard) — Correspond à toute séquence de caractères. Disallow: /*?tri= bloque toutes les URLs contenant le paramètre ?tri= quel que soit le chemin.
$ (fin d’URL) — Ancre la correspondance à la fin de l’URL. Disallow: /*.pdf$ bloque uniquement les URLs se terminant par .pdf, sans affecter /pdf-guide/ par exemple.
Utilisation stratégique pour le budget crawl
Le robots.txt est le levier le plus direct pour orienter le budget crawl vers les pages à forte valeur SEO. Sur un site e-commerce, les pages de filtres combinés, les paramètres de tri, les pages de recherche interne, les versions imprimables et les pages de comparaison génèrent souvent des milliers d’URLs à faible valeur qui consomment le budget crawl au détriment des fiches produits et des pages de catégories stratégiques.
User-agent: *
# Filtres et facettes à faible valeur
Disallow: /*?couleur=
Disallow: /*?taille=
Disallow: /*?tri=
Disallow: /*&page=
# Recherche interne
Disallow: /recherche/
Disallow: /*?q=
# Espaces privés
Disallow: /mon-compte/
Disallow: /panier/
Disallow: /commande/
# Ressources techniques inutiles pour le SEO
Disallow: /cgi-bin/
Disallow: /wp-json/
Depuis 2023, la gestion des crawlers d’intelligence artificielle est devenue un enjeu majeur du robots.txt. Les principaux bots IA possèdent des User-agents identifiables : GPTBot (OpenAI), ClaudeBot (Anthropic), Bytespider (ByteDance/TikTok), Google-Extended (entraînement Gemini, désormais déprécié au profit de contrôles plus granulaires), CCBot (Common Crawl), Applebot-Extended (Apple Intelligence). Bloquer ces crawlers n’empêche pas l’IA de citer le site via des sources indirectes, mais limite l’accès direct au contenu pour l’entraînement des modèles.
Erreurs fréquentes du Robots.txt
Bloquer les ressources CSS/JS — Empêcher Googlebot d’accéder aux fichiers CSS et JavaScript compromet le rendering de la page et donc la capacité de Google à comprendre et indexer correctement le contenu. C’est un héritage de pratiques obsolètes pré-2014.
Utiliser Disallow pour désindexer — Comme expliqué ci-dessus, Disallow empêche le crawl mais pas l’indexation. Une page bloquée dans robots.txt mais liée depuis l’extérieur sera indexée sous forme d’URL nue sans contenu.
Robots.txt absent ou mal formaté — L’absence de fichier robots.txt est interprétée comme une autorisation totale de crawl. Un fichier mal encodé (BOM UTF-8, retours à la ligne Windows non standards, caractères invisibles) peut être mal interprété par les crawlers.
Bloquer le sitemap — Référencer un sitemap XML dans le robots.txt tout en bloquant l’accès au répertoire contenant ce sitemap est une incohérence fréquente.
Oublier le trailing slash — Disallow: /catalogue bloque aussi /catalogue-2024/ par effet de préfixe. Disallow: /catalogue/ est plus précis et ne bloque que les URLs sous ce répertoire.
Fichier trop restrictif après migration — Oublier de mettre à jour le robots.txt après une refonte ou une migration de CMS, avec des règles héritées qui bloquent des sections critiques du nouveau site.
Règles techniques du protocole
- Le robots.txt doit être accessible à l’URL racine exacte : https://mondomaine.fr/robots.txt
- Il doit être servi avec un code HTTP 200 et un Content-Type text/plain
- Taille maximale recommandée : 500 Ko (au-delà, Google peut ignorer les règles)
- Un robots.txt par sous-domaine : blog.mondomaine.fr nécessite son propre fichier
- En cas d’erreur 5xx sur le robots.txt, Google suspend temporairement le crawl du site (comportement de précaution)
- En cas d’erreur 4xx, Google considère qu’il n’y a aucune restriction et crawle tout
Outils de diagnostic du Robots.txt
- Google Search Console → Inspection d’URL → Vérifie si une URL spécifique est bloquée par le robots.txt et affiche la directive responsable
- Google Robots.txt Tester (désormais intégré dans GSC) → Test en temps réel des règles contre des URLs spécifiques
- Screaming Frog → Détecte les ressources bloquées par robots.txt lors du crawl et signale les incohérences (pages dans le sitemap mais bloquées par robots.txt)
- Outil de test robots.txt de Bing Webmaster Tools → Validation spécifique pour le crawler Bing
- Chrome DevTools → Network → Vérifier que le robots.txt est bien servi en 200 avec le bon Content-Type
- Logs serveur → Confirmer que les bots respectent effectivement les directives (certains crawlers malveillants les ignorent)
- robotstxt.org → Référence du protocole original et validateur de syntaxe
Besoin d’un accompagnement ?
Configurer un robots.txt efficace — protéger votre budget crawl, gérer les facettes e-commerce, bloquer les crawlers d’IA et éviter les erreurs qui compromettent votre indexation — demande une maîtrise fine du protocole et de ses implications SEO. Notre agence SEO à Lyon audite et optimise vos directives robots.txt pour garantir que Googlebot se concentre sur vos pages stratégiques.
Entités liées (→ définitions dédiées)
→ Crawl · Indexation · Budget crawl · Sitemap XML · Noindex · Rendering · Googlebot · Maillage interne · Duplicate Content · Google Search Console · Logs serveur · Redirection 301