Short answer
llms.txt is a Markdown file at the root of your site — example.com/llms.txt — that states in plain language who you are, what you do, your key facts and your important pages, so language models can describe you correctly without interpreting every page. It is a community convention, not an official standard, and no major AI provider has committed to reading it. It takes under an hour, has no downside, and pays off the day an engine needs one unambiguous description of your organization.
What problem it solves
An AI answer engine describing your business has to infer what you are from your pages — navigation, marketing copy, whatever it happens to crawl. That inference goes wrong in predictable ways: a company that pivoted still reads as its old business, two brands with similar names get merged, a product page gets mistaken for the company itself.
llms.txt removes the guesswork. You write the description yourself, once, in prose, and the engine reads it as a whole instead of reconstructing it from fragments.
What it is not
- Not an official standard. It was proposed as a convention in 2024. There is no specification body behind it and no provider guarantees to fetch it.
- Not a ranking factor. It does nothing for classic Google positions. Its job is comprehension, not placement.
- Not a replacement for structured data. schema.org JSON-LD is what carries machine-readable entities and relationships. llms.txt carries the human explanation. You want both.
- Not an access control. That is robots.txt. Putting a private URL in llms.txt publishes it.
So why ship it? Because it costs an hour, it cannot hurt you, and the exercise of writing it forces you to state plainly what your company is — which usually surfaces contradictions you did not know you had. That alone has been worth it every time we have done it.
llms.txt, robots.txt and sitemap.xml
| File | Answers | Read by | Format |
|---|---|---|---|
| robots.txt | Which crawlers may fetch which paths? | All crawlers | Directives |
| sitemap.xml | Which URLs exist and when did they change? | Search engines | XML |
| llms.txt | Who are you and which pages matter? | Language models (by convention) | Markdown prose |
Access, discovery, understanding. Missing any of the three leaves a gap; llms.txt is the one almost nobody has filled yet.
The format
There is no validator to satisfy, but the convention is consistent and models parse it well:
- An H1 with the organization or project name.
- A blockquote (>) of two to four sentences: what you do, for whom, where, in which languages.
- Free prose for anything that needs stating — this is where disambiguation goes.
- H2 sections grouping links, each link followed by one sentence of context.
- An optional ## Optional section for secondary material.
A real example
This is the shape we use across our own sites — shortened, but nothing invented:
| Section | Content |
|---|---|
| # Name | The organization name, exactly as you want it repeated. |
| > Summary | “X is a … that does … for … in …, in English and French.” |
| Disambiguation | “X is one of four brands of Y. X is not Z — that is an unrelated company.” |
| ## Key facts | Legal entity, founding year, markets, languages, contact, founder. |
| ## Services | One link per offering, each with a sentence saying what it is. |
| ## Guides | Your citable content, with the question each page answers. |
| ## Optional | Sitemap, social profiles, anything secondary. |
You can read ours in full at zenitech.dev/llms.txt.
The two lines that do the most work
1. The summary paragraph
Write it so a stranger could read it once and repeat it back correctly. If it contains a slogan, cut the slogan. “Intelligence without limits” tells a model nothing; “a technology company in Québec that builds websites, SEO, CRM and AI agents for small businesses in Canada and the United States” tells it everything.
2. The disambiguation
If your name is not globally unique — and it almost never is — name the confusions explicitly: “not to be confused with …”. We have hit this three times in one group: a fintech whose name is one letter from an unrelated payments company, a construction platform sharing a domain history with a travel agency, and a founder who shares his name with a well-known physicist. In all three cases the engines were confidently describing the wrong entity until it was stated plainly.
What to keep out
- Anything unverifiable. One false claim gives an engine — and a buyer — a reason to distrust the whole file. Claims about your own technology are the first thing a technical reader checks.
- Private URLs. Dashboards, internal tools, staging. The file is public.
- Marketing adjectives. “Leading”, “innovative”, “world-class” carry no information and dilute the facts around them.
- Stale facts. An llms.txt that contradicts your site is worse than not having one.
Shipping it
- Write the file (40 minutes, honestly).
- Serve it at the root as text/markdown or text/plain — not as an HTML page.
- Check robots.txt does not block it: if you use Disallow: / with an allow-list, add Allow: /llms.txt for every AI user-agent you permit.
- Fetch it with curl from outside your network to confirm the content type and that no login wall intercepts it.
- Re-read it whenever a fact about the company changes.
One detail that catches people: if your site is behind an authentication layer that redirects unknown paths to a login page, /llms.txt can return a 200 containing HTML for a sign-in form. It looks fine in a browser and is useless to a model. Always check what the file actually returns.
Frequently asked questions
What is llms.txt?
A Markdown file at the root of a website (example.com/llms.txt) that states in plain language who the organization is, what it does, its key facts and its important pages, so language models can understand the site without interpreting every page.
Is llms.txt an official standard?
No. It is a community convention proposed in 2024, not a specification from a standards body, and no major AI provider has committed to reading it. It costs under an hour and carries no downside, which is why it is worth shipping — but it does not replace structured data, a clean robots.txt or content that answers real questions.
How is it different from robots.txt and sitemap.xml?
robots.txt controls access, sitemap.xml controls discovery, llms.txt provides understanding. They do not overlap.
Where does the file go?
At the root of the domain, served as text/markdown or text/plain, and allowed in robots.txt for the AI crawlers you permit.
Will it improve my Google rankings?
No. Its purpose is comprehension by AI answer engines, not placement in classic search results.
What should never go in it?
Anything unverifiable, any private URL, and marketing adjectives that carry no information.
Free diagnostic
Do the AI engines describe your business correctly today?
We ask the models the questions your customers ask them, and show you what they say about you — and where it is wrong. Remote, worldwide, in English or French.
Request the diagnostic →Read the GEO guide