What is llms.txt and do I need one?
An llms.txt file is a plain text file you publish at yourdomain.com/llms.txt that tells an AI reader, in ordinary sentences, what your business is and which pages on your site are worth reading. It is a community convention rather than a standard, no reader is obliged to fetch it, and it will not make an assistant recommend you. What it does is remove the guesswork for a reader that does fetch it, and it takes about twenty minutes to write.
One file, at the root of your domain, served as plain text. It is written for a machine reader, but in sentences, not in code. The usual shape is Markdown: a heading with the business name, a short paragraph saying what the business is, then links to the pages that matter, each with a sentence explaining what is on it.
It is a convention, not a ratified standard. No standards body approved it, and no crawler is required to read it. Treat it as cheap and occasionally useful rather than as a switch that turns something on. We publish one ourselves at /llms.txt, worth opening before you write yours. There is no selling in it anywhere.
It does not make an assistant recommend you. Nothing on your own website does that on its own. It is not a ranking signal, and publishing one does not put you into an answer.
It also does not override robots.txt. That file decides whether an automated reader may come in at all, and it is read first. If your robots.txt tells the AI crawlers to leave, your llms.txt is a note pinned to a door nobody may open. That is why it sits last on the fix list in our guide on why ChatGPT does not recommend your business, and why nothing on the site in our Cloudflare finding could be read at all while its robots.txt was telling GPTBot, ClaudeBot, Google-Extended, CCBot, Bytespider, Amazonbot and Applebot-Extended to go away.
What it does do is hand a reader that fetches it a correct description of your business in your own words, plus a shortlist of the pages you would give a customer. Writing one also forces your service area, hours and contact details into one place, which usually exposes that they disagree everywhere else.
In plain sentences:
That is the whole file. If it runs past a page, you are writing a brochure.
The business below does not exist. The name, the number and the address are invented for this example.
# Copperline Plumbing
Copperline Plumbing is a five-person plumbing company in Tempe, Arizona.
We do repairs, replacements and emergency call-outs for houses and small
commercial buildings. We do not take on new-build installation work.
Service area: Tempe, Mesa, Chandler and Scottsdale, Arizona.
Phone: (555) 555-0142
Email: office@example.com
Address: 100 Example Road, Tempe, AZ 85281
Hours: Monday to Friday 7am to 6pm. Emergency line answered 24 hours.
## Pages
- [Services](/services): every job we take, what it costs, how long it takes.
- [Emergency call-outs](/emergency): what counts as an emergency, our
response times, and the after-hours rate.
- [Service area](/service-area): the towns we cover and the ones we do not.
- [About](/about): how long we have traded, and our license number.
Read it as a stranger would. Every line is a fact someone could check.
Marketing copy. A file that opens with the word "premier" tells a reader nothing it can use. Facts survive being quoted. Adjectives do not.
Every URL on the site. That is what a sitemap is for. An llms.txt is a shortlist, and its value is that somebody chose.
A file that contradicts the site. Different hours, an old phone number, an address you moved out of two years ago. Two versions of a fact are worse than one, because now the reader has to pick. This is a file people write once and never open again, so check it whenever anything about the business changes.
Links to pages the crawlers cannot reach. Pointing at a page that robots.txt disallows, or that only renders once JavaScript runs, wastes the one thing this file is for.
Our audit scores four categories, and crawl access is 30 of the 100 points. That category covers whether the AI crawlers are allowed in, whether a sitemap and an llms.txt guide exist, and whether the site offers enough readable pages to sample. So the file is scored, and it is one check among several rather than the big one. Whether the crawlers are admitted at all is the big one, which is the ordering point above.
Every check passes, needs work, or fails, and the report quotes what it read. A pass here means the file is reachable, arrives as plain text rather than an HTML page, and starts with a Markdown heading. Needs work means it is there but has no heading. A fail means nothing was served, or a web page was, and the report prints the first bytes it got.
Type your domain followed by /llms.txt into a browser. Plain text means you have one, so read it as a stranger and check every fact against reality today. Your ordinary website means you do not, and plenty of sites answer with a 404 page dressed as a 200, which looks fine to you and is not a file to a reader expecting plain text.
Then check robots.txt in the same tab, because that is the file that decides whether any of this gets read. The free audit on our front page does both and quotes the lines it found.
Every figure in this guide is already published on this site, with the stored audit or probe file behind it. These are the pages it draws on.
The live audit on our front page runs the same deterministic engine every report on this site is built on, against any address you give it. No account, no card.