New Kitbase MCP is live — talk to your analytics in plain English
Kitbase Kitbase
Start free
llms.txt

llms.txt Generator

Prefill the title, summary and page list from your homepage and sitemap, edit the sections, then copy or download a file that follows the llmstxt.org spec. Your draft stays in your browser.

Prefill from your site

We read your homepage title, description and sitemap to draft the sections. Your draft stays in this browser; we only log the domain you prefilled from.

Sections

No sections yet. Prefill from your sitemap above, add a section by hand, or start from an example with Docs, Product and Blog.

/llms.txt0 chars
# Your site name
> A one-line summary

## Docs

- [Getting started](https://…): what's behind the link
Spec check
Missing H1 titleNo summary blockquote0 sections · 0 links

Publish at the root of your domain, then run the llms.txt checker to confirm it is served correctly.

How it works

1

Prefill from your sitemap

Enter your domain. We read your homepage title and description and your sitemap, and draft the sections for you — grouped by path, one link per page.

2

Edit sections and descriptions

Rename sections, drop pages that don't matter, and add a one-line description to each link so a model knows what is behind it before it fetches.

3

Copy or download, then publish

Save the file as llms.txt at the root of your domain — right next to robots.txt — and run the checker to confirm it is served as plain text.

What goes in an llms.txt

The format is deliberately small. It is plain Markdown, read top to bottom, and every part after the title is optional:

  1. An H1 with the site or project name. The only required line. One # heading, nothing before it.
  2. A blockquote summary. One or two sentences after a > — what the site is, who it is for. Models read this first, so it should answer "should I keep reading?".
  3. Free paragraphs. Anything a reader needs before following links: how the docs are organised, where the API lives, what to ignore.
  4. Sections of links. Each ## heading holds a Markdown list. Every item is - [name](url): description — the description is optional but is the part that makes the file useful.
  5. An ## Optional section. A special last section for links a model may skip when it is short on context — legal pages, archives, secondary references.
https://acme.com/llms.txt
# Acme

> Acme is a billing API for SaaS companies. Docs, pricing and the blog are linked below.

Prefer the docs for anything about the API. The blog is opinion and announcements.

## Docs

- [Getting started](https://acme.com/docs/getting-started): Install and send your first request
- [API reference](https://acme.com/docs/api): Every endpoint, parameter and response
- [Webhooks](https://acme.com/docs/webhooks): Event types and retry semantics

## Product

- [Pricing](https://acme.com/pricing): Plans and limits
- [Changelog](https://acme.com/changelog): What shipped, week by week

## Optional

- [Terms of service](https://acme.com/terms)
- [Privacy policy](https://acme.com/privacy)

Where to publish it

At the root of your domain — https://yourdomain.com/llms.txt — served as text/plain or text/markdown, the same place your robots.txt and sitemap.xml live. Subdirectories and subdomains each get their own file if they are separate sites.

On a static host (Vercel, Netlify, Cloudflare Pages, GitHub Pages) put the file in your public/ or static/ folder so it is copied to the root of the build untouched. Single-page apps are the classic trap: many hosts answer every unknown path with index.html, so a missing file "exists" with a 200 status and an HTML body — the llms.txt checker flags exactly that.

If your documentation is static, consider also publishing /llms-full.txt: the full text of the docs in one Markdown file, so a model can read everything in a single request. Kitbase publishes both for its own docs at docs.kitbase.dev/llms.txt.

Frequently asked questions

Is llms.txt an official standard?

No. It is a proposal published by Answer.AI in late 2024 (llmstxt.org) that a large number of documentation sites and developer tools have since adopted. There is no standards body behind it and no engine is obliged to read it — but because it is cheap to publish and the format is tiny, adoption has grown quickly.

Do AI engines actually read llms.txt?

Honestly: unevenly. Some AI coding assistants and agent frameworks fetch it directly, and several answer engines have experimented with it, but none of the major crawlers publicly commit to it. Treat it as a low-cost curated map that helps the tools that do read it, not as a ranking lever. We wrote up the evidence in Does llms.txt Actually Work? on the Kitbase blog.

How is llms.txt different from robots.txt?

robots.txt tells crawlers what they may not fetch; llms.txt tells models what is worth reading and how your site is organised. One is a set of restrictions, the other is a curated index. They live side by side at the root of your domain and don't overlap.

How is it different from sitemap.xml?

A sitemap lists every URL you want indexed, with no explanation. An llms.txt is short, human-readable Markdown: a title, a one-line summary, and a handful of sections whose links each carry a description. It is meant to be read top to bottom by a model with a limited context window, not crawled exhaustively.

What is llms-full.txt?

An optional companion file that contains the full text of your documentation concatenated into one Markdown document, so a model can read everything in one request instead of following links. Publish it at /llms-full.txt if your docs are static enough to export; the generator here produces the index file, not the full one.

How many links should it have?

Fewer than you think. The point is curation: the pages someone would need to understand and use your product, grouped into a handful of sections. Dozens of links is normal; hundreds means you are pasting your sitemap. Move the long tail into an ## Optional section so a model that is short on context can skip it.

Do you store my draft?

The draft itself lives only in your own browser: it is saved to localStorage so you can come back to it, and nothing you type is sent to Kitbase. The prefill step fetches your homepage and sitemap once, server-side, and returns the result to your browser; we record which domain was prefilled and how many pages we found, so we can see how the tool is used, but not the pages or the file you build.

Can I regenerate it later when my site changes?

Yes. Come back, prefill from your domain again to pull the current sitemap, and re-apply your descriptions. If you want a machine to watch for drift instead, Kitbase's site audit checks that llms.txt exists and is served correctly on every run.

Stop checking by hand. Kitbase watches this for you.

AI Visibility runs continuously on your real traffic and your real pages — with alerts when something changes, not when you remember to look.