agentspeed.
← all tools
Tool

llms.txt generator: build a spec-compliant /llms.txt

AI agents (ChatGPT, Claude, Perplexity) check /llms.txt first to find your canonical docs, pricing, API, and policies. Pick a preset, edit the sections, copy or download. Free, no signup.

Tool
preset
recommended sections
llms.txt
# Acme Inc.

> Ship faster with one dashboard for billing, support, and analytics.

Acme Inc. is a SaaS platform that consolidates billing, support, and analytics into a single dashboard for small teams.

## Docs

- [Quickstart](https://acme.example/docs/quickstart): Get from zero to first request in under 5 minutes.
- [Guides](https://acme.example/docs/guides)

## Pricing

- [Plans](https://acme.example/pricing): Free, Starter, Growth, Enterprise.

## API

- [Reference](https://acme.example/docs/api): OpenAPI-style reference for every endpoint.
- [SDKs](https://acme.example/docs/sdks)

## Support

- [Contact](https://acme.example/contact)
- [Status](https://status.acme.example)

## Policies

- [Terms](https://acme.example/terms)
- [Privacy](https://acme.example/privacy)

## Changelog

- [Release notes](https://acme.example/changelog)
Publish instructions

In the App Router, expose /llms.txt via a route handler. Static export works the same way; drop the file in /public/llms.txt instead.

app/llms.txt/route.tsts
// app/llms.txt/route.ts
export const dynamic = 'force-static';
export const revalidate = 86400;

const BODY = `# Acme Inc.

> Ship faster with one dashboard for billing, support, and analytics.

## Docs

- [Quickstart](https://acme.example/docs/quickstart): Get from zero to first request in under 5 minutes.

## Pricing

- [Plans](https://acme.example/pricing): Free, Starter, Growth, Enterprise.
`;

export function GET(): Response {
  return new Response(BODY, {
    headers: { 'Content-Type': 'text/markdown; charset=utf-8' },
  });
}

Verify with curl https://your-domain/llms.txt after deploy. Make sure no auth middleware blocks the path, because agents request without cookies.

Why this matters for AI agents

Without an /llms.txt, agents have to guess which pages on your site are canonical. They scrape the homepage, follow whatever footer links land first, and cite marketing copy instead of your docs. With one in place, an agent answering a question about your product follows your linked sources directly: quickstarts, API reference, pricing, status page.

The format is plain markdown. The spec lives at llmstxt.org. AgentSpeed scores every site against llms_txt.present; passing is straightforward. Host the file at the root and link real pages.

Common fixes
Missing title
Add # {Brand} as the first line. Agents cite this as the canonical identifier for your site.
No docs link
Add a Docs section with at least one quickstart link. Agents prefer to cite documentation pages over marketing pages.
No pricing link
If you have public pricing, link it explicitly. Agents otherwise extract pricing from screenshots and feature pages, often wrong.
Hosted on a CMS
Webflow, Shopify, and Squarespace can’t serve raw text at the root. Use a Cloudflare Worker (snippet in the publish instructions tab below) to bind /llms.txt to a Worker response.
Blocked in robots.txt
Make sure your /llms.txt path is not disallowed. The robots.txt agent checker tool will show you which agents are blocked.
Linked rubric checks
FAQ
What is /llms.txt?
/llms.txt is a markdown file at the root of a site that tells AI agents which pages are canonical. The format is defined at llmstxt.org.
Do I need both /llms.txt and a sitemap.xml?
Yes. They serve different audiences. sitemap.xml is for search-engine crawlers and lists every URL. /llms.txt is for LLM agents and lists curated, citation-worthy pages: typically docs, pricing, support, policies, and changelog.
Will publishing /llms.txt help my SEO?
Indirectly. /llms.txt is read by AI agents like ChatGPT, Claude, and Perplexity, not by Google. But agents that ground answers in your linked pages are more likely to cite your site, which drives traffic.
Can I block agents from /llms.txt in robots.txt?
You can, but you would defeat the purpose. /llms.txt exists specifically so agents can read it. If you want to block AI training, use Content-Signal directives or per-agent disallows in robots.txt instead.
How often should I update /llms.txt?
Whenever your IA changes: a new product, a new docs section, a renamed pricing page. The file is a curated index, not a live mirror, so weekly or monthly updates are fine.
Does this generator submit my llms.txt anywhere?
No. Everything runs in your browser. We never see your content. Copy or download the output and host it yourself.
Run a full agent-readiness scan
Full scan

Score the entire site against 30 agent-readiness checks across discoverability, readability, structured data, actionability, and performance.

Get the full report →