What Is llms.txt? Does It Work, and How to Create One (2026 Guide)
By Unlimited Dev, full-stack development studio · Updated 4 November 2026 · 11 min read
A practical, evidence-based guide to llms.txt: what it does, what it doesn't, how to write one that passes Lighthouse, and how to control AI crawlers like GPTBot and ClaudeBot.
What is llms.txt?
llms.txt is a plain-text Markdown file, published at yoursite.com/llms.txt, that gives large language models and AI agents a concise, curated overview of a website: what it is, the key facts, and links to the pages that matter most.
It was proposed by Jeremy Howard of Answer.AI in September 2024, and the llms.txt specification was updated to version 2 in August 2026 after two years of real-world adoption. The idea is borrowed from robots.txt and sitemap.xml: a predictable filename at a predictable location that machines know to look for.
The problem it solves is practical. Web pages are built for people, wrapped in navigation, scripts, cookie banners, and layout. Converting that back into clean text is slow and error-prone for an AI agent, and every wasted token costs time and money. An llms.txt file hands the agent the essentials directly.
Does llms.txt actually work?
It depends on what you expect it to do. Here's what the evidence supports:
- It's widely adopted: thousands of sites publish one, documentation platforms generate them automatically, and OpenAI, Anthropic, and Google publish llms.txt files for their own developer documentation.
- It's used on demand by agents: the spec's author notes that llms.txt is mainly used at inference time, when an agent (such as a coding assistant reading documentation) needs information while helping a user.
- Google audits it: Chrome's Lighthouse checks llms.txt as part of its experimental "agentic browsing" audits, describing it as a way to stop agents spending more time crawling to understand a site.
- It's not a search ranking factor: Google's guidance on AI Overviews and AI Mode says you don't need an llms.txt file to appear in them.
The honest verdict: llms.txt won't move your Google rankings, but it's a cheap, low-risk way to make your business easier for AI agents to understand, and it's increasingly checked by standard tooling. Treat it as one small part of generative engine optimisation, not a shortcut.
The llms.txt format (v2)
An llms.txt file uses Markdown in a fixed order, so it's readable by people, language models, and simple parsers alike:
- An H1 with the name of the site or project. This is the only required section.
- A blockquote with a short summary containing the key information needed to understand the rest of the file.
- Optional detail: paragraphs or lists (but no headings) explaining the business, facts, or how to interpret the links.
- Zero or more H2 sections, each a list of links in the form [name](url), optionally followed by a colon and a short note.
- An optional H2 section called "Optional" for secondary links an agent can skip when it needs to save space.
# Example Studio
> Example Studio builds web apps and mobile apps for startups in Manchester. Projects from £2,000.
Key facts:
- Founded 2024, based in Manchester, UK
- Contact: hello@example.com
## Services
- [Web app development](https://example.com/web-apps): Custom portals and SaaS platforms
- [Mobile apps](https://example.com/mobile): iOS and Android with React Native
## Guides
- [Pricing guide](https://example.com/blog/pricing): What a web app costs
## Optional
- [Sitemap](https://example.com/sitemap.xml): Every page on the siteVersion 2 also allows llms.txt files at subpaths (for example /docs/llms.txt covering just your documentation) and recommends offering clean Markdown versions of important pages at the same URL with .md added. Some platforms also publish an llms-full.txt containing full page content in one file; that's a common convention rather than part of the core spec. Markdown versions matter most for sites whose content is hard to extract from HTML, such as JavaScript-heavy or canvas-rendered builds like Flutter on the web.
What Lighthouse checks (and why our own file failed)
Lighthouse's llms.txt audit is deliberately simple. It fetches /llms.txt from your domain root and then:
| Response | Result |
|---|---|
| No file (any 4xx, such as 404) | Not applicable: no penalty, because the file is optional |
| Server error (5xx) or failed fetch | Fail |
| File served successfully | Must contain an H1, at least one Markdown link [text](url), and at least 50 characters |
When we tested our own llms.txt against these rules, it failed. The file had a proper H1, but listed our pages in a Markdown table with bare URLs, and Lighthouse only counts links written as [name](url). We rewrote it in the v2 format with linked page lists, and it now passes. You can see the result at unlimiteddev.io/llms.txt.
Two other common causes of failure: a server that redirects /llms.txt or returns your app's HTML page for unknown paths, and a file generated by a function that occasionally errors. Serving llms.txt as a static file avoids both.
How to create an llms.txt file
- Write a one-sentence summary of your business that includes what you do, who for, where, and a price point if you have one. This becomes the blockquote.
- List the key facts an AI should get right: location, contact details, services, what you don't offer, and current prices.
- Group your most important pages into H2 sections (for example Services, Guides, Company), each link written as [Page name](full URL): one-line description.
- Save it as llms.txt and serve it from your site root as plain text, with a 200 response.
- Test it: check it loads directly in a browser, run Lighthouse (npx lighthouse https://yoursite.com --only-audits=llms-txt), and ask an AI assistant questions about your business using only the file.
- Keep it current: update prices, services, and links whenever your site changes.
If you're on WordPress, Yoast SEO and AIOSEO can generate the file for you, and Wix creates one automatically. On Next.js, place llms.txt in the public folder so it's served as a static file. If a developer is building your site, add llms.txt and AI crawler rules to the brief (our guide on how to hire a full-stack developer covers what else to ask); it adds almost nothing to the cost of a build. If you'd rather have it built in properly from the start, it's part of how Unlimited Dev builds every site.
llms.txt vs robots.txt vs sitemap.xml
| llms.txt | robots.txt | sitemap.xml | |
|---|---|---|---|
| Purpose | Explain your site to AI agents | Tell crawlers what they may access | List every indexable page |
| Format | Markdown | Plain-text directives | XML |
| Audience | LLMs and AI agents | All crawlers and bots | Search engines |
| Controls access? | No | Yes (for crawlers that respect it) | No |
| Curated? | Yes: key pages only | N/A | No: comprehensive |
The most common misconception is that llms.txt lets you allow or block AI. It doesn't. Access is controlled by robots.txt.
Controlling AI crawlers: GPTBot, ClaudeBot, PerplexityBot
The major AI companies now run separate bots for separate jobs, so you can allow AI search (which can send you traffic and citations) while opting out of model training.
| Company | Search and citations | Fetches for a user's question | Model training |
|---|---|---|---|
| OpenAI (ChatGPT) | OAI-SearchBot | ChatGPT-User | GPTBot |
| Anthropic (Claude) | Claude-SearchBot | Claude-User | ClaudeBot |
| Perplexity | PerplexityBot | Perplexity-User | None listed |
| Googlebot (covers AI Overviews and AI Mode) | N/A | Google-Extended |
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: *
Allow: /
Sitemap: https://example.com/sitemap.xml- ClaudeBot is Anthropic's training crawler. Blocking it signals your future content shouldn't be used to train Claude, and doesn't affect Claude's search, which uses Claude-SearchBot (Anthropic's crawler documentation).
- GPTBot is OpenAI's training crawler. Blocking it doesn't remove you from ChatGPT search, which uses OAI-SearchBot (OpenAI's crawler documentation). OpenAI says robots.txt changes take around 24 hours to reach its search systems.
- User-initiated fetchers (ChatGPT-User, Perplexity-User) may not follow robots.txt, because a person asked for the page. Anthropic says Claude-User does respect it.
- Blocking Google-Extended doesn't remove you from AI Overviews or AI Mode, which run on regular Googlebot.
If you want AI search visibility, the key rule is simple: never block the search agents (OAI-SearchBot, Claude-SearchBot, PerplexityBot, Googlebot, and Bingbot).
llms.txt checklist
- File served at /llms.txt as plain text with a 200 response
- Starts with an H1 containing your business name
- Blockquote summary with what you do, for whom, where, and a price point
- Key facts and current prices in plain lists
- Pages listed as [name](full URL): description, under H2 sections
- Secondary links under an "Optional" section
- Passes Lighthouse's llms-txt audit
- robots.txt allows the AI search agents you want to be found by
- Reviewed whenever prices, services, or key pages change
llms.txt works best alongside the fundamentals: fast, server-rendered pages, structured data, and content that answers questions directly. Whether you're launching an MVP, building a mobile app, planning a new business website, rebuilding a web app, or an agency needing white-label development (how it works), Unlimited Dev builds those foundations in from day one.
Frequently asked questions
What is an llms.txt file?
An llms.txt file is a Markdown file at the root of a website (yoursite.com/llms.txt) that gives AI agents and large language models a short summary of the site and links to its most important pages, so they can understand it without crawling every page.
Does llms.txt really work?
It helps AI agents find accurate information about your site quickly, and it's widely adopted and audited by Chrome's Lighthouse. It is not a search ranking factor, and Google says it isn't needed to appear in AI Overviews or AI Mode.
Is llms.txt needed?
No, it's optional. Lighthouse marks a missing file as not applicable rather than failing. But it takes minutes to create, costs nothing, and gives AI agents a clean, accurate summary of your business.
How do I write an llms.txt file?
Start with an H1 containing your site name, add a one-sentence summary in a blockquote, list key facts in plain lists, then add H2 sections listing your important pages as [Page name](URL): description. Serve it as a static file at /llms.txt.
Does Google use llms.txt?
Google doesn't use llms.txt for search ranking or AI Overviews, and says you don't need one. However, Chrome's Lighthouse checks the file as part of its experimental agentic browsing audits.
What is ClaudeBot?
ClaudeBot is Anthropic's web crawler for collecting content that may be used to train Claude models. Blocking it in robots.txt opts your future content out of training, but doesn't affect Claude's search, which uses a separate agent called Claude-SearchBot.
Should I block GPTBot?
It depends on whether you're comfortable with your content being used to train OpenAI's models. Blocking GPTBot doesn't remove you from ChatGPT search, which uses OAI-SearchBot, so you can block training while staying visible in AI search.
What's the difference between llms.txt and robots.txt?
robots.txt tells crawlers which parts of your site they may access. llms.txt doesn't control access at all; it explains your site to AI agents and points them to your most useful pages.
Get a fixed quote for your build
Unlimited Dev is a full-stack development studio in Greenock, Scotland, working with startups, SMEs, and agencies across the UK and Ireland. £50–£120 per hour, or fixed project prices from £1,500.
Related: Full-stack development services · GEO: getting cited by AI search · Web app development · MVP development
More guides
White-Label Web Development for Agencies: How It Works, Costs, and Contracts (UK Guide)
A practical guide for UK agencies selling websites and apps they don't build in-house: how white-label development works, what it costs, how to price it to clients, and the contract terms that protect you.
How Much Does a Website Cost in the UK? 2026 Prices for Small Businesses
What a business website really costs in the UK in 2026: price ranges by type of site, the true three-year cost of Wix, Squarespace, and Shopify, running costs, and the red flags in a quote.
How Much Does It Cost to Build an App in the UK? (2026 Prices)
Real 2026 UK prices for building an app: what drives the cost, what each feature takes, the Apple and Google fees most guides get wrong, and how to launch for less.
Generative Engine Optimisation (GEO): How to Get Cited by ChatGPT and AI Search in 2026
How AI search engines pick the pages they quote, and a technical and content checklist for getting your business cited by ChatGPT, Perplexity, Gemini, and Google AI Overviews.
Flutter vs React Native vs Native: Which Should You Choose? (2026 Guide)
An honest comparison of the two leading cross-platform frameworks and fully native development, written for founders and businesses deciding how to build their app.
How to Hire a Full-Stack Developer in the UK (2026 Guide)
Seven steps to hiring the right full-stack developer for your startup, SME, or agency: from defining the work to signing a contract that protects your code.
How Much Does a Full-Stack Developer Cost in the UK? (2026 Pricing Guide)
Hourly rates, typical project prices, and the real cost of hiring versus outsourcing. A plain-English guide for startups, SMEs, and agencies budgeting for full-stack development.