Every site we ship out of Xagio Studio this year goes live with an llms.txt file. Clients see it in the handover list and ask the same question: do I actually need this, or is it the new meta keywords tag?
Honest answer: it's cheap, it's useful, and it will not rank you. Here's what it is, what it really does in 2026, and how to write a good one in about 20 minutes.
What llms.txt actually is
llms.txt is a plain Markdown file that sits at the root of your site, at yoursite.com/llms.txt. Jeremy Howard of Answer.AI proposed it on 3 September 2024. The idea is simple. A language model has a limited context window and no patience for navigation menus, cookie banners and JavaScript. So you hand it a short, clean map: who you are, what you do, and links to the pages worth reading.
Think of it as the brief you'd give a new freelancer on day one. Not the whole website. The one page that explains the website.
The format
The spec is short and strict about order:
- An H1 with the name of the site or project. This is the only required part.
- A blockquote with a one or two sentence summary.
- Optional plain paragraphs with the details a model needs to understand the rest. No headings here.
- Any number of H2 sections, each a list of links in the form
[name](url): short note. - By convention, a section called Optional for links an agent can skip when it's short on space.
A minimal file looks like this:
# Northside Dental
> Family dental clinic in Novi Beograd. Checkups, implants and emergency appointments, Monday to Saturday.
We see new patients within 48 hours. Prices are fixed and published.
## Services
- [Implants](https://northside.example/implants): from €690, two visits
- [Emergency appointments](https://northside.example/emergency): same day, call before 10:00
## Optional
- [Blog](https://northside.example/blog)
The spec also suggests publishing a clean Markdown copy of important pages next to the HTML, at the same URL with .md added. Nice to have. Most small business sites can skip it.
What llms.txt does not do
This is where the hype runs ahead of reality, so let's be precise.
- It is not a ranking factor. Google says it plainly in its guidance on AI features: "You don't need to create new machine readable files, AI text files, or markup to appear in these features."
- It is not robots.txt. It doesn't allow or block anything. If you want to control which AI crawlers read your site, that still happens in
robots.txtand at your server or CDN. - It is not a guaranteed input. None of the big AI search providers has documented that its crawlers read llms.txt or treat it as a signal. OpenAI's crawler documentation, for example, only talks about robots.txt. Independent log studies keep finding very few requests for the file.
- It is not a keyword dump. Stuffing it with "best plumber Belgrade cheap plumber Belgrade" helps nobody, including you.
So why do I still ship one on every site?
Because it costs 20 minutes and the upside is real. It's just smaller and more practical than the LinkedIn posts promise.
Agents and developer tools do use it
Documentation platforms generate llms.txt automatically, and a lot of developer tooling looks for it when a model needs to read a site on demand. When someone pastes your URL into an assistant and asks "is this company any good?", a clean summary with your real prices and service area beats letting the model guess from your footer.
One place for the facts AI gets wrong
The complaint I hear most: "ChatGPT says we're closed on Saturdays" or "it quoted a price from 2022". You can't edit what a model already learned. You can make sure the current facts are written down in one obvious, machine-friendly place: legal name, location, hours, prices, and what you don't do.
It forces you to explain your business in three sentences
Half the clients who write their first llms.txt end up rewriting their homepage headline afterwards. If you can't fit what you sell into the blockquote, your visitors can't either.
Where it fits in Xagio Studio
In Xagio Studio every site ships with an llms.txt and an Open Knowledge Format bundle, built from the same data as the pages, so neither drifts out of date. Traffic & Analytics then logs every AI fetch, so we don't have to guess which files bots touch. And the independent log studies are clear on one thing: assistants mostly read your normal pages. llms.txt is the cover letter, not the CV. Fast, server-rendered HTML with clear headings still does the heavy lifting.
How to write one in 20 minutes
- Name it. An H1 with your brand exactly as you want it written.
- Summarise it. One blockquote: what you do, for whom, where. Read it out loud. If it sounds like a slogan, rewrite it as a fact.
- Add the hard facts. Three to six short lines: legal name, city or service area, opening hours, starting prices, languages, response time.
- List the pages that sell. An H2 for services or products, one link per line, each with a note that adds something the title doesn't.
- Add proof. An H2 with case studies or your portfolio. Models love concrete numbers with a source.
- Park the rest under Optional. Blog, legal pages, careers.
- Publish it at the root. UTF-8, served as plain text, reachable at
/llms.txtwithout a login or a redirect chain.
Here's how this site generates its own file. It's an Astro endpoint that reads the same data the pages use, so prices and services can't go stale:
// src/pages/llms.txt.ts
export const GET = () => {
const lines = ["# TailoredFix", "", "> Senior web developer in Belgrade..."];
for (const s of services) lines.push(`- [${s.title}](${url(s.slug)}): ${s.pitch}`);
return new Response(lines.join("\n"), {
headers: { "Content-Type": "text/plain; charset=utf-8" },
});
};
You can read the result at tailoredfix.com/llms.txt. On WordPress you don't need code: the Xagio SEO plugin generates llms.txt for you, and several other SEO plugins now do too. Just check the output. Auto-generated files often list every tag archive and miss your prices.
llms.txt vs robots.txt
| robots.txt | llms.txt | |
|---|---|---|
| Purpose | Tells crawlers what they may fetch | Tells models what your site is and what to read |
| Who reads it | Every major crawler, documented | Some agents and tools; undocumented for the big AI search engines |
| Can it block AI? | Yes, as a request | No |
| SEO effect | Big, if you get it wrong | None |
If what you really want is to see which AI bots visit you and decide who gets in, read ChatGPT is already visiting your website. That's where the control actually lives.
Checklist
- The file is at
/llms.txtand returns 200, not a 301 or a login page - H1 first, then a factual blockquote, in that order
- Legal name, location, hours and starting prices written as plain facts
- Every link is absolute, live, and points to a page that loads without JavaScript
- Every link has a note that adds information
- No keyword lists, no marketing superlatives
- Regenerated or reviewed whenever prices or services change
- robots.txt still controls crawler access
Does your site need one?
If you sell services, publish documentation, or have facts that AI keeps getting wrong: yes. It's 20 minutes, and it's the cleanest place to state the truth about your business. If you're hoping it will move your Google rankings: no. Spend those 20 minutes on your title tags instead.
If you want it done properly, together with the robots.txt rules, the schema and the pages that actually get cited, that's part of my SEO work and every technical SEO audit. Or just send me your URL and I'll tell you what your site says to an AI right now.



