llms.txt for WordPress: Setup Guide (2026)

The Short Version

QuestionAnswer
What is llms.txt?A Markdown file at /llms.txt that maps your most important pages for AI systems
Does Google use it?No. Google Search ignores it — it won’t help or hurt your rankings
Who reads it?AI crawlers and agents (ChatGPT, Claude, Perplexity), and some browser tooling
Do you need one?No. Worth it if AI-referred traffic matters to you and your content is hard to summarize from HTML
Easiest WordPress setupA plugin that respects your SEO plugin’s noindex settings, then verify with curl
Time to set up10–15 minutes

What llms.txt Actually Is

llms.txt is a plain Markdown file you publish at the root of your site:

https://example.com/llms.txt

The format was proposed by Jeremy Howard of Answer.AI in September 2024 and is specified at llmstxt.org. The rules are deliberately thin:

  1. An H1 heading with your site name — the only required element
  2. A blockquote summary (> ...) with a one- or two-sentence description
  3. Optional free-form context paragraphs — no headings allowed here
  4. H2 sections (## Guides, ## Products), each containing a Markdown link list
  5. Every list item follows one pattern: - [Page name](https://example.com/page): short note
  6. A ## Optional section, if you have one, comes last

That’s the whole spec. No XML, no schema, no account registration. The file sits next to robots.txt and sitemap.xml and follows the same discovery convention: tools guess the path, and the file is there.

Two companion pieces are worth knowing about:

  • llms-full.txt — your full content concatenated into one Markdown file, for systems that want everything in a single fetch
  • v2 link relations — the spec now recommends advertising the file with rel="describedby" in your HTML head or an HTTP Link header, and pointing to per-page Markdown versions with rel="alternate" type="text/markdown". A file nobody advertises is only found by agents that already guessed the path

The Honest Part: What It’s Worth

Here is where most llms.txt content online stops being useful.

Google has said plainly that llms.txt does nothing for Google Search. The Search Central guidance on AI features states that publishers don’t need special AI files to appear in AI search, and John Mueller has described the format as speculative — Google ignores it for ranking and indexing purposes. Publishing one won’t hurt you; it won’t lift you either. If your goal is AI Overviews, the levers are still the ones you already know: crawlable HTML, structured data, and being the page that answers the query. We covered those in how to add schema markup to WordPress and whether your pages are actually in Google’s index.

The citation studies are also unflattering. A scan of nearly 38,000 domains found no measurable difference in AI citations between sites with and without the file, and a larger crawler-log study reached the same conclusion. One developer’s server logs told the bluntest version: tens of thousands of AI crawler hits over a two-week window, and not one request for /llms.txt.

So who reads it? Not Google. The realistic audience is:

CrawlerOperatorWhat it’s for
OAI-SearchBotOpenAIChatGPT search results
GPTBotOpenAImodel training (blockable)
ClaudeBot / Claude-SearchBotAnthropictraining / search indexing
PerplexityBotPerplexitysearch indexing
ChatGPT-User, Claude-User, Perplexity-Userrespective vendorsone-off fetches triggered by a user’s prompt

The value proposition is narrow but real: when a user asks one of these tools about a topic you cover, a clean map of your best pages — with one-line notes saying what each page covers — is cheaper for the fetching system to parse than a WordPress HTML page wrapped in theme markup, block comments, and three layers of divs. Whether they take advantage of it is their call. All of them respect robots.txt, and OpenAI’s crawler documentation notes that robots.txt changes take up to about 24 hours to propagate.

The other reader that matters is tooling: Chrome’s Lighthouse added an experimental agent-readiness audit that checks for llms.txt, and several AI browsers use it as a navigation hint. It’s a cheap signal to be on the right side of.

Bottom line: add it if AI referrals are a channel you care about, your site is large or structurally messy, or you want agents fetching fewer pages to understand you. Skip it if you expected it to move Google rankings — it won’t.

Three Ways to Add llms.txt to WordPress

Method 1: A plugin (recommended for most sites)

Several plugins generate and maintain the file. What separates the usable ones from the junk is whether they respect your SEO plugin’s noindex settings — a URL you’ve told search engines not to index should not appear in your llms.txt either.

Look for these on wordpress.org:

  • Website LLMs.txt — auto-generates on a schedule (immediate, daily, weekly), respects Yoast, Rank Math, SEOPress, and AIOSEO noindex/nofollow directives, and serves the file from the site root. On hosts where the root isn’t writable (WordPress VIP, some managed hosts), it serves via a WordPress rewrite rule instead
  • LLMs.txt Curator — for sites that want to curate rather than dump. You arrange sections and pages visually, see description coverage counts, generate llms-full.txt, and pick from templates (Business, Blog, E-commerce). Integrates with five SEO plugins and includes WooCommerce SKU/price/stock data in descriptions
  • LLMs.txt Builder — simple titles-and-URLs output for /llms.txt, excerpts for /llms-full.txt, WooCommerce support, 24-hour cache with invalidation on content changes

Installation is the same as any plugin: install from the Plugins screen, activate, open the settings page, generate. Then verify — see the next section.

Method 2: Upload the file yourself

If you want full control over every line — which is what the spec intends, since llms.txt is a curated map, not a sitemap dump — write the Markdown yourself and upload it to your site root.

  1. Create llms.txt in any text editor (UTF-8, no BOM needed)
  2. Connect over FTP, SFTP, or your host’s file manager
  3. Upload to the same directory that contains wp-config.php (usually public_html/)
  4. Visit https://yourdomain.com/llms.txt to confirm it loads

A physical file is served before WordPress routing ever runs, so there’s nothing to configure. The catch: some managed hosts block writes to the document root, and a handful of security plugins flag dotfile-adjacent requests. If the URL 404s after upload, your host is routing everything through WordPress — use Method 1 or 3 instead.

Method 3: The hybrid (physical file + link advertisement)

For spec compliance, add the v2 advertisement so agents don’t have to guess:

<link rel="describedby" type="text/markdown" href="/llms.txt">

Drop that in your theme’s header.php inside <head>, or use a code-snippets plugin so it survives theme updates. If your host sends HTTP headers, the stronger version is:

Link: </llms.txt>; rel="describedby"; type="text/markdown"

This costs one line and puts you ahead of most sites that publish the file and never mention it.

A Working llms.txt Example for WordPress

Copy this structure, swap in your own pages, and keep it short — a few hundred lines at most:

# WPExplorer

> WPExplorer is a WordPress resource site offering free themes, plugins,
> and tutorials for building and customizing WordPress websites.

## Getting Started

- [How to Install a WordPress Theme](https://example.com/install-wordpress-theme/): Step-by-step guide for beginners.
- [Must-Have WordPress Plugins](https://example.com/wordpress-plugins/): Hand-picked plugins for performance, security, and SEO.

## Guides

- [WordPress SEO Checklist](https://example.com/wordpress-seo-checklist/): On-page and technical SEO steps for WordPress sites.
- [Speed Up WordPress](https://example.com/speed-up-wordpress/): Caching, image optimization, and hosting advice.

## Optional

- [Theme Documentation](https://example.com/docs/): Full docs for our free theme.
- [Changelog](https://example.com/changelog/): Release notes.

Notes on why it’s shaped this way:

  • The blockquote is the whole game. One factual sentence an agent can trust. Marketing adjectives here waste the most valuable lines in the file
  • Absolute URLs only. Validators flag relative links; an agent resolving ../page from a text file has no base to resolve against
  • Notes after the colon describe the page, not sell it. “Step-by-step guide for beginners” tells an agent when to fetch the link; “The BEST guide ever!” tells it nothing
  • Link 10–20 pages that matter, not your 4,000-URL archive. That’s the difference between llms.txt and a sitemap

Verify It Works

Two checks, both thirty seconds:

1. Does it serve correctly?

curl -sI https://yourdomain.com/llms.txt

You want HTTP/2 200 and a content-type of text/markdown or text/plain. A 404 means WordPress is swallowing the route (re-save your permalinks under Settings → Permalinks, or flush your CDN/page-cache rules). An text/html content type means you’re getting your theme’s 404 page back — same fix.

2. Is it valid Markdown per the spec?

Paste the URL or the content into a validator like llms.fyi/validate. It runs twelve checks straight from the spec: starts with an H1, blockquote follows, link format is right, URLs are absolute, ## Optional is last, no HTML markup, file size stays reasonable.

Then confirm who’s actually asking for it. Your host’s access logs (or a log analyzer) will show crawler user agents by path. If /llms.txt shows zero fetches after a month, you have your answer about how much it matters for your specific site — keep it, it costs nothing, but don’t build strategy on it.

Five Mistakes That Make llms.txt Worthless

  1. Treating it like a sitemap. Dumping every URL defeats the purpose. Agents already have sitemaps; the point of llms.txt is a curated shortlist with context
  2. Writing marketing copy in the summary. The blockquote is read first and sometimes read alone. Make it factual
  3. Publishing it and never refreshing it. A stale file pointing at redirected or removed pages is worse than no file — every bad link costs trust. Plugins with scheduled regeneration exist for this reason
  4. Letting it leak noindexed content. If your SEO plugin hides a page from Google and your llms.txt advertises it, you’ve contradicted yourself in public. Use a generator that reads noindex settings
  5. Confusing it with robots.txt. llms.txt grants nothing and blocks nothing. Blocking an AI crawler still happens in robots.txt, and those rules are independent per bot — as covered in our AI-search readiness guide

llms.txt vs robots.txt vs sitemap.xml

llms.txtrobots.txtsitemap.xml
FormatMarkdownplain text directivesXML
PurposeCurate and explain key pages for AI systemsGrant or block crawl accessList URLs and metadata for indexers
Required by anyone?NoYes, effectivelyStrongly expected
Affects Google rankings?No (Google ignores it)Yes (crawl control)Indirectly (discovery)
Who reads itAI crawlers, agents, some browser toolingAll crawlersSearch engines

They coexist. None replaces another — a site with all three is normal, and adding llms.txt changes nothing about how Googlebot treats you.


FAQ

Does llms.txt help SEO?

Not in Google Search. Google has stated it ignores the file for ranking and indexing — it won’t help or hurt. Its effects, if any, are limited to AI-driven tools that choose to read it. If someone sold you llms.txt as an SEO tactic, they were selling you something else.

Which llms.txt plugin should I use for WordPress?

Pick based on control. Want zero effort and automatic updates? Website LLMs.txt. Want to hand-pick every link and write real descriptions? LLMs.txt Curator. The only hard requirement is that the plugin reads your SEO plugin’s noindex settings so you don’t advertise pages you’ve hidden.

Should I also create llms-full.txt?

Only if you’re comfortable with your full content — post by post — being fetchable as one file. It’s convenient for systems that want everything in one request, and it’s a bigger open door than a curated index. Sites that noindex entire categories should skip it or configure exclusions carefully.

Do AI crawlers read llms.txt or robots.txt?

Both, but robots.txt is the one with teeth. Every major AI crawler checks robots.txt and honors per-bot rules there; llms.txt is optional reading that many don’t request at all. Start with a correct robots.txt (see the crawler table above), then add llms.txt as a layer on top.

How often should I update llms.txt?

Whenever your key pages change — new pillar content, retired offers, changed URLs. For most blogs, that’s monthly at most. If you set a plugin to regenerate daily, you’ll never think about it.

Should You Bother?

If you take nothing else: llms.txt is a small, cheap, spec-simple file that Google doesn’t read and most AI crawlers haven’t been observed requesting — but that browser tooling is starting to check for, and that costs you ten minutes and zero ongoing risk. Publishing one is a reasonable bet on a channel that’s still forming. Treating it as an SEO requirement is a mistake.

Do it once, do it curated, verify it with curl, and go back to the work that moves numbers: content worth citing, structured data, and a site fast and clean enough that any system — search engine or agent — can read it without fighting your theme.

A WP Life
A WP Life

Hi! We are A WP Life, we develop best WordPress themes and plugins for blog and websites.