A stat is spreading through indie hacker and SaaS founder communities right now. Developer @ahmedafatah posted that he added a single llms.txt file to his site and started seeing 28 AI search sessions per week come through as a result. It's a simple, verifiable outcome from a simple, 30-minute task.

The benchmark is being cited everywhere because it's credible and reproducible. And the timing is right: AI search tools — ChatGPT, Perplexity, Google AI Overviews — are now answering millions of queries per day, and the sites they choose to reference are not random.

28
AI search sessions/week from one llms.txt file (@ahmedafatah)
30m
Time to implement a correctly formatted llms.txt
62→78
Our own GEO score after fixing llms.txt + 4 other issues

Before we get into the format, there is one thing worth knowing: having an llms.txt is not enough. When we audited our own live site at georaiser.com, we found our llms.txt existed — but every single URL inside it pointed to the wrong domain. We will cover exactly what we found and what we fixed.

What is llms.txt?

llms.txt is a plain-text file placed at your domain root — the same location as robots.txt. It is part of an emerging GEO standard designed to give AI language models a curated, machine-readable overview of your site's most important content.

Think of it as two things in one:

  • A sitemap for AI — directing AI crawlers to your most valuable pages so they get indexed and cited
  • A context file for LLMs — telling ChatGPT, Claude, and Perplexity what your site is about before they generate an answer that might reference you

Traditional sitemaps (sitemap.xml) tell search engines which pages exist. llms.txt tells AI models which pages matter and what they contain. They serve different audiences doing different jobs.

Key distinction: robots.txt = permission (who can crawl). sitemap.xml = inventory (what pages exist). llms.txt = curation (what pages matter and why). You need all three working together.

Why Broken llms.txt Is More Common Than You Think

We ran a full GEO audit on our own site — a practice we call dogfooding — and found six issues silently killing our AI visibility. One of them was the llms.txt file.

Our file existed. It was structured. It was reachable. But every URL inside it pointed to icmarketing.io — our old development domain — instead of our live production domain georaiser.com. Every link AI crawlers followed from our llms.txt was a dead end.

Before (broken)
  • All URLs → icmarketing.io (wrong domain)
  • Links to pages that 404'd
  • Missing /what-is-geo and /geo-vs-seo
After (fixed)
  • All URLs → georaiser.com (live domain)
  • All linked pages confirmed 200 OK
  • Added /what-is-geo and /geo-vs-seo

This is the most common llms.txt failure mode. It happens after:

  • Site migrations — domain changed, llms.txt not updated
  • Rebrandings — new name, old URLs still in the file
  • Staging-to-production deploys — file created on staging domain, never updated
  • CMS migrations — URL structure changed, llms.txt not regenerated

Fixing the wrong-domain URLs was one of five changes we made in a single session. Combined, they pushed our GEO score from 62 to 78.

62
Before
78
After

The full audit is documented in our GEO score case study — 6 issues, 1 session, 16-point improvement.

The Correct llms.txt Format

The format is intentionally simple. It uses a subset of markdown that AI parsers handle reliably. Here is the structure:

# The three required elements:
# 1. Level-1 heading (your site name)
# 2. Blockquote description (one sentence)
# 3. ## sections with grouped page links

# Your Site Name

> One-sentence description of what your site does and who it helps.

## Core Pages

