llms.txt est un fichier Markdown, servi en général à l’adresse /llms.txt, qui donne aux agents IA une liste courte et commentée des pages les plus utiles d’un site. On le présente souvent comme un levier de référencement IA (ou GEO) pour apparaître dans les réponses des assistants, mais les sources publiques sont plus prudentes : le format est une proposition informelle, Google Search dit ignorer le fichier, et la documentation des robots d’OpenAI, d’Anthropic et de Perplexity porte sur robots.txt, pas sur llms.txt.
Il n’est pas inutile pour autant. Pour un site de documentation ou une API, c’est un index peu coûteux que les agents et les outils de développement peuvent lire à la demande. Ce guide présente le format, ce qui le distingue de robots.txt et de sitemap.xml, les cas où il vaut la peine d’en publier un, un exemple minimal et ce qui compte davantage pour les réponses des IA. Les positions des fournisseurs reflètent leurs pages publiques au 1er octobre 2026.
Portée de ce guide
Les positions des fournisseurs reflètent leur documentation publique au 1er octobre 2026. Le contrôle llms.txt de Sitelemetry confirme seulement que le fichier est accessible et ressemble à une liste de liens ; il ne valide pas le format, ne teste pas les liens et ne montre pas si une IA le lit.
Ce que prévoit la proposition llms.txt
Jeremy Howard a publié la proposition le 3 septembre 2024. Le texte actuel, sur llmstxt.org, est la version 2, modifiée le 10 août 2026. C’est une proposition informelle, maintenue dans un dépôt GitHub public et ouverte aux contributions, pas une norme de l’IETF ou du W3C. Aucun moteur de recherche ni fournisseur d’IA n’est tenu de la lire.
Le fichier est écrit en Markdown, avec des parties dans un ordre fixe :
- Un titre H1 avec le nom du site ou du projet. C’est la seule partie obligatoire.
- Une citation (blockquote) qui résume les faits essentiels.
- Des paragraphes ou des listes facultatifs pour le contexte, sans titres.
- Zéro, une ou plusieurs sections H2 contenant des listes de fichiers : des éléments de liste qui portent un lien, suivi éventuellement de deux-points et d’une note, comme
- [Tarifs](https://example.com/tarifs): formules et limites.
Une section intitulée Optional regroupe des liens secondaires qu’un agent peut ignorer quand il a besoin d’un contexte plus court.
Le fichier peut se trouver à la racine ou sous un chemin comme /docs/llms.txt. Il couvre les URL situées sous son chemin, et quand plusieurs fichiers s’appliquent, les agents devraient utiliser le plus spécifique. La proposition n’utilise pas /.well-known/, car les emplacements well-known n’existent qu’à la racine de l’origine et beaucoup d’auteurs ne contrôlent qu’un chemin sur un hébergement partagé.
La proposition suggère aussi de publier des copies propres des pages en Markdown à la même URL, en ajoutant .md (page.html.md) ou, depuis la version 2, en remplaçant l’extension (page.md). La version 2 ajoute deux relations de lien, envoyées sous forme d’éléments HTML <link> ou d’en-tête HTTP Link : rel="alternate" type="text/markdown" pour la copie et rel="describedby" pour le llms.txt qui couvre la page. Le texte actuel ne définit pas de fichier compagnon comme llms-full.txt ; quand un outil ou une plateforme de documentation en produit un, c’est sa propre convention.
Ce qui distingue llms.txt de robots.txt et de sitemap.xml
Les trois fichiers n’ont ni le même rôle ni les mêmes lecteurs.
| Fichier | Ce qu’il fait | Ce qu’il ne fait pas |
|---|---|---|
| robots.txt | Indique aux robots qui le respectent quelles URL ils peuvent demander (Robots Exclusion Protocol, RFC 9309). | Ce n’est pas un contrôle d’accès. La RFC précise que ses règles ne constituent pas une forme d’autorisation d’accès. |
| sitemap.xml | Liste les URL que vous jugez importantes pour que les moteurs de recherche les découvrent. | Une URL listée n’est pas forcément explorée ni indexée. |
| llms.txt | Une liste courte et commentée des pages clés, qu’un agent lit quand il a besoin d’une information. | Il n’autorise ni ne bloque l’exploration, n’influe pas sur l’indexation, et personne n’est tenu de le lire. |
La proposition trace la même frontière : robots.txt dit quels accès automatisés sont acceptables, tandis que llms.txt est consulté à la demande. Elle ajoute qu’un sitemap ne le remplace pas, car il ne contient souvent pas de versions Markdown des pages, n’inclut pas d’URL d’autres sites et couvre en général bien plus de contenu que n’en tient la fenêtre de contexte d’un modèle.
Pour autoriser ou bloquer un robot d’IA, modifiez donc robots.txt. Omettre une page dans llms.txt ne la cache pas, et l’y lister ne lève pas une règle robots.txt qui bloque un robot. Le guide robots.txt explique comment les règles s’appliquent.
Ce que Google et les fournisseurs d’IA ont dit de llms.txt
Voici ce que disent les sources primaires :
- Google Search. Son guide sur les fonctionnalités d’IA générative (mis à jour le 10 juillet 2026) indique qu’il n’est pas nécessaire de créer des fichiers lisibles par les machines, des fichiers texte pour l’IA ou du Markdown pour apparaître dans Google Search, y compris dans ses fonctionnalités d’IA, puisque Search ne les utilise pas. Il cite llms.txt nommément : en garder un pour d’autres services qui utilisent ce type de fichier ne pose pas de problème, mais il ne favorise ni ne pénalise la visibilité ou le classement dans Google Search.
- Chrome Lighthouse. La catégorie expérimentale Agentic Browsing (Chrome 150 ou plus récent, sans score sur 100) comprend un audit llms.txt qui cherche le fichier à la racine du domaine. Une erreur serveur est signalée ; une 404 est marquée « non applicable », car fournir le fichier est facultatif. C’est un contrôle de présence dans un outil de développement, pas une déclaration selon laquelle un produit de recherche ou d’IA utiliserait le fichier.
- OpenAI. Sa page sur les robots d’exploration explique les règles robots.txt pour OAI-SearchBot (résultats de recherche dans ChatGPT) et GPTBot (entraînement), et précise que les visites de ChatGPT-User déclenchées par un utilisateur peuvent ne pas suivre robots.txt. Elle ne dit pas qu’OpenAI lit le llms.txt d’un site.
- Anthropic. Son article d’aide liste ClaudeBot, Claude-User et Claude-SearchBot et indique qu’ils respectent robots.txt. Il ne mentionne pas llms.txt.
- Perplexity. Sa documentation présente PerplexityBot pour les résultats de recherche et Perplexity-User, déclenché par l’utilisateur, qui ignore en général robots.txt. Elle ne dit pas que Perplexity lit le llms.txt d’un site.
- Microsoft Bing. Aucune consigne de Microsoft ou de Bing sur llms.txt n’a été trouvée. L’annonce de février 2026 d’AI Performance dans Bing Webmaster Tools ne mentionne pas le fichier.
Au 1er octobre 2026, aucun de ces fournisseurs ne documente l’usage du llms.txt d’un site pour le classement, les citations ou les réponses. Plusieurs en publient un pour leur propre documentation pour développeurs (OpenAI, Anthropic, Perplexity et la documentation de l’API Gemini de Google), tout comme Cloudflare. Publier un fichier pour sa propre documentation n’est pas la même chose que lire celui des autres sites.
Quand llms.txt vaut la peine, et quand il peut attendre
Le fichier est rapide à écrire et, selon Google, sans effet négatif dans Search. Le vrai coût, c’est de le tenir à jour.
| Type de site | Priorité | Pourquoi |
|---|---|---|
| Documentation pour développeurs, références d’API, SDK | À ajouter | Les développeurs orientent leurs agents de code vers la documentation. Un index choisi évite à l’agent de deviner quelle page lire. |
| Logiciels avec de nombreuses pages d’installation ou d’intégration | À ajouter | Une carte courte de l’installation, des limites et des tarifs aide un agent à répondre aux questions pratiques à partir des pages à jour. |
| Projets open source | À ajouter | La documentation est souvent déjà en Markdown : la génération du site peut produire le fichier et les copies des pages. |
| Sites vitrines et petites entreprises | Faible priorité | Quelques pages bien liées entre elles sont déjà faciles à lire. |
| Boutiques en ligne, sites d’actualité, blogs | Faible priorité | Le contenu change sans cesse, et une liste tenue à la main devient vite obsolète. |
Un test rapide : un développeur collerait-il votre URL dans un assistant de code pour lui demander de travailler avec votre produit ? Si oui, un llms.txt accompagné de copies Markdown des pages clés vaut bien un après-midi. Si vous voulez être cité dans des réponses sur un service local, consacrez plutôt cet après-midi à des contenus de page clairs et à l’accès des robots. Si les agents doivent agir sur votre produit plutôt que lire à son sujet, regardez du côté d’une API ou d’un serveur MCP ; l’introduction à MCP explique comment cela fonctionne.
Un exemple minimal de llms.txt pour un petit site
Un fichier complet pour une application fictive de planning, en français, sur example.com :
# Example Planning
> Example Planning est une application web qui sert à organiser les plannings d’équipe des petits cafés et commerces. Une offre gratuite couvre un établissement ; les offres payantes en ajoutent d’autres.
Example Planning ne gère pas la paie. Dernière relecture : 2026-10-01.
## Documentation
- [Prise en main](https://example.com/docs/prise-en-main.md): Créer un établissement, ajouter l’équipe et publier une première semaine
- [Modèles de créneaux](https://example.com/docs/modeles.md): Créneaux récurrents, pauses et règles de remplacement
- [Référence de l’API](https://example.com/docs/api.md): Points d’accès REST, authentification et limites de débit
## Produit
- [Tarifs](https://example.com/tarifs): Offres, limites et contenu de chaque offre
- [Données et confidentialité](https://example.com/confidentialite): Lieu de stockage des données, export et suppression
## Optional
- [Journal des versions](https://example.com/journal): Notes de version par mois- Gardez le nom Optional. C’est l’intitulé que la proposition reconnaît pour les liens secondaires ; les autres titres de section peuvent être en français.
- Servez-le en texte.
https://example.com/llms.txtdoit répondre avec le statut 200 et le Markdown lui-même. Les applications monopages (SPA) renvoient parfois leur page HTML de base pour les chemins inconnus : vérifiez la réponse aveccurl. - Les copies Markdown sont facultatives. Si vous n’en publiez pas, liez les pages HTML habituelles, comme le fait la section Produit ci-dessus.
- Restez factuel dans le résumé. Dites ce qu’est le produit, à qui il s’adresse et ses limites importantes. Laissez les slogans de côté.
- Écrivez des notes, pas des consignes. Demander à un modèle de vous recommander n’apporte rien qu’un lecteur puisse vérifier.
- Soyez sélectif. Dix bons liens valent mieux que deux cents ; la liste complète des URL a sa place dans le sitemap.
Avec des copies Markdown, chaque page HTML peut pointer vers sa copie et vers le fichier qui la couvre :
<link rel="alternate" type="text/markdown" href="/docs/prise-en-main.md">
<link rel="describedby" href="/llms.txt">Générateurs, vérificateurs et validateurs : garder le fichier à jour
Un fichier qui indique un ancien prix ou une page supprimée peut faire pire que pas de fichier du tout, car un agent qui le suit risque de répéter des informations périmées.
- Produisez-le avec la documentation. Si la documentation est générée à partir de Markdown, produisez llms.txt et les copies des pages à la même étape de génération.
- Inscrivez-le dans la checklist de mise en production. Quand les prix, les noms d’offres, les plateformes ou les URL changent, mettez le fichier à jour dans la même version.
- Vérifiez les liens automatiquement. Chaque URL doit répondre 200 sans chaîne de redirections. Cette ligne de commande shell affiche le code de statut de chaque lien absolu du fichier :
curl -s https://example.com/llms.txt | grep -oE 'https://[^) ]+' | while read -r u; do echo "$(curl -s -o /dev/null -w '%{http_code}' "$u") $u"; doneUn générateur de llms.txt convient pour un premier jet construit à partir d’un sitemap ou d’un dossier de documentation. Il ne peut pas décider quelles pages comptent, et il peut inclure des pages en noindex ou bloquées dans robots.txt. Relisez le résultat comme toute page que vous publiez.
Un vérificateur ou validateur de llms.txt peut confirmer la partie mécanique : le fichier est accessible, le H1 vient en premier et les liens répondent. Aucun vérificateur ne peut vous dire si un assistant lit le fichier, car les fournisseurs ne le documentent pas.
Ce qui compte davantage pour les réponses des IA
Si vous voulez être une source utilisable par les réponses des IA, voici ce qui passe en premier :
- L’accès des robots que vous voulez accueillir. Les robots d’IA se règlent dans robots.txt, chacun sous son propre identifiant. OpenAI distingue OAI-SearchBot (recherche dans ChatGPT) de GPTBot (entraînement), Anthropic distingue Claude-SearchBot de ClaudeBot, et Perplexity documente PerplexityBot. L’identifiant Google-Extended est un réglage robots.txt, pas un robot distinct : il détermine si le contenu exploré par Google peut servir à l’entraînement et à l’ancrage (grounding) de Gemini et, selon Google, n’influe ni sur l’inclusion ni sur le classement dans Google Search. Autoriser les robots de recherche tout en bloquant ceux d’entraînement est un choix légitime. Attention : un groupe
User-agent: *avecDisallow: /bloque tout robot qui suit robots.txt et n’a pas de groupe à lui. OpenAI indique qu’une modification de robots.txt peut mettre environ 24 heures à atteindre ses systèmes. - L’authentification pour les contenus privés. Les robots déclenchés par un utilisateur, comme ChatGPT-User et Perplexity-User, peuvent ne pas suivre robots.txt, et la RFC 9309 précise que les règles robots ne sont pas une autorisation d’accès.
- Un contenu clair sur la page. Les consignes de Google pour ses fonctionnalités d’IA renvoient à un contenu unique et utile et à une structure technique claire, prête pour la découverte et l’indexation, pas à des fichiers spéciaux. Répondez directement à de vraies questions dans le HTML d’une page accessible. Le guide de la visibilité IA déroule un exemple.
- Des données structurées fidèles à la page. Google indique que les données structurées ne sont pas nécessaires pour sa recherche par IA générative et qu’aucun balisage schema.org particulier n’est requis ; il les recommande toujours pour l’éligibilité aux résultats enrichis dans Search. Si vous utilisez JSON-LD, gardez-le cohérent avec les informations visibles.
- Des informations cohérentes. Nom, prix, offres, zones desservies et coordonnées doivent concorder entre vos pages, vos données structurées et votre llms.txt. Si vos propres pages se contredisent, tout système qui les résume doit deviner.
Aucun fichier ne peut amener un assistant à vous citer. Ce que vous maîtrisez, c’est que vos pages soient accessibles, lisibles et exactes ; le guide du SEO technique couvre les bases de l’exploration et de l’indexation.
Ce que Sitelemetry vérifie à propos de llms.txt
Le domaine visibilité IA de Sitelemetry fait partie de l’audit des six domaines (sécurité, SEO technique, visibilité IA, accessibilité, performance et intégrations), disponible à partir de 49 $ US par mois avec l’offre Starter. Son contrôle llms.txt est limité :
- Il demande une fois
/llms.txtà la racine de l’origine et indique le statut et la taille. - Le fichier n’est considéré comme présent que s’il répond avec un statut 2xx, n’est pas vide, n’est pas du HTML et ressemble à un guide de liens : une ligne commençant par
#ou-, une URL, ou des mots comme docs ou sitemap. Un fichier absent apparaît comme un résultat partiel, avec une recommandation. - Il ne valide pas le format, ne suit ni ne teste les liens, et n’affirme pas qu’un système d’IA lit le fichier.
Le même domaine vérifie dans robots.txt les blocages de tout le site visant 16 robots d’IA nommés, dont GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot et Google-Extended. Les règles sous User-agent: * et les interdictions partielles ne sont pas attribuées à des robots d’IA en particulier (un blocage de tout le site pour tous les robots est signalé à part), et la liste est fixe : vérifiez vous-même les robots qui n’y figurent pas, comme Claude-SearchBot ou Claude-User. Il relève aussi les données structurées JSON-LD, sans les valider par rapport à schema.org. L’audit lit le HTML statique d’un échantillon de pages sans exécuter JavaScript, et n’interroge ni ChatGPT, ni Claude, ni Perplexity, ni Google ; il ne suit pas non plus les citations dans les réponses des IA.
L’offre Free couvre uniquement les contrôles de sécurité. Le snapshot gratuit exécute huit contrôles passifs sans inscription ; il n’examine ni llms.txt, ni robots.txt, ni les données structurées, et ce n’est pas l’audit des six domaines. Le détail des offres figure sur la page des tarifs.
Questions fréquentes
llms.txt est-il une norme officielle ?
Non. C’est une proposition informelle de Jeremy Howard, publiée pour la première fois en septembre 2024 ; la version 2 est datée du 10 août 2026. Ce n’est pas une norme de l’IETF ou du W3C, et aucun moteur de recherche ni fournisseur d’IA n’est tenu de la lire.
llms.txt fera-t-il citer mon site dans ChatGPT, Perplexity ou les réponses IA de Google ?
Aucun fournisseur n’a documenté un tel effet. Google Search dit ignorer llms.txt : le fichier n’y favorise ni n’y pénalise votre visibilité. Au 1er octobre 2026, OpenAI, Anthropic et Perplexity décrivent leurs robots en termes de robots.txt et ne disent pas lire le llms.txt d’un site.
llms.txt peut-il bloquer les robots d’IA ou l’entraînement des modèles ?
Non. Il n’accorde ni ne refuse aucun accès. Utilisez robots.txt avec les identifiants documentés par chaque fournisseur, comme GPTBot ou ClaudeBot pour les robots d’entraînement, et gardez les contenus privés derrière une authentification, car certains robots déclenchés par un utilisateur peuvent ne pas suivre robots.txt.
Un générateur de llms.txt suffit-il ?
Pour un premier jet, oui. Il vous reste à choisir les pages qui comptent, à rédiger des notes exactes, à retirer tout ce qui est bloqué dans robots.txt ou en noindex, et à régénérer le fichier quand la documentation change.
Comment vérifier mon llms.txt ?
Téléchargez-le et vérifiez le statut 200, du Markdown plutôt qu’une page HTML, le H1 en premier et des liens qui fonctionnent. L’audit expérimental de Lighthouse et le domaine visibilité IA de Sitelemetry vérifient tous deux que le fichier est présent ; aucun des deux ne peut dire si un assistant donné le lit.
Sources et lectures
- llmstxt.org : The /llms.txt file (proposition, v2)llmstxt.org
- Google Search Central : optimiser votre site pour les fonctionnalités d’IA générative de la recherche Googledevelopers.google.com
- Chrome for Developers : audit llms.txt de Lighthousedeveloper.chrome.com
- Chrome for Developers : notation de la catégorie Agentic Browsing de Lighthousedeveloper.chrome.com
- OpenAI : Overview of OpenAI crawlersdevelopers.openai.com
- Claude Help Center : Does Anthropic crawl data from the web, and how can site owners block the crawler?support.claude.com
- Perplexity : Perplexity crawlersdocs.perplexity.ai
- RFC 9309 : Robots Exclusion Protocolwww.rfc-editor.org
- Google : robots d’exploration courants de Google (Google-Extended)developers.google.com
- Google Search Central : en savoir plus sur les sitemapsdevelopers.google.com
Préparé par la rédaction de Sitelemetry. Les sources citées permettent d’approfondir chaque sujet.



