AI Visibility Score · research
PL

llms.txt — the file that 95% of Polish companies are missing

llms.txt is a simple text file in the root directory of your website that tells AI models — ChatGPT, Gemini, Perplexity, Claude — what your company does, what products you offer, and which pages are the most important. It is the equivalent of sitemap.xml from 2005: whoever implements it first gains an advantage that latecomers will spend years catching up on. 95% of Polish companies do not have an llms.txt file.

Why llms.txt matters

When a user asks a question to an AI assistant, the model must decide which sources to cite. It relies on an index built by crawlers (GPTBot, PerplexityBot, ClaudeBot, Googlebot). If your website is unreadable to these crawlers, you won't make it into the index — you won't be cited — you don't exist in AI-search.

The llms.txt file gives AI models a single entry point — a structured, concise description of the company in Markdown format. Instead of analyzing hundreds of subpages, the model reads one document and knows: who you are, what you do, what products you have. The analogy: sitemap.xml told Google in 2005 where your pages are. llms.txt tells ChatGPT who you are and why you're worth citing.

In traditional SEO, you have 10 positions on the results page. In AI-search, the model provides 1-3 companies. There is no second page of results.

FAQ

What exactly is the llms.txt file? A simple text file placed in the root directory of a website (example.com/llms.txt), providing AI models with structured Markdown information about the company. The equivalent of robots.txt and sitemap.xml for AI crawlers.

Does ChatGPT actually read llms.txt? Yes. GPTBot and bots from Perplexity, Anthropic, and Google check for the presence of llms.txt when indexing pages.

How much does implementation cost? Nothing — it's a simple text file. Implementation time: 1-2 hours.

Does llms.txt replace robots.txt or sitemap.xml? No, it complements them. robots.txt tells bots what they can crawl, sitemap.xml indicates URL structure, llms.txt explains to AI models what the company does.

Optimal length: 300-500 words (2-4 KB). An extended llms-full.txt file can be 1,000-3,000 words.

GEO Guide · llms.txt Standard

llms.txt — the file that 95% of Polish companies are missing

What is it and how to implement it? A complete guide.

Scenario: Your potential client types into ChatGPT: „Which company in Poland is the best at [your industry]?” The model searches the internet, but can't understand your website — no structured data, no llms.txt. The AI recommends a competitor. You don't even know you lost a client.

llms.txt is a simple text file in the root directory of your website that tells AI models — ChatGPT, Gemini, Perplexity, Claude — what your company does, what products you have, and which pages are the most important. It is the equivalent of sitemap.xml from 2005: whoever implements it first gains an advantage that latecomers will spend years catching up on.

An AIVS audit covering over 400+ Polish companies showed that 95% of them do not have an llms.txt file. This means the window of opportunity is wide open — but not for long.

01
Problem

Why llms.txt
matters

When a user asks a question to an AI assistant, the model must decide in a fraction of a second which sources to cite. It doesn't search the entire internet anew — it relies on an index built by crawlers (GPTBot, PerplexityBot, ClaudeBot, Googlebot). If your website is unreadable to these crawlers, you won't make it into the index. If you don't make it into the index, you won't be cited. If you're not cited — you don't exist in AI-search.

The llms.txt file gives AI models a single entry point — a structured, concise description of your company in Markdown format that crawlers can read and understand in seconds. Instead of analyzing hundreds of subpages (some of which are inaccessible, some rendered only on the client side, and some outdated), the model reads one document and knows: who you are, what you do, what products you have, and where to find details.

The analogy is precise: sitemap.xml told Google in 2005 where your pages are. Companies that implemented it early had an indexing advantage for years. Companies that waited played catch-up. llms.txt is exactly the same moment — but for AI-search.

sitemap.xml told Google where your pages are. llms.txt tells ChatGPT who you are and why you're worth citing.

The difference, however, is significant: in traditional SEO you have 10 positions on the results page. In AI-search, the model provides 1–3 companies. If you're not in that top three, you don't exist — and there is no second page of results for the user to click on.

02
AI Impact

How llms.txt impacts
visibility in AI-search

Each of the major AI models uses its own crawler to index websites. llms.txt impacts all of them:

ChatGPT (GPTBot) — OpenAI's crawler checks for the presence of llms.txt during indexing. The file allows the model to quickly understand a company's profile without analyzing the entire site structure. Companies with llms.txt provide GPTBot with a ready-made “business card” that the model can use when generating responses.

Perplexity — PerplexityBot actively crawls pages in real time with each query. llms.txt gives it instant context: what the company does, what products it has, and which pages contain key information. This is particularly important because Perplexity cites sources with links.

