Guide · Updated June 2026

llms.txt Format Guide: Exact Spec, Fields, and Examples (2026)

llms.txt is a voluntary Markdown site-map proposal. A consumer may choose whether to fetch or honor it, and Google Search ignores it. This guide covers the proposed format and best practices — what's required, what's optional, what breaks parsers, and a complete copy-paste example.

The llms.txt proposal was published by Jeremy Howard in 2024. By June 2026, our crawl of 10,000 top sites found 6.9% adoption in that measured cohort. Adoption is not a competitive advantage by itself: the proposal does not require any engine to consume the file, and Google says it ignores llms.txt for Search and AI features.

The CiteFuel llms.txt generator builds a valid file automatically from your sitemap. This guide explains the format so you can write or edit one manually.

Anatomy of a valid llms.txt

A minimal valid llms.txt has three parts:

# [Site Name]

> [One-sentence description of the site and its purpose.]

## [Section Name]
- [Page Title](https://yourdomain.com/page): Brief description of what this page contains.

CiteFuel validates these proposal-format conventions:

Element Required? Syntax Notes
Site name Yes # Site Name First line of file. Single #, one space, then name.
Description Yes > Description. Immediately after H1. Single sentence preferred. No line break between H1 and this.
Sitemap link No Sitemap: URL Add after description, before first section.
Section header Yes (≥1) ## Section Name Double #. Common names: Pages, Blog, Tools, Documentation.
Page entry Yes (≥1 total) - [Title](URL): description Hyphen, space, Markdown link, colon, space, description. All parts required.
Optional fields No - [Title](URL): desc [optional: value] Bracket notation for metadata like priority or language.

Complete example

# Acme Analytics

> Acme Analytics is a B2B SaaS tool that tracks website performance and user behavior for marketing teams.

Sitemap: https://acmeanalytics.com/sitemap.xml

## Pages
- [Home](https://acmeanalytics.com/): Product overview and key features for marketing teams.
- [Pricing](https://acmeanalytics.com/pricing): Subscription plans — Starter ($49/mo), Growth ($149/mo), Enterprise.
- [About](https://acmeanalytics.com/about): Company background, team, and mission.

## Features
- [Funnel Tracking](https://acmeanalytics.com/features/funnel): Step-by-step conversion funnel analysis with drop-off attribution.
- [Cohort Analysis](https://acmeanalytics.com/features/cohorts): Retention curves and cohort behavior over time.

## Blog
- [How to read a funnel report](https://acmeanalytics.com/blog/funnel-report): Step-by-step guide to interpreting funnel data.
- [UTM tracking best practices](https://acmeanalytics.com/blog/utm-best-practices): How to set up UTM parameters for accurate attribution.

## Documentation
- [API Reference](https://acmeanalytics.com/docs/api): Full REST API docs for developers.
- [Quickstart](https://acmeanalytics.com/docs/quickstart): Get tracking live in 10 minutes.

Common proposal-format and file-hygiene mistakes

1. Missing blockquote description

Skipping the > description line fails CiteFuel's proposal-format validation. Consumers are free to parse, ignore, or interpret the file differently.

2. Incorrect page entry format

Each entry must be a Markdown list item with a Markdown link followed by a colon. All of these are wrong:

# Wrong — plain text, not a link
- Home page (https://acmeanalytics.com): Overview

# Wrong — no colon separator
- [Home](https://acmeanalytics.com) Overview

# Wrong — no description
- [Home](https://acmeanalytics.com):

3. File too large

CiteFuel recommends keeping the optional file concise and flags files over 50KB as a usability heuristic. That threshold is not a universal engine limit.

4. Wrong content-type

Serve the Markdown as text/plain; charset=utf-8 for predictable file handling. Do not infer that every consumer will reject another content type.

5. Indented section headers

The ## must be at the start of the line. Indented headers (  ## Blog) are not parsed as Markdown headers by most AI systems.

Where to place llms.txt

Always at the domain root: https://yourdomain.com/llms.txt. Subdirectory paths (e.g. /docs/llms.txt) are not where AI systems look. For multi-subdomain sites, each subdomain needs its own file — AI systems treat docs.yourdomain.com as a separate site.

Validate your llms.txt

Use the free CiteFuel validator to check your file against 11 syntax and format checks — required fields, URL-shape hygiene, file size, content-type, and sitemap consistency. Paste your file content in the "Validate existing file" tab.

For a deployment walkthrough (Astro, Next.js, WordPress), see How to add llms.txt to your site. To inventory crawler responses and sampled presence separately, run a full CiteFuel audit.

Frequently asked questions

What is the minimum valid llms.txt?

Three elements: (1) an H1 with your site name (# Site Name), (2) a blockquote description (> One sentence about your site.), and (3) at least one section with one page entry (## Pages then - [Title](URL): description). Without all three, most validators will flag the file as malformed.

Is llms-full.txt different from llms.txt?

Yes. llms.txt is an index — it lists your important pages with brief descriptions (keep under 50KB). llms-full.txt contains expanded content (full page text), targeting systems that want depth. Start with llms.txt; add the full variant for documentation-heavy sites or when you have substantial blog content.

Does capitalization or spacing matter in the format?

Yes. H1 must use # (single hash, space, name). Sections use ##. Blockquote uses > at the line start. Page entries are - [Title](URL): description — the hyphen, space, bracket, and colon separator are all required. Extra spaces before # break most parsers.

Can I have multiple ## sections?

Yes. The llms.txt proposal permits Markdown section labels such as ## Pages, ## Blog, ## Tools, and ## Documentation. Grouping can make the file easier for people to review, but no consumer adoption or visibility benefit should be assumed; a flat list can also be valid.

Should llms.txt include my sitemap URL?

Optional in the proposal. Add a line like Sitemap: https://yourdomain.com/sitemap.xml only if you want the optional file to reference the canonical sitemap. No consumer is required to use it, and Google Search ignores llms.txt.

Measure your site’s AI-readiness gaps, then review the evidence.

Free 26-check audit. No card. No login. Just a URL — results in ~90 seconds.

Audit my site free →