Skip to main content
Guides llms.txt

llms.txt for WordPress and AI visibility: a practical guide

llms.txt is a plain-text file at your domain root that tells AI tools which of your pages matter and what your site is about. It's an emerging convention, not a standard, and it's not supported by every engine — but it's low-effort, low-risk, and makes your key content explicit. This guide covers what it actually does, how to create one on WordPress, and where it fits in your broader AI visibility strategy.

Published June 2026 · 9 min read

Where llms.txt fits in the AI discovery stack Where llms.txt fits in the AI discovery stack llms.txt is one signal layer — it complements, not replaces, the others WordPress Site SIGNAL LAYER robots.txt sitemap.xml schema.org llms.txt AI RETRIEVAL AI Engines & Tools OUTPUT Answer / Citation you are here
llms.txt is one signal layer — it complements robots.txt, sitemap, and schema rather than replacing any of them.

What is llms.txt?

llms.txt is a convention proposed by Jeremy Howard in late 2024. The idea: place a plain-text file at yourdomain.com/llms.txt that lists your site's important URLs along with short descriptions, giving AI tools a curated map of your content.

The analogy is robots.txt for classic crawlers, or humans.txt for people — a discoverable convention rather than a formal standard. Unlike robots.txt, it's purely informational: it doesn't block or allow anything.

There's also an extended form: llms-full.txt, which contains the full text of your content for tools that want to ingest it directly. This guide focuses on the standard llms.txt index file.

What it actually does — and doesn't

Be realistic about the scope:

  • It helps LLM-powered tools that explicitly read it — Claude's Projects feature, some RAG pipelines, research assistants, and tools built on the llms.txt spec.
  • It's not a ranking signal for ChatGPT, Perplexity, or Gemini web search. Those engines use their own crawlers and retrieval systems; they don't consult your llms.txt when answering queries.
  • It makes your priorities explicit — even if a tool doesn't read it, writing it forces you to decide which pages are your most important.
  • It's low risk. A bad llms.txt won't hurt your SEO or block any crawler. The worst case is that tools ignore it.

In short: it's worth doing because the upside is real (better context for tools that do read it) and the cost is an hour of work.

The llms.txt format

The file uses Markdown. The basic structure:

# Your Site Name

> One paragraph describing what this site is, who it's for, and what it covers.

## Core pages

- [Page title](https://yourdomain.com/page/): short description of what this page covers.
- [Another page](https://yourdomain.com/other/): short description.

## Documentation / Guides

- [Guide title](https://yourdomain.com/guides/guide-name/): what this guide covers.

## Optional: what to ignore

- [/login](https://yourdomain.com/login/): authentication page, not useful content.

Rules of thumb:

  • Use H1 for your site name, H2 for categories of pages.
  • The blockquote (>) under the H1 is the site summary — make it clear and factual.
  • Keep descriptions to one sentence. They're context, not marketing copy.
  • Include your most important pages. Don't try to list everything.
  • Optionally link to an llms-full.txt at the bottom if you have one.
Recommended llms.txt structure with annotated sections Recommended llms.txt structure 1 2 3 4 5 6 7 8 # Site Name > Site description and purpose ## Core Pages - [Home](/) : Homepage overview - [About](/about/) : About us ## Guides - [Guide name](/guides/...) : ... H1: site name (required) Blockquote: summary H2: section grouping Link + description Sections repeat for each content category. Descriptions are optional but recommended.
The recommended llms.txt structure: H1 site name, blockquote summary, H2 sections with annotated link lists.

Implementing on WordPress

Three ways to add llms.txt to a WordPress site Three ways to add llms.txt to a WordPress site llms.txt Manual Upload Upload via FTP/SFTP to your web root. at root (/llms.txt) W Dynamic Plugin / Code functions.php or custom plugin adds a route. Dynamic rewrite rule Served Hosting Panel cPanel or host dashboard manages static files. Served directly by host
Three practical paths for adding llms.txt to a WordPress site — choose based on hosting access.

Option 1: manual file upload (simplest)

Create a plain text file named llms.txt, write your content using the format above, and upload it to the root of your web server (same directory as wp-config.php and robots.txt). That's it.

To verify: visit yourdomain.com/llms.txt in a browser. You should see plain text. If WordPress tries to serve a 404 page instead, check that the file is in the true root directory, not in wp-content.

Option 2: serve via functions.php or a plugin

If you're on a managed host where FTP access to the root is restricted, you can serve the file via WordPress itself. Add this to your theme's functions.php or a site-specific plugin:

add_action( 'init', function () {
    add_rewrite_rule( '^llms\.txt$', 'index.php?llms_txt=1', 'top' );
} );

add_filter( 'query_vars', function ( $vars ) {
    $vars[] = 'llms_txt';
    return $vars;
} );

add_action( 'template_redirect', function () {
    if ( ! get_query_var( 'llms_txt' ) ) {
        return;
    }
    header( 'Content-Type: text/plain; charset=UTF-8' );
    echo "# Your Site Name

";
    echo "> One sentence describing your site.

";
    echo "## Core pages

";
    echo "- [Home](https://yourdomain.com/): description.
";
    // add more pages here
    exit;
} );

After adding this, go to Settings → Permalinks in WordPress and click Save (this flushes rewrite rules without changing anything). Then visit yourdomain.com/llms.txt to verify.

Option 3: dedicated plugins

Several WordPress plugins now generate llms.txt automatically by reading your pages, posts, and custom post types. Search the WordPress plugin directory for "llms.txt" to see current options. Verify what the plugin outputs before relying on it — auto-generated files often include too many low-priority pages.

What to include — and what to skip

Include

  • Your homepage — with a description of what your site is and who it's for.
  • Core product or service pages — what you offer, concretely.
  • High-value content: guides, documentation, research, long-form articles.
  • About and contact pages — helps with entity associations.
  • Your most important landing pages.

Skip

  • Login, register, checkout, account, cart pages.
  • Pagination pages (/page/2/, etc.).
  • Tag and category archive pages unless they have real editorial content.
  • Any URL with query parameters or session state.
  • Pages you'd noindex in SEO.

Keeping it up to date

If you upload a static file, update it when you publish major new content. It doesn't need to be real-time — treating it like your sitemap (update it when something meaningful changes) is fine.

If you generate it dynamically via a plugin or functions.php, consider pinning the most important pages explicitly rather than auto-generating from all content. Auto-generation tends to produce noisy files that dilute the signal.

Where llms.txt fits in your AI visibility stack

Think of it as one layer in a broader strategy:

  • Crawlability — the foundation. AI crawlers need to reach your pages at all. See our ChatGPT/Perplexity guide for the full checklist.
  • Structured data (schema.org) — helps engines understand entities and relationships. Works for both classic SEO rich results and AI.
  • llms.txt — a curated map for LLM tools. Complements, doesn't replace, structured data.
  • Content quality — the most important layer. A perfect llms.txt pointing to thin content won't get you cited.
  • Monitoring — track whether your changes move your AI visibility score over time.

See the full stack in the AI visibility checklist and the GEO vs SEO comparison.

Check your site's llms.txt and structured data

The free audit checks whether your llms.txt exists and is valid, alongside seven other AI visibility categories. No account required.

A GeoReady account unlocks the full report and lets you track changes over time. See pricing.

Further reading