How to write llms.txt from your real site structure

By Ding Xiang · Published 2026-11-13 · Updated 2026-11-13

An llms.txt file is a Markdown file at the root of your site that gives language models a short, curated map: what the site is, which pages matter, and what each page contains. It is a proposal that some tools and crawlers read — not a standard every agent follows, and not a switch that makes a model recommend you. Treat it as documentation you control: cheap to publish, useless if it is inaccurate. This guide builds one the way we built ours, from the real structure of the site you are reading now.

1. Know what the file can and cannot do

Adoption is partial. Some crawlers fetch /llms.txt when they visit; others never look for it, and a model answering from its training data will not see your file at all. Publishing one does not change rankings, citations or recommendations in any way you can verify in advance. What it does do is give the agents that do read it a single accurate source for your product's name, prices and page layout, instead of leaving them to guess from navigation menus. Write it for that reader, and keep your expectations at that level.

2. Inventory your actual public pages

Start from what exists, not from your sitemap ambitions. List every public page a buyer might land on: home, pricing, features, documentation, terms, privacy, contact. Drop drafts, staging URLs and pages you would not want quoted. When we inventoried this site, the honest list was short — a home page, a pricing file, terms and privacy. A short true list beats a long padded one: every line in the file is a claim an agent may repeat, so each linked page has to be one you stand behind today.

3. Write accurate summaries and links

The format is simple Markdown: an H1 with the site name, a blockquote summary of the whole product in two or three sentences, then sections of links with one-line descriptions. Two rules do most of the work. First, the summary blockquote must state the facts a buyer checks first — what it is, what it costs, how it is delivered, and what it does not promise. Second, each link description must describe the page as it is now, not as the roadmap imagines it. If a price changes on your pricing page, it changes here in the same edit.

4. This site's file, annotated

Here is the opening of our own live llms.txt, exactly as served:

# Agent-Ready Audit

> A one-time, human-run check of whether AI agents can read your product correctly. Covers 1 domain and up to 5 public pages… Prices: Check $19 one-time, Plus $49 one-time, via PayPal. Delivered by email within 48 hours. This service does not guarantee AI recommendations, rankings, citations, or traffic.

Note what that one paragraph carries: the service shape (one-time, human-run), the scope (1 domain, up to 5 pages), both prices with their billing basis, the delivery window, and the disclaimer. An agent that reads only these lines still quotes our price correctly. The link sections below it describe each page in the same factual style — including the terms and privacy pages, because agents get asked about refunds too.

5. Publish, verify and maintain it

Put the file at /llms.txt on your production domain and request it in a browser: it should return HTTP 200 as plain text, not a redirect to your home page and not an HTML error page wearing a 200 status — both are common, and both make the file invisible. Then re-verify on a schedule that matches how often your facts change. Every price change, plan change or new page is a trigger to update the file in the same commit as the page itself. A stale llms.txt is worse than none: it gives agents a confident, wrong answer with your name on it.

That is the whole method: inventory honestly, summarise accurately, verify after publishing, and maintain it like the pricing page it mirrors.

Next step: run the free file check on your own site, or compare the audit plans if you want the contents reviewed by a person.

Related guide: an AI agent website checklist for product facts.