- [Home](https://yourdomain.com/): What your site is and the primary value proposition.
- [About](https://yourdomain.com/about): Who you are, your team, and your mission.

## Key Articles

- [Your Best Guide](https://yourdomain.com/your-guide): A clear, factual description of what this page covers.
- [Your Second Best Guide](https://yourdomain.com/guide-2): Another page description.

## Tools & Services

- [Free Tool](https://yourdomain.com/tool): What the tool does in one sentence.

Rules that matter:

  • The file must be served as Content-Type: text/plain — not HTML, not JSON
  • Every URL must use your exact live production domain with https://
  • Page descriptions should be factual, not marketing copy — AI parsers extract them as-is
  • Link to your most authoritative pages, not every page you have
  • Keep descriptions short (one sentence) — accuracy matters more than length

Step-by-Step: Build Your llms.txt in 30 Minutes

  1. Audit your existing llms.txt (if you have one)

    Fetch https://yourdomain.com/llms.txt directly in a browser. Verify it loads as plain text. Then click every link inside it and confirm each page returns a 200 OK response. Wrong domain or 404 links are the most common silent killer.

  2. Write the header block

    Start with # Your Site Name on line 1, then a blank line, then a blockquote: > What your site does in one clear sentence. This is what AI models use to form their initial understanding of your site. Be precise and descriptive — not promotional.

  3. Group your key pages under ## section headings

    Create 2-4 logical groups for your content: Core Pages, Blog Articles, Tools, Documentation — whatever matches your site structure. Under each, list 3-10 of your most authoritative pages as markdown links with one-sentence descriptions. Prioritize pages you most want AI engines to read and potentially cite.

  4. Deploy at your domain root

    Place the file at https://yourdomain.com/llms.txt. Configure your server or CDN to serve it with Content-Type: text/plain. Add a reference to it in your robots.txt as a comment: # llms.txt: https://yourdomain.com/llms.txt — not required, but helpful for discovery.

  5. Verify and run a GEO audit

    Fetch the file raw in a browser (it should look like plain text, not a formatted page). Then run a full GEO audit — llms.txt is one of the 10 technical signals that determines whether AI engines can find, parse, and cite your content reliably.

What a Real llms.txt Looks Like

Here is the actual llms.txt from our own site at georaiser.com, after the dogfood fix:

# GEORaiser — GEO Audit & Optimization

> GEORaiser helps businesses become visible in AI search engines like ChatGPT, Perplexity, and Google AI Overviews through GEO audits, schema markup, and content optimization.

## Core Pages

- [GEO Audit Tool](https://georaiser.com/audit): Free automated GEO audit that scores your site's AI search visibility across technical, content, and brand signals.
- [Services](https://georaiser.com/services): Done-for-you GEO audit and optimization service for businesses that want expert implementation.

## GEO Guides

- [What is GEO?](https://georaiser.com/what-is-geo): Complete introduction to Generative Engine Optimization — what it is, why it matters, and how to get started.
- [GEO vs SEO](https://georaiser.com/geo-vs-seo): How AI search optimization differs from traditional search engine optimization and where the tactics overlap.
- [Schema Markup for AI](https://georaiser.com/schema-markup-ai): How to implement JSON-LD schema markup to improve AI citation rates.

The key difference from the broken version: every URL uses the live georaiser.com domain. Every link returns a 200 OK. Every description is factual and concise.

llms.txt Is One Layer of GEO

The @ahmedafatah "28 sessions/week" outcome is real and reproducible — but context matters. llms.txt works best as part of a complete technical GEO foundation:

  • robots.txt — explicitly allow GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot
  • sitemap.xml — all key pages indexed and reachable (ours was 404'ing until we fixed it)
  • llms.txt — curated page list with correct live URLs and factual descriptions
  • Schema markupArticle, FAQPage, Organization, HowTo structured data in JSON-LD
  • Content structure — headings, step-by-step guides, FAQ sections that AI parsers extract cleanly

Each layer compounds. A correct llms.txt gets AI crawlers to the right pages. Schema markup on those pages tells AI what the content is. Structured prose gives it something to extract and cite. Brand mentions on third-party sites give it confidence that you are a real authority.

None of these is difficult. All of them are commonly missed.

Is Your llms.txt Broken?

Our free GEO audit checks your llms.txt URL validity, robots.txt crawler permissions, sitemap reachability, schema markup implementation, and 6 other AI visibility signals — and gives you a prioritized fix list. Takes 30 seconds.

Check My llms.txt →

Frequently Asked Questions

What is llms.txt?

llms.txt is a plain-text file at your domain root that gives AI language models a curated, machine-readable overview of your site. It uses a lightweight markdown format: a top-level heading, a one-sentence description, and grouped links to your most important pages. Think of it as a sitemap designed specifically for language models rather than traditional search crawlers.

Does llms.txt actually increase AI search traffic?

Early evidence suggests yes. @ahmedafatah reported 28 AI search sessions per week from a properly implemented llms.txt — a stat now widely cited in indie hacker communities. Our own dogfood session showed that fixing broken llms.txt URLs was one of five changes that pushed our GEO score from 62 to 78. The mechanism is direct: AI crawlers use llms.txt to discover your most important pages, so a correct file means more pages indexed and more context about what your site does.

What is the most common llms.txt mistake?

Wrong-domain URLs. This happens after site migrations, rebrands, or when the file is set up on a staging domain and never updated. When we audited our own site, every URL in our llms.txt still pointed to our old development domain — making every link a dead end for AI crawlers. A secondary issue is not serving the file as text/plain, which can cause silent parse failures.

Is llms.txt different from robots.txt?

Yes — they serve different purposes. robots.txt tells crawlers which pages they can access (permission gate). llms.txt tells AI models which pages are most important and what they contain (content guide). You need both. robots.txt that allows AI crawlers plus a correct llms.txt gives AI engines both access and direction.

Stats sourced from: @ahmedafatah (X/Twitter, March 2026). Our GEO score data from the georaiser.com dogfood audit (March 2026). Related: full GEO audit checklist, schema markup for AI guide.