Guide
The llms.txt format, explained
llms.txt is a small Markdown file at your site’s root that hands large language models a clean, curated map of your most useful content. Here’s how to write one that scores 100.
- How to create an llms.txt fileA practical, step-by-step guide to writing a spec-compliant llms.txt file: the H1 title, summary, sections, links, and where to host it.
- llms.txt vs robots.txt vs sitemap.xmlThese three files look similar but do completely different jobs. Here's exactly what each one controls and why llms.txt is not an access-control file.
- What is llms-full.txt?llms-full.txt is the full-content companion to llms.txt. Learn when to publish one, how it differs, and how big sites like Anthropic and Vercel use both.
- Does llms.txt help SEO?llms.txt won't change your Google rankings directly. Here's what it actually does, why it matters for AI answers, and when it's worth your time.
- Adding llms.txt to WordPressThree ways to publish a spec-compliant llms.txt on WordPress — plugin-free upload, a snippet, or a plugin — plus how to verify it.
- llms.txt examplesAnnotated llms.txt patterns — a minimal file, a docs-heavy file, and the llms-full.txt pairing — so you can copy the structure that fits your site.
- Which AI crawlers read llms.txt?A practical rundown of the AI crawlers and answer engines — GPTBot, ClaudeBot, PerplexityBot and more — and how llms.txt and robots.txt control what they see.
- Common llms.txt mistakesThe llms.txt errors we see most — multiple H1s, no summary, broken or relative links, wrong content type, bloated files — and exactly how to fix each one.
- llms.txt for documentation sitesDocs sites are the ideal llms.txt use case. How to generate one for Docusaurus, MkDocs, Mintlify and others — plus when to add llms-full.txt and Markdown page versions.
- What is llms.txt?llms.txt is a small Markdown file that hands AI models a clean, curated map of your site's most useful pages. Here's what it is, why it exists, and who needs one.
- Adding llms.txt to Next.jsTwo clean ways to serve a spec-compliant llms.txt from a Next.js app — the public/ folder for a static file, or a route handler for generated content — plus how to verify it.
- How to test your llms.txtBefore you publish, confirm your llms.txt is spec-compliant and every link resolves. Here's what to check — structure, link reachability, best practices — and the fast way to do it.
- How to make a website agent-readyThe three layers that make a site usable by AI agents — llms.txt for crawler context, WebMCP for in-browser tools, and A2A for agent-to-agent calls — with the working code we shipped on this validator.
- A2A: let AI agents call your siteA2A (Agent2Agent) is the open protocol that lets one AI agent discover and call another over the network — no browser, no scraping. Here's what it is and how any website can expose a skill, with the working agent we run on this validator.
- Adding llms.txt to a Shopify storeShopify now generates llms.txt natively. Here's how to find it, customize the content with a theme template or app, and keep it useful for AI shopping agents.
- Adding llms.txt to a Wix siteWix can manage your llms.txt from the SEO settings on supported plans. Here's how to find it, edit it, and what to do if your plan doesn't have it yet.
- Adding llms.txt to a Squarespace siteSquarespace doesn't serve root text files directly, but you can upload your llms.txt and point /llms.txt at it with a URL Mapping. Step by step.
- Adding llms.txt to a Webflow siteWebflow can't serve an arbitrary root file by default, but you can host your llms.txt and point /llms.txt at it. Here are the practical options.
- Adding llms.txt to a Ghost siteGhost doesn't drop a root file for you, but serving it from your web server, or redirecting to a hosted file, gets a working llms.txt live. Step by step.
- Adding llms.txt to a Framer siteFramer added native static files in 2026 — upload your llms.txt from the Files tab under Domains, publish, and it's live at the root. Here's the full flow.
- Adding llms.txt to a Drupal siteDrupal has modules that generate /llms.txt from your content, or you can drop a static file in the docroot since you control the server. Both covered.
- Adding llms.txt to a Joomla siteJoomla is self-hosted, so the simplest reliable way to add llms.txt is to drop the file in your site's web root. Step by step.
- Adding llms.txt to a static site generatorStatic generators copy a static/public folder straight to your site root. Here's exactly where llms.txt goes in Hugo, Jekyll, Astro and Eleventy.
- Adding llms.txt to Magento (Adobe Commerce)Magento can generate llms.txt with an extension, or you can serve a static file from the web root. Both methods, step by step.
- Adding llms.txt to HubSpot CMSHubSpot has no native llms.txt yet, but the File Manager plus a URL redirect get one live at your root. Step by step.
- Adding llms.txt to a Bubble appBubble can't serve a plain-text root file by itself, but an edge proxy or a hosted file with a redirect get a working llms.txt live. Here's how.
- Adding llms.txt to a Notion siteNotion's native publishing can't serve a root text file, but an edge proxy or a Notion-site platform gets a working llms.txt live. Your options.
- Adding llms.txt to a Carrd siteCarrd can't serve a root text file on its own — here's the honest, working way to get an llms.txt live for a Carrd site.
Where it lives
Serve it as plain text at https://yourdomain.com/llms.txt. An optional companion, llms-full.txt, can hold the full expanded content.
The structure
The format uses Markdown in a fixed order so it’s both human- and machine-readable:
- An H1 title — the project or site name. This is the only required element.
- A blockquote summary — one or two sentences of essential context, right under the title.
- Optional free prose — a few sentences of detail, with no headings.
- H2 sections with link lists — grouped links to your key resources.
- An “Optional” section — links here are treated as lower priority and may be skipped for shorter context.
A minimal example
# Example Project
> A concise summary that gives an LLM the context it needs.
## Docs
- [Quick start](https://example.com/start): Get going in five minutes
- [API reference](https://example.com/api): Full endpoint docs
## Optional
- [Changelog](https://example.com/changelog): Release history
Best practices
- Use absolute
https:// URLs for every link.
- Add a short
: description after each link to guide models.
- Keep the summary tight and specific.
- Make sure every link actually resolves — broken links waste a crawler’s budget.
Frequently asked
Is llms.txt required?
No. It’s an emerging, voluntary standard. But as more AI tools read it, a clean file improves how your content is understood and surfaced.
How is the score calculated?
We weight structure (50%), link reachability (35%), and best practices (15%) into a single 0–100 score.
Validate your llms.txt →