Gemini / Google AI Overviews — Google integrates results from its traditional index with generative responses. llms.txt serves as an additional signal for the model, helping it understand entities (who the company is, what it offers) — which directly translates to the chance of appearing in AI Overviews.

Claude (ClaudeBot) — Anthropic's crawler indexes pages for the Claude model. llms.txt simplifies the process of recognizing a company and its offering, increasing the probability of being cited in responses.

Data from the AIVS study: an audit of over 400+ Polish companies showed that 95% do not have an llms.txt file. Moreover, companies that had better structured information architecture (schema.org, SSR, llms.txt) scored an average of 18 points higher on the AIVS™ (AI Visibility Score) scale than companies with a comparable offering but without these elements.

This is not correlation — it's a mechanism: AI crawlers have a limited time budget for each page. If they can't find readable data within a few seconds, they move on. llms.txt reduces the time to understand a company from minutes to seconds.

03
Specification

llms.txt file structure
— from minimum to full version

The llms.txt file is plain Markdown placed at yourdomain.com/llms.txt. There is no single mandatory schema, but the standard proposed by llmstxt.org defines a recommended structure. Below are three examples — from minimal to comprehensive.

Minimal structure (sufficient to get started)

# Company Name

> A one-sentence description of what the company does.

## Products / Services

