Qu’est-ce que le fichier robots.txt en SEO ?
Le fichier robots.txt est l’un des premiers fichiers consultés par les robots des moteurs de recherche lorsqu’ils accèdent à un site web. C’est un petit fichier texte placé à la racine d’un domaine qui donne des instructions d’exploration aux crawlers. En d’autres termes, il sert à contrôler ce que les moteurs de recherche peuvent explorer ou pas sur un site.
Malgré sa simplicité apparente, le fichier robots.txt joue un rôle stratégique dans la gestion du crawl, la protection de certaines ressources, et l’optimisation du budget de crawl. Mal utilisé, il peut pénaliser la visibilité d’un site ; bien maîtrisé, il devient un levier technique important dans une stratégie SEO.
Qu’est-ce qu’un fichier robots.txt ?
Le robots.txt est un fichier de type texte brut (encodé en UTF-8 ou ASCII) placé à la racine d’un site (ex. https://www.exemple.com/robots.txt). Il fait partie du protocole d’exclusion des robots.
Sa mission principale est de spécifier aux robots des moteurs (comme Googlebot, Bingbot, etc.) les répertoires ou fichiers qu’ils sont autorisés ou non à explorer.
À quoi sert le fichier robots.txt ?
Le robots.txt permet notamment de :
- Empêcher le crawl de certaines sections du site (ex : dossiers admin, filtres de recherche, contenus dupliqués),
- Préserver le budget de crawl, en évitant que les robots indexent des pages inutiles ou sans intérêt SEO,
- Réduire la charge serveur, en limitant l’accès à certaines ressources lourdes ou sensibles,
- Contrôler les robots malveillants (dans une certaine mesure),
- Spécifier l’emplacement du sitemap XML,
- Tester ou prévisualiser un site sans risquer une indexation prématurée (site en staging).
Syntaxe et règles de base
Voici la structure élémentaire d’un fichier robots.txt :
User-agent: [nom du robot]
Disallow: [chemin du dossier ou fichier interdit]
Allow: [chemin du dossier ou fichier autorisé]
User-agent: *
Disallow: /admin/
Disallow: /panier/
Allow: /images/
User-agent: *
: signifie que la règle s’applique à tous les robots.Disallow
: interdit l’exploration d’un chemin.Allow :
autorise l’accès à une ressource spécifique, même dans un dossier désindexé.
Exemple de fichier robots.txt typique
User-agent: *
Disallow: /wp-admin/
Disallow: /recherche/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.monsite.com/sitemap.xml
Ici, on bloque l’administration WordPress et les pages de recherche interne, tout en autorisant l’appel à un fichier Ajax nécessaire au bon fonctionnement du site.
Robots.txt vs balise meta robots
Il est essentiel de ne pas confondre :
- Le fichier robots.txt, qui empêche l’exploration (crawl),
- La balise meta robots, qui empêche l’indexation (index/noindex, follow/nofollow).
Exemple :
robots.txt
empêche Google de voir la page,meta robots noindex
autorise Google à voir la page, mais lui interdit de l’afficher dans les résultats.
⚠️ Si vous bloquez une page dans le fichier robots.txt
, Google ne pourra pas lire la balise noindex
qui y serait présente. Résultat : une page bloquée pourrait rester indexée si elle a déjà été explorée auparavant.
Bonnes pratiques SEO
Ne jamais bloquer des pages importantes
Évitez de désindexer accidentellement des pages à fort trafic ou à fort potentiel. Il arrive souvent que des règles trop larges (ex. : Disallow: /blog
) empêchent l’indexation de centaines de pages utiles.
N’utilisez pas le fichier robots.txt pour cacher du contenu confidentiel
Les moteurs ne respectent pas toujours les règles du robots.txt
à la lettre. De plus, le fichier est public : n’importe qui peut le consulter. Ne l’utilisez jamais pour “protéger” des données sensibles (ex : documents RH, bases d’utilisateurs, zones de test internes).
Autorisez l’accès aux ressources critiques
CSS, JS, images, police… Si ces fichiers sont bloqués, Googlebot ne pourra pas afficher la page comme un utilisateur le ferait. Résultat : des erreurs dans le rendu, une mauvaise évaluation de l’UX, et un impact possible sur le référencement.
Utilisez la directive Crawl-delay
avec modération
Certains moteurs prennent en compte Crawl-delay
(ex : Bing), mais Google l’ignore. Cette directive indique un temps d’attente entre deux requêtes. Trop restrictif, cela peut limiter inutilement l’exploration.
Comment tester et valider un fichier robots.txt ?
Outils disponibles
- Screaming Frog – test du crawl selon les règles
robots.txt
, - robots.txt Tester de Ryte, Ahrefs ou SEMrush,
- cURL ou ligne de commande pour vérifier les headers de blocage.
Méthodologie
- Tester ligne par ligne chaque règle.
- Simuler un comportement de Googlebot.
- S’assurer qu’aucune page clé n’est accidentellement bloquée.
Cas fréquents d’erreurs
Erreur | Impact SEO |
Blocage du /wp-content/ | Empêche l’exploration des CSS et JS |
Disallow trop large | Désindexation massive involontaire |
Fichier manquant ou vide | Risque d’exploration anarchique |
Fichier mal encodé (UTF-8 BOM) | Fichier non lu correctement par Googlebot |
Robots.txt et sitemap
La directive Sitemap: permet d’indiquer l’URL de votre sitemap XML directement dans le robots.txt.
Exemple :
Sitemap: https://www.exemple.com/sitemap.xml
Cette méthode est complémentaire à l’ajout du sitemap dans Google Search Console. Elle garantit une meilleure découverte des URLs, notamment pour les moteurs secondaires.
Robots.txt pour sites multilingues
Dans les cas de sites multilingues ou multi-domaines, chaque version doit avoir son propre fichier robots.txt, adapté à sa structure.
Exemples :
/fr/robots.txt
pour la version française,/en/robots.txt
pour la version anglaise.
Robots.txt en staging ou développement
Pendant la phase de développement ou de refonte, il est fréquent d’interdire l’accès aux robots.
Exemple pour bloquer l’intégralité d’un site :
User-agent: *
Disallow: /
⚠️ Pensez à supprimer cette ligne avant la mise en production, sans quoi le site restera invisible des moteurs.
Robots.txt et IA génératives
Avec la montée en puissance des crawlers utilisés par les LLM (ChatGPT, Perplexity, Claude.ai…), plusieurs robots apparaissent dans les logs :
ChatGPT-User,
GPTBot,
CCBot,
ClaudeBot,
- etc.
Il est possible de leur interdire l’accès via des règles spécifiques :
User-agent: GPTBot
Disallow: /
User-agent: ChatGPT-User
Disallow: /
Googlebot continue pour sa part de crawler en vue de l’indexation classique, mais aussi de l’usage dans les IA Overviews.
Exemple de fichier complet pour WordPress
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /?s=
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.monsite.com/sitemap_index.xml
Ce fichier :
- Bloque les pages sensibles,
- Autorise les appels Ajax utiles au bon fonctionnement,
- Spécifie le sitemap pour les robots.
A retenir
Le fichier robots.txt est un outil aussi simple que stratégique. Il agit en amont du SEO, dès l’étape de crawl, et influence directement ce que Google peut voir, ou ignorer, sur un site. Bien configuré, il améliore la performance du crawl, la pertinence de l’indexation et la répartition des ressources serveurs.
Il doit être utilisé avec rigueur, testé régulièrement et révisé à chaque modification de structure du site. Dans une stratégie SEO moderne, il s’inscrit comme un garde-fou technique, garant de la qualité de l’indexation.
FAQ : Questions fréquentes sur le robots.txt
Quelle est la différence entre robots.txt et meta robots ?
Le fichier robots.txt empêche l’exploration des pages par les robots (crawl), tandis que la balise meta robots empêche l’indexation. Si une page est bloquée dans le robots.txt, Google ne pourra même pas lire la balise meta. À l’inverse, une page autorisée au crawl mais avec une balise noindex pourra être explorée, mais ne s’affichera pas dans les résultats de recherche.
Peut-on utiliser robots.txt pour protéger du contenu sensible ?
Non. Le fichier robots.txt est accessible publiquement à tous via l’URL exemple.com/robots.txt. Il ne sécurise rien. Pour protéger des contenus confidentiels, il faut utiliser une authentification serveur ou restreindre l’accès via .htaccess ou des permissions.
Comment tester un fichier robots.txt ?
Tu peux utiliser des outils comme Screaming Frog, Ryte, Ahrefs ou SEMrush pour simuler l’exploration par les robots. Ces outils permettent de vérifier si une page est bloquée ou accessible selon les règles définies. En ligne de commande, la commande curl -I est également utile pour tester les headers.
Doit-on bloquer les fichiers CSS ou JS ?
Non, au contraire. Googlebot a besoin d’accéder aux fichiers CSS et JS pour comprendre le rendu réel de la page. Bloquer ces fichiers peut entraîner une mauvaise interprétation de la structure, des erreurs dans l’ergonomie mobile ou un impact négatif sur le SEO.
Comment bloquer ChatGPT, GPTBot ou Claude.ai ?
Tu peux interdire l’accès à ces robots IA en les ciblant via leur User-agent. Exemple à insérer dans le robots.txt :
User-agent: GPTBot
Disallow: /
User-agent: ChatGPT-User
Disallow: /
User-agent: ClaudeBot
Disallow: /
Cela limite l’accès de ces agents à tes pages, mais ne garantit pas à 100 % l’exclusion, surtout si ton contenu a déjà été indexé ailleurs.
Aller plus loin
- Budget de crawl : gérer efficacement l’exploration de votre site
- Sitemap XML : faciliter la découverte de vos contenus stratégiques
- Comprendre l’impacte du temps de chargement
Ce contenu a été rédigé par Antoine Blot, consultant SEO à Montréal, spécialisé dans l’optimisation des contenus pour les moteurs de recherche et les intelligences artificielles.