AI Search

llms.txt: What It Is, Whether You Need It, and How to Create One (With Template)

By Mohammed Adnan ParkarUpdated 4 min read

As AI assistants and agents increasingly read websites on behalf of users, site owners have looked for ways to help them understand content quickly. llms.txt is one proposal: a simple Markdown file that summarizes a website for large language models.

What Is llms.txt?

llms.txt is a plain-text file written in Markdown and placed at the root of a website (https://example.com/llms.txt). It contains a short description of the site or organization and curated lists of links to the most important pages, each with a one-line explanation. The format was proposed by Jeremy Howard of Answer.AI in September 2024, originally to help LLMs use documentation more efficiently at inference time.

llms.txt vs robots.txt vs sitemap.xml

FilePurposeAudience
robots.txtRules about which crawlers may access which pathsAll crawlers
sitemap.xmlComplete list of URLs to crawl, with last-modified datesSearch engines
llms.txtCurated, human-readable summary of what the site is and its key pagesLLMs and AI agents

llms.txt does not control access. If you want to allow or block AI crawlers such as GPTBot or ClaudeBot, use robots.txt.

Do AI Search Engines Use llms.txt?

Adoption is mixed. Google has said its search systems, including AI Overviews, do not use llms.txt, and there is little public evidence that major AI search engines rely on it when choosing sources. Some AI coding tools, developer platforms and agents do read it, particularly for documentation sites.

So llms.txt is not a ranking factor. It is a cheap, low-risk way to give any AI system that does read it an accurate, curated summary of your business. It takes an hour to create and can be generated automatically.

The llms.txt Format

  1. An H1 with the site or company name (required).
  2. A blockquote with a short summary.
  3. Optional paragraphs with key facts.
  4. H2 sections containing Markdown link lists: - [Page name](URL): description.
  5. An optional section titled Optional for secondary links that can be skipped if context is short.

llms.txt Template

# Example Company

> Example Company is a Dubai-based accounting firm providing VAT registration,
> corporate tax filing and bookkeeping for SMEs in the UAE.

- Founded: 2018
- Contact: hello@example.com, +971 4 000 0000

## Services
- [VAT Registration](https://example.com/vat-registration): UAE VAT registration and filing for SMEs
- [Corporate Tax](https://example.com/corporate-tax): UAE corporate tax registration and returns

## Guides
- [UAE Corporate Tax Guide](https://example.com/blog/uae-corporate-tax): Rates, deadlines and exemptions

## Optional
- [About](https://example.com/about)
- [Contact](https://example.com/contact)

Best Practices

  • Be factual. Write what you do, where, for whom, and how to contact you. Leave out marketing slogans.
  • Curate. Include your most important pages, not every URL.
  • Keep it current. Generate the file from the same data as your site so services and prices never drift.
  • Serve it as text. Use Content-Type: text/plain or text/markdown with a 200 status.
  • Consider llms-full.txt. Some sites also publish a larger file with the full text of key pages.

How to Add llms.txt in Next.js

Either place a static llms.txt file in the public folder, or create a route handler at app/llms.txt/route.ts that builds the Markdown from your content data and returns it with a text content type. The route handler approach keeps the file in sync automatically. It is how our own llms.txt is generated.

What Matters More Than llms.txt

If AI visibility is the goal, prioritize the fundamentals first: allow AI crawlers in robots.txt, server-render your content, add structured data, write answer-first pages and build third-party mentions. llms.txt is a finishing touch, not a strategy.

Frequently Asked Questions

llms.txt is a proposed Markdown file placed at a website's root that gives large language models a concise summary of the site and links to its most important pages.

No. Google has said its search systems do not use llms.txt, and it is not an official standard. It is a low-cost way to give AI agents that do read it an accurate summary.

No. llms.txt only provides information. To allow or block crawlers like GPTBot or ClaudeBot, use robots.txt.

At the root of your domain, so it is available at https://yourdomain.com/llms.txt, served as plain text with a 200 status code.

Mohammed Adnan Parkar

Founder of AIMenaLabs, a Dubai-based AI search optimization agency helping GCC brands get found in Google, ChatGPT, Gemini and Perplexity.

Future-proof your brand visibility.

Stop optimizing for 2010. Start engineering for the AI search era.