llms.txt is a proposed markdown file at a domain root that describes the site for machines. It is cheap to publish, widely recommended, and supported by less evidence than almost anything else in this category — which is exactly why it is a good test of whether a tool is willing to say so.
This site publishes one, checks for one, and weights it at 3.3 of the 100 points. Those three facts are only consistent if the check is about the cost of publishing, not the value of being read. That is the position this piece argues for.
What is llms.txt?
A markdown file at /llms.txt containing a title, a one-line summary and a set of links, written for a language model rather than a browser.
The convention is documented at llmstxt.org, which is the primary source and the only one worth reading before forming an opinion about it. The shape is deliberately simple: an H1 with the project name, a blockquote summary, then sections of links with one line of context each.
What does the scanner actually test?
Four structural properties: the file is larger than 20 bytes, it contains an H1, it contains a > summary line, and it contains at least three markdown links. Missing any of them is a partial pass.
What the file says is not judged. Three links to pages that do not exist pass the structure test, which is the clearest example on this site of a rule measuring the presence of a signal rather than its quality — and the rule page says so in as many words.
Does any crawler document reading it?
Not the ones we could open. OpenAI’s help centre and Anthropic’s crawler article both specify robots.txt as the control surface; neither commits to reading an llms.txt.
That is a statement about documentation, not about behaviour, and the difference matters. A crawl policy can be documented and still be ignored, and an undocumented convention can be adopted quietly. What can be said honestly is narrower: no vendor has published a commitment, so a site owner cannot reason from evidence to an expected outcome.
Then why weight it at all?
Because it is nearly free to publish, and a small weight is the correct price for a signal whose effect is unmeasured. The arithmetic is published rather than hidden.
| Rule | Points | Dimension weight | Ceiling on the total |
|---|---|---|---|
| The llms.txt structure check | 4 of 6 in the dimension | 5% | 3.3 of 100 |
| robots.txt is readable | 1 of 6 in the dimension | 5% | 0.8 of 100 |
| For comparison: crawler access | — | 16% | 16 of 100 |
| For comparison: machine readability | — | 12% | 12 of 100 |
A perfect llms.txt is worth 3.3 points. Allowing the crawlers in is worth 16% of the score, and getting the entity markup right is worth12%. A site deciding where to spend an afternoon has its answer in that comparison, and it is not the file.
What is the file genuinely good for?
Two things that have nothing to do with rankings: a readable summary for tools that do read it, and a forcing function for the site owner.
- Documentation sites and coding agents. A well-written llms.txt is a useful navigational summary for a tool summarising a repository or a docs tree, and that use does not depend on any search engine adopting it.
- Writing the summary is the exercise. Describing what the site is in one sentence, truthfully, exposes copy that cannot do it — and that sentence is needed in the meta description, the Organization node and the pitch anyway.
- It is cheap to keep correct. The links are the ones in the navigation, so a regeneration is a diff, not an essay.
What does a non-fictional one look like?
Short, and generated from the page rather than from a template. Every line below could be checked against the site it describes.
# Your Brand > One sentence on what the product does, written for a reader who has > never seen the site. ## Core pages - [Product](https://your-domain.com/product/): what it does and who it is for - [Pricing](https://your-domain.com/pricing/): what costs money and what does not - [About](https://your-domain.com/about/): who runs it and how to reach them ## Notes - The tool is free and requires no account.
The two failure modes are visible in that shape. A file generated from a template drifts the moment the site changes. A file generated from the page’s real title, description and navigation cannot describe something the site does not contain — which is the property the llms.txt studio is built around, and the reason it reads the homepage instead of asking you to type.
What should I do instead of optimising the file?
Fix what the score actually weights. Crawler access, entity markup and answer-first structure together carry more than four times the weight of the context file.
- Check
robots.txtadmits the crawlers you want citations from. This is the 16% dimension, and it is one file. - Declare the entity and its
sameAsprofiles. That is the 12% dimension and a dozen lines of JSON. - Rewrite headings as questions with a one-sentence answer underneath. That is the 10% dimension, and it costs editing rather than infrastructure.
- Publish the llms.txt after those, because it is a summary of a site you have already made describable.
The method behind those weights, including the argument for weighting this file low, is on the methodology page; the deployment details are in the llms.txt guide.