Check your /llms.txt file against the official spec. Verify heading structure, markdown links, blockquote summary, and formatting. Enter a site URL or paste content directly.
llms.txt is a proposed standard for making your website understandable to AI systems. Sometimes called an "AI sitemap" or "robots.txt for AI," it's a structured Markdown file placed at the root of your domain (/llms.txt) that provides an overview of your site's content, documentation, and APIs for tools like ChatGPT, Claude, and Perplexity.
Helps LLMs like ChatGPT and Claude understand your site without crawling every page.
Organized Markdown with headings and links gives AI systems the right context fast.
Just Markdown. No XML, no JSON. Easy to write, easy to maintain, easy to validate.
The llmstxt.org specification defines the structure AI systems expect. This validator checks each rule automatically.
Exactly one H1 heading as the first line, naming the project or site
A blockquote immediately after the H1 with a short description
Content organized under H2 headings like ## Docs, ## API, ## Examples
Resources as markdown links: - [Name](url): Optional description
Sections may be marked "Optional" to indicate non-essential content
File must be valid Markdown, UTF-8 encoded, served as text/plain or text/markdown
Missing H1File must start with a single # heading. Multiple H1s or starting with H2 is invalid.
No blockquoteA > blockquote summary should follow the H1 heading immediately.
Bad link formatLinks must use markdown syntax: - [Label](https://url): Description
Relative URLsAll links should be absolute URLs (https://...), not relative paths.
Too largeKeep llms.txt concise. AI systems have context limits; a focused file performs better.
Wrong MIMEServe as text/plain or text/markdown, not text/html.
A common question: how does llms.txt relate to robots.txt? They serve opposite purposes and work together.
robots.txt Exclusion Tells crawlers which pages to avoid. Controls access for search engines and AI bots. Blocks paths, enforces crawl-delay.
llms.txt Inclusion Tells AI systems which pages to prioritize. Provides structure, context, and descriptions. Guides LLMs to your best content.
Use both together: robots.txt to control who can access what, llms.txt to help AI systems understand the content you do want to share. Neither replaces the other.
A minimal, spec-compliant llms.txt file. Copy this as a starting point and customize for your site.
# My Project > A brief description of what this project does and who it's for. ## Docs - [Getting Started](https://example.com/docs/getting-started): Quick setup guide - [API Reference](https://example.com/docs/api): Full API documentation - [Configuration](https://example.com/docs/config): Configuration options ## Examples - [Basic Usage](https://example.com/examples/basic): Minimal working example - [Advanced](https://example.com/examples/advanced): Complex use cases ## Optional - [Blog](https://example.com/blog): Latest updates and tutorials - [Changelog](https://example.com/changelog): Version history
llms.txt is a proposed standard that provides a structured Markdown file at /llms.txt on your website. Sometimes called an "AI sitemap" or "robots.txt for AI," it helps AI systems like ChatGPT, Claude, and Perplexity understand your site's content, documentation, and APIs without crawling every page.
Enter your domain above (e.g., example.com) and click Validate. This checker fetches your /llms.txt server-side (avoiding CORS issues that browser-based validators hit), parses the Markdown structure, and validates it against the official specification including heading hierarchy, link formatting, and required sections.
llms.txt is a concise overview with links to detailed resources. llms-full.txt is an optional companion file that contains the full expanded content inline, so AI systems can consume everything in a single request without following links. This is especially useful for RAG pipelines and "chat with your docs" applications.
robots.txt controls crawler access by telling bots which pages to exclude. llms.txt is the opposite: it tells AI systems which pages to include and how they relate to each other. They complement each other. Use robots.txt for exclusion, llms.txt for structured inclusion.
llms.txt is designed for AI systems and LLM-powered tools, not traditional search engine crawlers. Search engines use robots.txt and XML sitemaps. However, AI search products like Perplexity, ChatGPT Browse, and Google AI Overviews can benefit from a well-structured llms.txt.
llms.txt is a community proposal by Jeremy Howard, not a W3C or IETF standard. It has gained adoption across many sites and AI tools. The specification is published at llmstxt.org and continues to evolve.
For WordPress, place the file in your site root or use a plugin. For Next.js, add it to your public/ directory or create a route handler at /llms.txt. For Nuxt, use the @mdream/nuxt module for automatic generation, or place it in public/llms.txt for a static file.
The ideal range is 20 to 50 links for a standard llms.txt. Focus on your most important documentation, guides, and API references. AI systems have context limits, so a curated file with good descriptions outperforms a massive list of every page on your site.
No. They serve different audiences. sitemap.xml tells search engine crawlers which URLs to index. llms.txt tells AI systems which content matters and how it is structured. Think of llms.txt as an "AI sitemap" that complements your existing sitemap.xml and robots.txt.
Browser-based validators often fail because servers block cross-origin requests. This validator fetches your llms.txt server-side, bypassing CORS entirely. If you still see errors, the server may be blocking non-browser user agents or the file may not exist at the expected path.
Yes. llms.txt provides a structured index ideal for populating vector databases. Use the concise llms.txt as a retrieval map, or use llms-full.txt (which embeds all content inline) for direct ingestion into RAG systems. The section structure maps naturally to document chunks for embedding.