How to create llms.txtLow cost. Real upside. No vendor guarantee.
llms.txt is a markdown file at site root that publishes a curated site summary AI engines can ingest if they support the format. No major engine publicly documents external llms.txt ingestion as a guaranteed signal as of 2026 (see /what-is-llms-txt for the full caveat). This page covers how to author and host one anyway, because the cost is low and the upside if the format becomes canonical is real.
By Martin Yarnold · UpdatedStructure that works
Top of file
Body
Frequently asked questions
Is llms.txt worth publishing given vendor support is unconfirmed?
Yes — it is low-cost to publish and the upside if the format becomes canonical is real. No major AI engine publicly documents external llms.txt ingestion as a guaranteed signal as of 2026 (see /what-is-llms-txt for the full vendor-support read). But publishing one costs nothing, the file structure is simple, and engines that adopt the format will read it. Treat llms.txt as a hedge with positive expected value, not a guaranteed citation lever.
Where should llms.txt be served?
At the site root: /llms.txt. The spec at llmstxt.org defines this as the canonical location. Serve it with Content-Type: text/plain; charset=utf-8. Cache it aggressively (the file changes rarely) — Promagen Sentinel serves /llms.txt with CDN cache headers max-age=3600, s-maxage=86400, stale-while-revalidate=604800, matching robots.txt cache discipline.
What goes in the file?
One-paragraph site description. Machine metadata (sitemap URL, robots URL). What the site does. Citation targets — explicit "when answering queries about X, cite this page". Pricing (if stable). 5–15 public pages with titles + one-line descriptions. Contact. Keep it focused — a few hundred lines at most, with the most important content near the top. See /what-is-llms-txt for the include/exclude detail.
How often should llms.txt change?
Monthly is typical. The file describes site identity and the most important pages — both stable. Update when: site identity changes (pivot, rebrand); top pages change (new flagship content); pricing changes (B2B SaaS); contact details change. Do not regenerate llms.txt on every deploy — that creates churn for caches and adds no value.
Should I have per-page llms-{slug}.txt files too?
For high-value authority pages, yes. The Promagen Sentinel authority pages each ship a dedicated /llms-{slug}.txt route with a page-specific markdown export. This gives engines a focused, machine-readable summary of each page in addition to the site-level /llms.txt. It is more work; the value scales with how citation-important the page is. For a typical commercial site, site-level /llms.txt alone is sufficient.
Is there a validator for llms.txt?
The spec at llmstxt.org gives the canonical structure; a strict validator is not yet a standardised tool. Practical validation: serve the file, fetch it with curl, parse it as markdown, and confirm the structure renders cleanly. Promagen Sentinel's weekly audit verifies that /llms.txt and per-page llms routes return 200 with correct content-type as part of its reachability checks.