← All checks
AEOTypical severity: Low

llms.txt Checker

Checks whether you publish an llms.txt file to guide AI assistants toward your key content.

What it checks

This scanner checks whether you publish an llms.txt file on your site. It is a file designed to guide AI assistants toward your most important content and explain to them what your site is about.

Why it matters

More and more people find answers through AI assistants instead of traditional search engines, and an llms.txt makes it easier for those models to understand and use your content. Helping AI find your key pages increases the chances that it mentions you in its answers.

How to fix it

Create a text file named llms.txt at the root of your domain with a short description of your project and links to your most relevant pages. Keep it simple and up to date, highlighting the content you want AI to know and cite.

How this check works

Scanaris requests /llms.txt at the root of your domain and counts it as present only if it responds 200, the content type is not HTML, the body contains no <html> tag and it is not empty. That rules out single-page apps that return their HTML for any path. If it does not find it, it opens an informational finding that costs no points: not having it is not a flaw, it is an opportunity few sites have taken yet.

What llms.txt is

It is a 2024 proposal (llmstxt.org) to give AI assistants a curated summary of your site in Markdown: who you are, what you do and which pages are worth reading to understand it. The idea is the same as robots.txt for crawlers or the sitemap for search engines, but aimed at language models: instead of ChatGPT, Claude or Perplexity having to crawl twenty pages full of menus and cookie banners to find out what you sell, you tell them in a short, clean file. It is worth being honest about its status: no major provider has confirmed using it officially to answer questions, but several documentation tools and frameworks already generate it, adding it takes ten minutes, and it is the natural place for the "machine-readable" version of your site when assistants go looking for one.

How to create it

# Scanaris

> Security, SEO and AI-visibility scanner for websites and apps built with AI tools. A 60-second scan returns every flaw with its fix.

## Key pages

- [What we check](https://yourdomain.com/checks): all 47 checks, each with a fix guide.
- [Pricing](https://yourdomain.com/pricing): free plan and Pro plans.
- [Blog](https://yourdomain.com/blog): security guides for Cursor, Lovable, Supabase, Next.js and Vercel.

## Optional

- [API documentation](https://yourdomain.com/docs/api)
  • Structure: a single level-1 heading with the site name, a blockquote with the description in one or two sentences, then sections with link lists, each with a short description after the colon. The ## Optional section is for what can be skipped when context is short.
  • Content: write for someone who does not know your site and has thirty seconds. What problem you solve, for whom and where the important information lives. No empty marketing and no listing of all 300 blog pages.
  • Where: in the project's public folder (public/llms.txt in Nuxt, Next.js, Vite or Astro), served as text/plain or text/markdown. If your application catches all routes, add an exception.
  • Full version: the standard also provides for /llms-full.txt with the entire content of the key pages in Markdown, useful for technical documentation.

Check it is fixed

curl -si https://yourdomain.com/llms.txt | grep -iE "^(HTTP|content-type)"
curl -s https://yourdomain.com/llms.txt | head -5

Expected: 200, a text type and the first lines of your Markdown, not HTML.

Frequently asked questions

Does this make ChatGPT recommend me?

Not on its own. Whether an assistant knows you depends on it having read about you in many sources, and that is measured by AI visibility. llms.txt is one of the pieces, the cheapest one, and it helps most when an assistant visits your site live to answer a specific question.

Do I have to keep it updated?

Like the sitemap: whenever something important changes. If you generate it from your framework using the same routes as the sitemap, it maintains itself.

What if I block AI bots in robots.txt?

Then llms.txt is of little use, because they will never get to read it. Which bots you are blocking is covered by AI crawlers, and the full picture is in what AEO is.

Check it on your site

Scan your site free and see if this and 44 other checks pass, with a fix prompt for every issue.

Scan my site free

From the blog

Related checks