- [Product A](https://example.com/product-a): Short description.
- [Product B](https://example.com/product-b): Short description.

## Links

- [About us](https://example.com/about)
- [Contact](https://example.com/contact)
- [Blog](https://example.com/blog)

Full example — e-commerce store

# FurnitureOnline.com

> A Polish online store with home and office furniture.
> Operating since 2012. Delivering across all of Poland.

## About the company

FurnitureOnline.com is one of the largest Polish online
furniture stores. We specialize in Scandinavian, industrial,
and modern furniture. We have our own warehouse in Poznan
and offer 48-hour delivery.

## Product categories

- [Sofas and couches](https://furnitureonline.com/sofas):
  Over 200 models of sofa beds and corner sofas.
- [Desks](https://furnitureonline.com/desks): Desks for
  remote work, gaming, and classic use.
- [Office chairs](https://furnitureonline.com/chairs):
  Ergonomic chairs with certification.
- [Garden furniture](https://furnitureonline.com/garden):
  Rattan, wooden, and aluminum sets.

## Differentiators

- Free delivery on orders over 500 PLN
- 30-day no-questions-asked return policy
- In-house assembly team in 12 cities
- 4.7/5 rating on Trustpilot (2,340 reviews)

## Links

- [About us](https://furnitureonline.com/about)
- [Terms and conditions](https://furnitureonline.com/terms)
- [Contact](https://furnitureonline.com/contact)
- [Interior design blog](https://furnitureonline.com/blog)
- [FAQ](https://furnitureonline.com/faq)

Example — law firm

# Kowalski & Partners Law Firm

> A law firm specializing in commercial law, IT law,
> and data protection. Headquarters: Warsaw.

## Specializations

- [Commercial law](https://kowalski-legal.pl/commercial-law):
  Company services, trade agreements, M&A.
- [IT law](https://kowalski-legal.pl/it-law):
  SaaS contracts, licenses, technology disputes.
- [GDPR / data protection](https://kowalski-legal.pl/gdpr):
  GDPR audits, DPO, privacy policies.

## Team

- Jan Kowalski — managing partner, 20 years of experience
- Anna Nowak — senior associate, IT law
- Piotr Wiśniewski — associate, GDPR

## Publications

- [Legal blog](https://kowalski-legal.pl/blog)
- [Report: AI and law in Poland 2026](https://kowalski-legal.pl/ai-report)

## Contact

- Email: kancelaria@kowalski-legal.pl
- Phone: +48 22 123 45 67
- Address: ul. Marszałkowska 1, 00-001 Warsaw

Key principles: the file must be in UTF-8 format, accessible without authentication, and served as text/plain or text/markdown. Avoid HTML inside the file — AI crawlers expect plain Markdown.

04
Two variants

llms.txt vs llms-full.txt
— when to use which

The llmstxt.org standard provides for two files that serve complementary roles:

llms.txt — a concise file (300–500 words, approximately 2–4 KB). Contains the essence: company name, one- or two-sentence description, list of key products/services with links, differentiators, and contact details. It's the “business card” — a crawler reads it in seconds and knows who it's dealing with. Every company should have at least this file.

llms-full.txt — an extended file (1,000–3,000 words, approximately 5–15 KB). Contains detailed product descriptions, case studies, documentation excerpts, FAQ, team information, and company history. It's the “compendium” — a crawler that wants a deeper understanding reaches for this file as a second source.

Recommendation: start with llms.txt. If your company has a complex offering (many products, B2B services, technical documentation), add llms-full.txt as an extension. In llms.txt, include a link to llms-full.txt — crawlers will follow it automatically.

Featurellms.txtllms-full.txt
Length300–500 words1,000–3,000 words
PurposeQuick company identificationDeep understanding of the offering
ContentDescription, products, links, contactCase studies, FAQ, documentation, team
PriorityRequiredRecommended for complex offerings
URL/llms.txt/llms-full.txt
05
Implementation

Step-by-step implementation
— WordPress, Shopify, headless

WordPress

Step 1: Create a llms.txt file in a text editor (e.g., VS Code, Notepad++). Save as UTF-8 without BOM.

Step 2: Upload the file to the WordPress root directory (the same one containing wp-config.php) via FTP or your hosting file manager.

Step 3: Check availability at yourdomain.com/llms.txt. If you see a 404 page instead of the file, add a rule in .htaccess:

# .htaccess — serving llms.txt
RewriteEngine On
RewriteRule ^llms\.txt$ /llms.txt [L,NC]
RewriteRule ^llms-full\.txt$ /llms-full.txt [L,NC]

Step 4: Alternatively, use the WP LLMs.txt or Jerryll LLMs plugin, which adds a panel in the WordPress dashboard for editing the file without FTP.

Shopify / Wix / Squarespace (SaaS platforms)

SaaS platforms don't allow placing .txt files in the domain's root directory by default. Workarounds:

Shopify: Use a /pages/llms.txt page with content in text format and set up a 301 redirect from /llms.txt to that page. Alternatively, use Shopify Functions or a proxy route in the theme.

Wix: Create a /llms-txt page and configure a URL redirect in the SEO panel. Place the content in an unformatted text block.

Squarespace: Use Code Injection (Developer Mode) or create a page with code embedded in a <pre> block.

Custom CMS / Headless (Next.js, Nuxt, Gatsby)

For headless applications, the cleanest solution is serving llms.txt as a static file or route handler. Example for Next.js (App Router):

// app/llms.txt/route.ts
import { NextResponse } from 'next/server';

const LLMS_TXT = `
# Company Name

> A short description of the company and its operations.

## Products / Services

- [Product A](https://example.com/a): Description.
- [Product B](https://example.com/b): Description.

## Links

- [About us](https://example.com/about)
- [Contact](https://example.com/contact)
`.trim();

export function GET() {
  return new NextResponse(LLMS_TXT, {
    headers: {
      'Content-Type': 'text/plain; charset=utf-8',
      'Cache-Control': 'public, max-age=86400',
    },
  });
}

Alternatively, place the llms.txt file in the public/ directory — Next.js will automatically serve it at /llms.txt.

06
Testing

How to verify
that llms.txt works

Simply uploading the file is only half the journey. Below are five tests that confirm llms.txt is properly implemented and accessible to AI crawlers.

Test 1 — Accessibility. Go to yourdomain.com/llms.txt in your browser. You should see plain text (Markdown). If you see a 404 page or HTML instead of text — the file is inaccessible or being served with the wrong MIME type.

Test 2 — Encoding. Check whether special characters display correctly. If you see garbled text — the file is not saved in UTF-8. Open it in an editor and re-save as UTF-8 without BOM.

Test 3 — Crawler access. Check your robots.txt to make sure it doesn't block access to /llms.txt. A Disallow: /llms.txt rule will prevent AI crawlers from reading the file. Make sure GPTBot, PerplexityBot, ClaudeBot, and Googlebot have access.

Test 4 — Crawl verification. Use curl with a crawler user-agent to simulate its behavior:

curl -A "GPTBot/1.0" https://yourdomain.com/llms.txt
curl -A "PerplexityBot" https://yourdomain.com/llms.txt
curl -A "ClaudeBot" https://yourdomain.com/llms.txt

If the response is status 200 and Markdown content — AI crawlers can read your file.

Test 5 — AI verification. Ask ChatGPT, Perplexity, or Claude a question about your company. Compare the answer with the content of your llms.txt. If the model starts providing information consistent with the file (correct name, description, products) — the file has been indexed. Note: indexing may take from a few days to a few weeks.

07
Comparison

llms.txt vs robots.txt
vs sitemap.xml

These three files serve different, complementary functions. None of them replaces the others — together they form a complete set of instructions for bots (both traditional and AI).

Featurerobots.txtsitemap.xmlllms.txt
PurposeBot access controlURL map for indexingCompany description for AI models
Answers the questionWhat can / cannot be crawled?What pages exist?Who is the company and what does it do?
FormatText (Allow/Disallow rules)XMLMarkdown
AudienceAll botsSearch engines (Google, Bing)AI crawlers (GPTBot, PerplexityBot, ClaudeBot)
Adoption among Polish companies~90%~85%~5%
Standard since199420052024

Synergy: robots.txt should allow AI crawlers access to key resources. sitemap.xml points them to the structure and URLs. llms.txt explains what the company does and which content is most important. Omitting any of these elements creates a gap in communication with bots.

Recommendation: implement all three files. If you have robots.txt and sitemap.xml but are missing llms.txt — you have a gap in communication with AI models. If you have llms.txt but robots.txt blocks AI crawlers — the file is useless.

08
Mistakes

Most common mistakes
when implementing llms.txt

Based on audits of over 400+ Polish companies, we collected six of the most common mistakes that prevent llms.txt from fulfilling its role — even when the file physically exists on the server.

Mistake 1 — File served as HTML instead of text. AI crawlers expect a response with text/plain or text/markdown type. If the server returns text/html (e.g., because the CMS wraps the file in a page template), the bot sees HTML instead of Markdown and doesn't parse the content correctly.

Mistake 2 — Blocking AI crawlers in robots.txt. Many companies add Disallow: / rules for GPTBot or PerplexityBot to robots.txt while simultaneously publishing llms.txt. This is a contradiction — the crawler can't read a file it doesn't have access to.

Mistake 3 — Outdated content. An llms.txt with outdated product descriptions, old prices, or non-existent URLs is worse than having no file at all — the AI model will cite incorrect information, which damages brand credibility.

Mistake 4 — File too long or too short. An llms.txt containing 50 words doesn't give the model enough context. An llms.txt containing 5,000 words exceeds the crawler's token budget. The optimal length is 300–500 words for llms.txt and 1,000–3,000 for llms-full.txt.

Mistake 5 — Incorrect encoding. A file saved in Windows-1250 or Latin-2 encoding instead of UTF-8 displays garbled characters instead of proper text. The AI model interprets such content as corrupted and skips it.

Mistake 6 — Copying About Us content instead of writing for AI. llms.txt is not a copy of the “About us” page. It's a document designed for the specific needs of AI crawlers: structured Markdown, links to key resources, concrete facts (not marketing jargon). An AI model doesn't need “we are a market leader” — it needs “we serve 1,200 B2B clients in the IT sector”.

09
Obligation

Is llms.txt
mandatory?

Formally — no. llms.txt is not a legal requirement or a W3C technical standard. No AI model requires this file to function. Your website will be crawled without it.

Practically — yes. The sitemap.xml analogy is precise: in 2005, nobody required sitemap.xml. Websites were indexed without it. But companies that implemented it early had faster and more complete indexing. Those that waited played catch-up for years.

llms.txt works the same way — it's not a requirement, but a competitive advantage. In an environment where 95% of Polish companies don't have this file, implementing it costs $0 and takes 1–2 hours. The cost-to-benefit ratio is asymmetrically in favor of implementation.

Cost / benefit analysis:

  • Implementation cost: $0 (text file) + 1–2 hours of work to write content and upload
  • Cost of not implementing: potential invisibility in the growing AI-search channel, loss of recommendations, lack of control over brand narrative
  • Implementation risk: zero — the file does not affect traditional SEO and cannot “break” your website

The only reason not to implement llms.txt is a conscious decision to block AI crawlers (e.g., to protect premium content). In every other case, the absence of llms.txt is simply a missed opportunity.

10
Data · Poland

Data from the Polish market
— audit of 400+ companies

The AIVS audit covered over 400+ Polish companies across five sectors: telecommunications, e-commerce, fintech, SaaS, and professional services. The results regarding llms.txt are unambiguous:

Sector% with llms.txtAvg AIVS™Comment
Telecommunications0%38/100Not a single operator has llms.txt
E-commerce3%42/100Isolated cases, mostly startups
Fintech7%51/100Best result, but still marginal
SaaS12%55/100Tech companies adopt fastest
Professional services2%35/100Law firms, consulting — near-zero adoption

Key takeaways:

  • Even in the SaaS sector (highest adoption) — 88% of companies don't have llms.txt
  • Companies with llms.txt and well-structured information architecture scored an average of 18 points higher on AIVS™
  • Telecommunications (large budgets, large teams) — 0% llms.txt adoption, lowest AIVS™ scores outside of professional services
  • The window of opportunity is wide open: implementing llms.txt now gives you a first-mover advantage in almost every sector

In a world where 95% of companies don't have llms.txt, simply implementing it puts you in the top 5% of AI visibility leaders. It's the lowest-hanging fruit in the history of digital marketing.

FAQ - pytania kluczowe

Najczęściej zadawane pytania o GEO i AIVS™

What exactly is the llms.txt file?
llms.txt is a simple text file placed in the root directory of a website (example.com/llms.txt) that provides AI models — ChatGPT, Gemini, Perplexity, Claude — with structured Markdown information about the company, its products, and the most important pages. It's the equivalent of robots.txt and sitemap.xml, but designed specifically for AI crawlers.
Does ChatGPT actually read llms.txt?
Yes. GPTBot (OpenAI's crawler) and bots from Perplexity, Anthropic, and Google check for the presence of llms.txt when indexing pages. The file serves as a quick, structured entry point for understanding a company — instead of analyzing hundreds of subpages, the model reads one document describing the brand, offering, and key resources.
How much does implementing llms.txt cost?
Creating the file itself costs $0 — it's a simple text file. The only cost is the time needed to write the content and upload it to the server (1–2 hours). For WordPress, a plugin or .htaccess edit is sufficient. The cost-to-benefit ratio is asymmetrically in favor of implementation.
How often should llms.txt be updated?
We recommend updating it with every significant change to the company's offering: new product, pricing change, new location. At a minimum — once per quarter. The file should always be consistent with the current state of the website. An outdated llms.txt is worse than no file at all — the AI model will cite incorrect information.
Does llms.txt replace robots.txt or sitemap.xml?
No. llms.txt does not replace robots.txt or sitemap.xml — it complements them. robots.txt tells bots what they can crawl. sitemap.xml indicates the structure and URLs. llms.txt explains to AI models what the company does. These three files work synergistically.
Does llms.txt work on Shopify / Wix / Squarespace?
Yes, but it requires a workaround. These platforms don't allow placing a .txt file in the domain's root directory by default. The solution is to create a /llms.txt page with a text/plain response type or set up a 301 redirect from /llms.txt to a page with content in text format.
What is the optimal length for llms.txt?
The recommended length for llms.txt is 300–500 words (approximately 2–4 KB). The file should be concise but complete. An extended llms-full.txt file can be 1,000–3,000 words. A file that's too short (under 100 words) doesn't give the model enough context. One that's too long (over 5,000 words) exceeds the crawler's token budget.
Does llms.txt help with traditional SEO?
Directly — no, because Googlebot does not use llms.txt for ranking in traditional SERPs. Indirectly — yes, because working on llms.txt forces you to organize your information architecture, which improves overall site quality. Additionally, Google AI Overviews use the same signals as other AI models.
Podsumowanie · Czas na decyzję

Nowy wyścig już trwa.
Pytanie brzmi: czy Twoja marka
biegnie - czy stoi na trybunach?

Świat nie wróci do czasów, gdy każda decyzja zakupowa zaczynała się od listy linków w Google. Coraz częściej zaczyna się od pytania do asystenta AI - a ten wskazuje 2–3 opcje, które „ma w głowie". Dobra wiadomość: wielu polskich graczy wciąż popełnia podstawowe błędy. To rzadkie okno szansy: firmy, które zaczną teraz, mogą w ciągu kilku lat „przeskoczyć kolejkę" w rekomendacjach asystentów AI.

Pierwszy krok nic nie kosztuje: darmowy AIVS™ Score — automatyczny audyt widoczności Twojej firmy w ChatGPT, Gemini i Perplexity. W 10–15 minut zobaczysz wynik 0–100 i pozycję na tle 284 przebadanych firm. Pełny raport — z listą barier i planem naprawy — odblokujesz za 149 zł netto.

Wolisz poczytać? Pobierz raport PDF →
Wynik w 10–15 minut · Pełny raport 149 zł netto · Benchmark 284 polskich firm
Łukasz S.
Founder & CEO, AIVS
GEO expert and creator of the AIVS™ methodology. Conducted AI visibility audits for over 400+ Polish companies across 5 sectors. Author of research on Generative Engine Optimization in Poland.
LinkedIn →
AIVSllms.txt · GEO Guide · Poland · March 2026