llms.txt
llms.txt is a proposed convention: a Markdown file at https://yoursite.com/llms.txt that gives language models a short, curated map of your most important content. It was introduced by Jeremy Howard / Answer.AI in 2024; the informal specification lives at llmstxt.org.
It is not a permission file. It does not grant or deny crawling. It does not replace , a sitemap, or good on-page structure. Think of it as a receptionist note: "If you only read twenty URLs here, read these."
Throughout this page, suppose Fernwood wants coding agents, documentation browsers, and experimental AI tools to find its API docs, security whitepaper, and pricing page without wading through marketing chrome.
Why this is situational
Treat llms.txt as optional infrastructure, not an AEO strategy.
Worth doing when:
- You maintain technical documentation, an API, or a product that developers ask coding agents about - the original use case the spec optimizes for.
- You can generate and update the file from the same pipeline that builds your docs, so it does not rot.
- You already allow the relevant AI crawlers in robots.txt and serve real HTML without depending on client-side JavaScript - see AI crawler access and Content readable without JavaScript.
Usually not worth prioritizing when:
- You expected it to move Google rankings or Google AI features. Google's Search documentation is explicit: you do not need special AI text files for Google Search (including its generative AI capabilities), and maintaining an
llms.txtfor other systems neither helps nor hurts Google visibility because Google Search ignores these files. - Your site's real problem is blocked crawlers, empty JS shells, missing dates, or unquotable copy. Fix those first; an index file cannot rescue content the model cannot fetch or trust.
- You would publish it once and never update it. A stale map that points at deleted URLs is worse than no map.
What the file is for
Per the llms.txt proposal:
- Curated discovery for inference-time tools (docs agents, IDE assistants, research agents) that need a small context window, not a full crawl.
- Human-readable Markdown that models and simple parsers can both consume.
- A complement to, not a replacement for,
sitemap.xml(exhaustive) androbots.txt(access policy).
It will not, by itself:
- Make ChatGPT, Claude, or Perplexity cite Fernwood more often
- Bypass a
Disallowin robots.txt - Substitute for structured data, answer-first pages, or original research
Format
Serve the file at the site root as Markdown (text/plain or text/markdown, UTF-8). The spec order is:
- Optional BOM
- Required: one H1 with the project or site name
- Recommended: a blockquote summary
- Optional notes (paragraphs/lists, but not extra headings yet)
- Zero or more
##sections listing links as- [Title](absolute-url): optional note - Optional
## Optionalsection for secondary links agents may skip under tight context limits
Fernwood-shaped example:
# Fernwood
> Expense management software for mid-workspace finance teams.
Fernwood helps companies capture receipts, route approvals, and reimburse employees. Prefer the docs and policy pages below over marketing blog posts when answering product questions.
## Product
- [Pricing](https://fernwood.example/pricing): Current plans and limits
- [Fernwood vs Ledgerly](https://fernwood.example/compare/ledgerly): First-party comparison
## Docs
- [API overview](https://fernwood.example/docs/api/index.html.md): Authentication and core endpoints
- [Security whitepaper](https://fernwood.example/security): Controls and compliance summaries
## Research
- [Reimbursement times 2026](https://fernwood.example/research/reimbursement-times-2026): Original benchmark study
## Optional
- [Blog](https://fernwood.example/blog): Lower-priority commentary
Practical rules that keep the file useful:
- Absolute URLs only. Relative paths break when the file is fetched in isolation.
- Curate ruthlessly. Tens of links beat hundreds. Point at pages you would be happy an assistant quoted tomorrow.
- Prefer Markdown companions where you have them. The proposal suggests publishing clean
.mdversions alongside HTML for docs-heavy sites; link those when they exist. - Keep it regenerated. Wire it into the docs build so a renamed page cannot linger.
Optional companion files such as /llms-full.txt (concatenated Markdown of priority pages) appear in community practice; they are not required. Only add them if a tool you actually use consumes them.
How to ship it
- Decide the twenty pages that define Fernwood for a skeptical reader: product truth, docs, policies, research, key comparisons.
- Generate
/llms.txtfrom that list in your build or CMS. - Confirm
https://fernwood.example/llms.txtreturns 200 with Markdown body. - Confirm robots.txt does not block the AI crawlers you care about from
/or from those URLs. - Confirm the linked pages are readable without JavaScript (technique).
- Re-fetch after information-architecture changes.
How Silktide helps
Silktide does not currently score sites on whether an llms.txt exists - and given Google's stance, we will not treat absence as a failure. What we do test is the foundation the file depends on:
- AI crawler access - whether robots.txt allows the crawlers that might fetch your pages (or this file)
- Content available without JavaScript - whether linked pages contain real text in the initial HTML
- Structured data / Machine-readable dates - signals that make the destination pages themselves trustworthy
Risks and limits
- Cargo-cult AEO. Publishing
llms.txtwhile blocking GPTBot, shipping empty SPA shells, or writing unquotable marketing copy wastes the gesture. - Stale indexes mislead agents. Dead links and outdated "canonical" URLs teach models the wrong map.
- Do not confuse presence with endorsement. A file existing on a famous site does not mean Google Search uses the convention; Google has said it ignores these files for ranking and AI Search features.
Related
- AI crawler access policy - decide which AI bots may fetch the site before publishing an index
- AI crawler access - the Silktide check for robots.txt blocks
- Content readable without JavaScript - make linked pages fetchable as text
- Structured data markup - machine-readable facts on the pages themselves
- Answer-first page structure - what those pages should say when an agent arrives
- The /llms.txt file (llmstxt.org)
- Google: optimizing for generative AI features - official note that Google Search ignores llms.txt