Technical GuideUpdated June 2026

llms.txt Explained: What It Is and How to Implement It

The simple standard that gives AI assistants a clean map of your site — with the exact format and a copy-paste template.

Quick answer

llms.txt is a plain-text Markdown file at your domain root (yoursite.com/llms.txt) that gives AI assistants a curated map of your most important pages — the AI equivalent of sitemap.xml. Pair it with llms-full.txt, which inlines the full content of those pages for single-fetch ingestion. Serve both as Content-Type: text/plain, keep llms.txt to roughly 5-15 annotated links, and refresh whenever key pages change.

What llms.txt is — and is not

llms.txt is a proposed standard for a single plain-text file, written in Markdown, that sits at the root of your domain and tells AI systems which of your pages matter most and what each one covers. It is deliberately small and human-readable. It is not a replacement for sitemap.xml (which lists every URL for search engines) and it is not robots.txt (which controls crawler access). Think of it as a curated executive summary of your site, written for machines that synthesise answers.

The companion file, llms-full.txt, takes the same key pages and inlines their full text, so an assistant can ingest your core material in one request instead of crawling many pages. Together they reduce the chance an AI misreads, skips, or mis-attributes your content.

The format specification

The structure is intentionally minimal:

Copy-paste template

# YourCompany
> One-sentence description of what your business does and who it serves.

## Key pages
- [Homepage](https://yoursite.com/): Overview of the product and core value
- [How it works](https://yoursite.com/how-it-works): Step-by-step explanation
- [Pricing](https://yoursite.com/pricing): Plans and what each includes
- [FAQ](https://yoursite.com/faq): Common questions, answered

## Guides
- [Getting started guide](https://yoursite.com/guides/start): First steps
- [Best practices](https://yoursite.com/guides/best-practices): Recommendations

## Contact
- [Contact](https://yoursite.com/contact): How to reach the team

Replace the placeholders with your real URLs and descriptions. Keep descriptions factual and specific — they double as the snippets an assistant may quote. You can see a live example at reach.gera.services/llms.txt and the expanded version at reach.gera.services/llms-full.txt.

How to serve it in Next.js

In a Next.js App Router project, the cleanest approach is a route handler that returns the file body with the correct content type. Create app/llms.txt/route.ts that returns a new Response(body, { headers: { 'Content-Type': 'text/plain' } }). The same pattern serves llms-full.txt. Verify the response in a terminal with a HEAD request and confirm the content type is text/plain and the status is 200. Static hosting works too — drop the files in your public directory — as long as the content type is correct.

Common mistakes to avoid

Where llms.txt fits in the bigger picture

llms.txt is one layer of a complete AI-discoverability setup. On its own it is helpful but not sufficient — it works best alongside definitional content, FAQ schema, search-index presence, and a freshness cadence. For the full picture, read our getting-found-by-AI guide, the ChatGPT citation playbook, and the GEO strategy guide.

Across the Gera ecosystem, every product ships llms.txt and llms-full.txt — from GeraJobs to GeraCompliance.

Frequently asked questions

What is llms.txt?

llms.txt is a plain-text file placed at the root of a domain (yoursite.com/llms.txt) that gives AI assistants and crawlers a curated, machine-readable map of your most important content. It is to AI what sitemap.xml is to search engines: a concise index that helps systems find and understand your key pages quickly, written in Markdown and served as text/plain.

What is the difference between llms.txt and llms-full.txt?

llms.txt is the concise index — typically 5-15 of your most important links with one-line descriptions. llms-full.txt is the expanded version that includes the actual content of those pages inline, so an AI assistant can ingest your core material in a single fetch without crawling many URLs. Publish both: llms.txt for orientation, llms-full.txt for depth.

Does llms.txt actually work — do AI assistants read it?

Adoption is growing. Several AI tools and crawlers fetch llms.txt when present, and it is a low-cost, low-risk signal that improves machine legibility regardless. Even where a specific assistant does not yet consume it, publishing llms.txt forces you to articulate your most important pages clearly, which improves your overall content structure. It is a recommended part of any 2026 AI-discoverability setup.

Where do I host llms.txt and what content type?

Host it at the domain root: https://yoursite.com/llms.txt and https://yoursite.com/llms-full.txt. Serve it with Content-Type: text/plain so crawlers treat it as raw text rather than HTML. In Next.js App Router you can serve it from a route handler or a static file; either works as long as the response is text/plain and returns HTTP 200.

How often should I update llms.txt?

Update llms.txt whenever you publish or significantly change a key page, and review it at least every two weeks for competitive content. Because it is small, keeping it current is cheap. An out-of-date llms.txt that points to removed pages is worse than none, so prune dead links during each refresh.

Ship the full AI-discoverability stack

GeraReach implements llms.txt, schema, indexing, and AI-citation tracking across all 20 AI acquisition channels.