Modern search engines and large language models (LLMs) are increasingly using structured information from websites for training, generating answers, and forming snippets. The llms.txt specification is an open standard proposed by the LLM community that allows website owners to provide AI models with a concise, structured description of their resource in Markdown format. This file is analogous to robots.txt, but not for search engine crawlers — it is for large language models.
In this guide, we will cover in detail:
- What
llms.txtis and why your business needs it - File format and Markdown syntax
- Rules for formatting sections and links
- How to set up
llms.txton the BooStore.pro platform - Real examples from a live project
- Recommendations for updates and maintenance
1. What is llms.txt and why you need it
llms.txt is a text file placed in the root of your website (at https://yoursite.com/llms.txt) that contains a brief description of the site, its features, key sections, and links to documentation. The file is written in Markdown format and is intended to be read by language models (GPT, Claude, Llama, Gemini, etc.).
Why your online store needs it:
- Context control: You decide what information the AI receives about your business, products, and services. Instead of the model "guessing" your specifics from random pages, you give it a clear, structured knowledge base.
- Better recommendations: If your assistant or chatbot uses an LLM for responses, having
llms.txtallows it to give accurate answers about your products, prices, discounts, payment methods, and shipping. - AI search promotion: Modern AI-based search engines (Google SGE, Perplexity, Bing AI) may take
llms.txtinto account when generating answers for users. - Support automation: The file contents can be used for fine-tuning your own model or in a RAG system (Retrieval-Augmented Generation) for technical support.
Important: llms.txt does not replace robots.txt and does not manage indexing. It is exclusively a source of information for AI — a kind of "business card" for your website aimed at language models.
2. llms.txt format and syntax
The llms.txt file uses a lightweight Markdown syntax with a few additional conventions. Let us look at the basic elements.
2.1. Header structure
The main heading levels are # (H1) and ## (H2). H1 is used for the site/company name, H2 for description sections.
2.2. Meta information (> block)
Immediately after the H1 heading, it is recommended to place a meta-information block formatted as a Markdown blockquote (> symbol before each line). This block specifies:
- Site URL — canonical URL
- Languages — list of supported languages (comma-separated)
- Type — key characteristic (SaaS, CMS, Marketplace, etc.)
- Founded — year of foundation / launch
- Additional tags — any relevant data (region, audience, etc.)
2.3. Lists and nesting
Use bulleted lists (- or *) to enumerate features, modules, and capabilities. For nested lists, use an indent of 2 or 4 spaces.
2.4. Links and separators
Include links to documentation and key pages in Markdown format: [text](URL). Use --- (three dashes) to separate large sections.
2.5. Code blocks (inline and multi-line)
For system names, classes, and endpoints, use `backticks` (inline code). Multi-line code examples should be formatted with triple backticks and a language specifier.
3. Sections and their purpose
Here is the recommended set of sections for an llms.txt file for an online store or service website:
| Section (H2 heading) | Contents |
|---|---|
| Brief description | General project description: who you are, what you do, key specialization. 1-3 sentences. |
| Main modules | List of all functional blocks with a brief explanation of each. Group by category. |
| Automation | Description of import, synchronization, API, schedulers, robotic processes. |
| Products and catalog | Information about catalog structure, properties, characteristics, variants, filters. |
| Payment systems | List of integrated payment gateways (Fondy, Stripe, LiqPay, Monobank, etc.) |
| Delivery and pickup | Shipping methods, pickup points, logistics service APIs. |
| SEO and promotion | PageSpeed, Schema.org, Sitemap, robots.txt, marketplace feeds, Google Merchant. |
| Design and customization | Templates, design editor, block library, full access to HTML/CSS/JS. |
| Booking | If the booking module is available — description of slots, calendar, prepayment. |
| Statistics and analytics | CRM, Google Analytics, Facebook Pixel, JSON statistics. |
| Architecture and performance | Tech stack: Vanilla JS, caching, Lazy Loading, Core Web Vitals. |
| Tools | A/B testing, affiliate programs, form builder, popup windows, file upload. |
| Scripts for websites | Link to the script library and a brief description of categories. |
| Ready-made block library | Description of the visual HTML/CSS block library for design assembly. |
| Knowledge base / Documentation | Links to documentation, FAQ, video tutorials. Breakdown by section. |
| Site pages (sitemap) | List of all important pages with full URLs. |
| Instructions / Video tutorials | Links to step-by-step guides and videos. |
| Website examples | List of real cases on the platform (if applicable). |
| Pricing and limits | Information about the free plan, restrictions, paid options. |
4. How to set up llms.txt on BooStore.pro
The BooStore.pro platform provides built-in capabilities for creating and managing llms.txt directly from the admin panel, without needing to edit files on the server.
4.1. Creating an LLM page in the "My Pages" section
- Go to Control Panel → My Pages (or Pages in the sidebar).
- Click the "Add page" button.
- In the editor that opens, find the "Page type" field (or "Functional pages").
- In the list of functional pages, select "LLM (AI knowledge base / llms.txt)". It is located right after the "404 Error Page" item.
- The system will automatically set the system page name to
llms.
Note: After selecting the LLM type, the page will be served at https://your-site/llms.txt with the correct MIME type text/plain; charset=UTF-8. All you need to do is fill it with content.
4.2. Filling the LLM page with content
A large text field for entering content in Markdown format will appear in the page editor. You can write text manually or paste a ready-made template. The following are supported:
- Markdown headings (
#,##) - Lists (numbered and bulleted)
- Blockquotes (
> block) - Code (
`inline`and```block```) - Links (
[text](URL)or just URL) - Separators (
---) - Bold text (
**text**)
Additionally, you can create a separate version of llms.txt for each language (RU, UA, EN, PL). Simply add the corresponding language version of the page through the multilingual tabs in the editor.
4.3. Dynamic generation via PHP
If you need a more complex, dynamic llms.txt (with data pulled from the database: current promotions, product counts, latest news), you can use the llms.php file in the root of your site. It detects the user's language, checks whether a custom LLM page exists in the database for the given site (created through the editor), and if so — outputs its content. If no custom page exists — it serves a pre-set fallback text with a full description of the platform.
To serve llms.php as /llms.txt, configure URL rewriting in your web server configuration (Apache — .htaccess, Nginx — location config). Example for Apache:
5. Full example: our llms.txt (BooStore.pro)
Below is the actual content of llms.php from the boostore.pro website. You can use it as a template for your own project, replacing the names, links, and descriptions with your own.
The full file on the site is over 500 lines and includes all sections: automation, products and catalog, delivery, booking, statistics and analytics, architecture, all tools, script library, visual block library, sitemap, instructions, video tutorials, website examples, and free plan terms.
6. Design recommendations
| Directive / technique | Purpose and recommendation |
|---|---|
| H1 heading | One per file. Contains the site/company name. Clearly identifies what the file is about. |
| Meta block (> ) | Immediately after H1. URL, languages, type, contacts — everything the LLM should know first. |
| Lists (- or *) | Use for listing capabilities. Nesting — 2 spaces. Each item no longer than 1-2 lines. |
| **Bold text** | Highlight the module or feature name. LLMs perceive bold text as a key concept. |
| Sections (---) | Separate large semantic blocks. Improves readability for both humans and models. |
| Links | Provide full URLs. LLMs may ignore them, but they serve as information validation. |
| Brevity | Optimal file size is 100–600 lines. Avoid flowery descriptions; models process facts better. |
| Relevance | Update the file when functionality changes, new modules are added, or pricing is updated. |
| Multilingual | Create a separate version for each site language. In BooStore.pro, this is one page with translations. |
| hreflang in header | For multilingual llms.txt, specify links to alternative language versions in the meta block. |
7. Integration with robots.txt
To let LLM bots know about your llms.txt, it is recommended to add a special comment to robots.txt. Note that the Sitemap: directive is intended only for XML sitemaps, so use the comment format for llms.txt:
Additionally, you need to allow access for LLM bots in robots.txt. Modern models use the following User-agent strings:
8. Conclusion
llms.txt is a simple yet powerful tool that allows your business to properly introduce itself in the era of AI search and assistants. By following the rules described above and using the built-in capabilities of BooStore.pro, you can create a full-fledged knowledge base for language models in 15–30 minutes.
Key takeaways:
- The file must be in the root of the site (accessible at
/llms.txt). - Format — Markdown, encoding — UTF-8, MIME type —
text/plain. - Start with an H1 heading and a
>meta block. - Structure information into H2 sections, use lists.
- Include links to documentation and key pages.
- Update the file regularly as the site changes.
- Use BooStore.pro — create a service page with the LLM type in the "My Pages" section, and the system will serve it as
/llms.txtwith the correct headers.
Learn more about the BooStore.pro platform: https://boostore.pro/en/
Documentation: https://boostore.pro/en/docs/