A free llms.txt validator. Check a live URL or paste a draft, and the checker parses the file against the llmstxt.org specification: H1 title, blockquote summary, detail blocks and H2 link lists. You get a score out of 100, a grade, and the exact lines to fix.
Free · no sign-up · URL or pasted content
What is an llms.txt checker?
An llms.txt checker is a tool that tests whether an llms.txt file follows the llmstxt.org specification. This free validator fetches the file from your site, or reads a draft you paste, and checks five rules: Markdown format, one H1 title, a blockquote summary, heading-free detail blocks and H2 link lists. It returns a score out of 100, a grade and line-by-line fixes, with no sign-up.
The five rules the validator checks
Each rule maps to a requirement in the llmstxt.org specification. Every finding is marked as an error, a warning or a note.
Markdown format
The file is plain markdown that parses cleanly, with nothing the spec doesn't allow.
H1 title
Exactly one H1 with the site or project name, at the top. It is the only required section.
Blockquote summary
A short > summary directly under the H1, so the links that follow have context.
Detail blocks
Optional paragraphs or lists after the summary, with no headings before the first H2.
H2 file lists
Each H2 section holds - [name](url): note items, and a section named Optional comes last.
A 0 to 100 score with an A to F grade, findings grouped by severity, and a rendered preview of the file.
How to validate an llms.txt file
Check, fix, publish, and check again.
Pick an input mode
Choose Check by URL to validate a file that is already live, or Paste content to validate a draft before you publish it.
Enter your URL or file
Type a bare domain, a site root, or a direct /llms.txt URL — the protocol is added for you. In paste mode, drop the full markdown into the text box.
Run the check
Press Check or Validate. The file is fetched, split into specification blocks, and scored against the five structural rules.
Read the score and grade
The score ring shows weighted compliance out of 100 with a letter grade, plus how many rules passed, warned, or failed.
Work through the findings
Each finding names the rule, the line number, and the exact change to make. Expand a rule card to see every detail behind its status.
Fix, publish, and re-check
Apply the fixes, upload the file to your site root so it is served at yourdomain.com/llms.txt, then run the URL back through the checker to confirm it passes.
How to read the llms.txt report
Start with the errors, then the warnings. Notes are suggestions, not failures.
Score and grade
A weighted score from 0 to 100 with a letter grade from A to F. Each of the five rules carries part of the weight.
Passed, warned, failed
How many of the five rules the file passes outright, passes with warnings, or fails.
Errors
Breaks the specification, such as a missing H1 or link lines that aren't list items. Fix these first.
Warnings
Allowed but likely to confuse a parser, such as a missing summary or an Optional section that isn't last.
Line numbers
Each finding points at the line to change, so you can fix the file in any text editor.
Preview
A rendered view of the title, summary and link sections, the way a program would read them.
ما هو llms.txt؟
llms.txt is a markdown file published at the root of a website — yourdomain.com/llms.txt — that gives large language models a short, curated map of the site. Instead of asking a model to crawl navigation, scripts and boilerplate, the file hands it a title, a summary and a list of the pages that actually matter.
The format is defined by the specification at llmstxt.org. It is deliberately small: only H1 and H2 headings exist, and the body of each section is a list of links. That constraint is what makes the file both human-readable and trivially parseable by a program.
The spec also describes a companion convention, /llms-full.txt, which contains the expanded content itself rather than an index of links.
الترتيب المطلوب، وفقاً للمواصفات
An optional byte-order mark at the very start of the file.
An H1 with the name of the project or site — the only required section.
A blockquote with a short summary containing the key information needed to understand the rest of the file.
Zero or more markdown blocks — paragraphs, lists, tables — of any type except headings.
Zero or more sections delimited by H2 headers, each containing a file list of `- [name](url)` items with optional `: notes`.
A section named exactly “Optional” has special meaning: its URLs may be skipped when a shorter context is needed.
قواعد التحقق الخمس التي نتحقق منها
كل فحص يرتبط مباشرة ببند في مواصفات llmstxt.org. يتم تقييم كل قاعدة، ويصبح المجموع
الموزون هو درجة الامتثال والتقدير الحرفي الخاص بك.
تنسيق Markdown markdown-format
يجب أن يكون الملف بتنسيق markdown، بحيث يحتوي فقط على عناوين H1 و H2.
قم بتوفير ملف markdown عادي في الرابط /llms.txt — بدون HTML، وبدون بيانات تعريفية YAML، وبدون عناوين من H3 إلى H6. أي عنصر أعمق من H2 يعتبر خارج المواصفات.
عنوان المشروع H1 h1-title
عنوان H1 يحمل اسم المشروع أو الموقع. هذا هو القسم الوحيد المطلوب.
ابدأ الملف بسطر واحد `# اسم موقعك`. هذا هو الجزء الإلزامي الوحيد من المواصفات، ويجب أن يتواجد منه سطر واحد بالضبط.
ملخص اقتباس blockquote-summary
اقتباس يحتوي على ملخص قصير للمرءوع، يتضمن المعلومات الأساسية اللازمة لفهم بقية الملف.
ضع `> ملخص من فقرة واحدة` مباشرة أسفل عنوان H1. وضح ما هو الموقع ومن يخدمه، لكي يتمكن النموذج من تفسير كل رابط تحته.
كتل تفاصيل بدون عناوين project-details
صفر أو أكثر من أقسام markdown (مثل الفقرات، والقوائم، والجداول) من أي نوع باستثناء العناوين، وتحتوي على معلومات أكثر تفصيلاً.
أضف سياقاً اختيارياً بعد الملخص في شكل فقرات أو قوائم أو جدول. لا تستخدم عنواناً هنا — العنوان التالي في الملف يجب أن يكون أول قسم H2.
أقسام H2 مع قوائم الملفات file-lists
صفر أو أكثر من أقسام markdown مفصولة بعناوين H2، وتحتوي على قوائم ملفات تحتوي على عناوين URL لتفاصيل إضافية.
قم بتجميع الروابط تحت عناوين `## اسم القسم`، بحيث يكون رابط واحد في كل سطر على النحو التالي: `- [الاسم](https://absolute-url): ملاحظات اختيارية`. يمكن تخطي قسم يحمل اسم `Optional` تماماً عندما تكون هناك حاجة لسياق أقصر، لذا اجعله في النهاية.
كيفية كتابة ملف llms.txt متوافق
دليل التنفيذ
ستة قرارات تبقي الملف ضمن المعيار.
ابدأ بعنوان رئيسي واحد (H1). استخدم اسم موقعك أو مشروعك — ولا تضع أي شيء فوقه سوى علامة ترتيب البايت الاختيارية. هذا هو القسم الوحيد الذي تشترطه المواصفات.
أضف ملخص النص المقتبس. فقرة واحدة بصيغة `>` مباشرة تحت العنوان الرئيسي (H1) تشرح ماهية الموقع، لكي يكون للروابط أدناه سياق واضح.
اجعل كتل التفاصيل خالية من العناوين. يُسمح بإضافة فقرات أو قوائم أو جداول إضافية بعد الملخص — ولكن بدون عناوين حتى يصل الأمر إلى أول عنوان فرعي (H2).
قم بتجميع الروابط تحت أقسام العناوين الفرعية (H2). سمِّ الأقسام بناءً على ما يبحث عنه النموذج: المستندات، الأدلة، واجهة برمجة التطبيقات (API)، المدونة. العناوين المتاحة في هذا التنسيق هي H1 و H2 فقط.
اكتب عناصر قائمة الملفات بدقة. `- [اسم الصفحة](https://example.com/page): ملاحظة قصيرة`. استخدم عناوين URL المطلقة لتمكين النموذج من جدولتها أو فهمها بدون عنوان أساسي.
اجعل قسم "اختياري" في النهاية. يمكن تخطي قسم يحمل عنوان "اختياري" حرفياً عندما تكون هناك حاجة لسياق أقصر. اجعله مخصصاً للصفحات الثانوية واحتفظ به في النهاية.
قالب المعيار
النموذج الأساسي المنشور على llmstxt.org — قم نسخه واملأه بقيمك الخاصة.
# Title
> Optional description goes here
Optional details go here
## Section name
- [Link title](https://link_url): Optional link details
## Optional
- [Link title](https://link_url)
· Save it as llms.txt and upload it to your site root so it is served at yourdomain.com/llms.txt, then run it back through this checker.
The specification this checker follows is published and maintained at llmstxt.org.
What this llms.txt validator doesn't do
It checks structure against the specification, not whether the pages you list are your best ones or still load.
It doesn't fix the file for you; each finding says what to change.
A perfect score doesn't mean AI engines will read the file or cite you. llms.txt is a voluntary convention.
In URL mode it reads what your server returns at /llms.txt. If a firewall or bot protection blocks the request, paste the file instead.
llms.txt is a markdown file published at the root of a website that gives large language models a short, curated map of the site. The specification at llmstxt.org defines its structure: an H1 with the project or site name, a blockquote summary, optional heading-free detail blocks, and H2 sections containing file lists of the form - [name](url): optional notes.
Where does the llms.txt file have to be located?
At the root of your domain, served at yourdomain.com/llms.txt. The specification also describes a companion file, /llms-full.txt, which holds the expanded content itself instead of an index of links. This checker looks for both when you validate by URL.
What does this llms.txt checker validate?
Five structural rules drawn from the specification: that the file is markdown using only H1 and H2 headings, that it opens with a single H1 project title, that a blockquote summary follows it, that any further detail blocks contain no headings, and that each H2 section contains a file list of link items. Each rule is weighted, and the total becomes a score out of 100 with a letter grade.
Is the blockquote summary required in llms.txt?
The H1 with the project name is the only section the specification marks as required. The blockquote summary is described as part of the expected structure and carries the key information needed to understand the rest of the file, so this checker treats a missing summary as a problem worth fixing rather than a hard failure of the format.
What does the Optional section mean in llms.txt?
A section named exactly Optional has special meaning in the specification: the URLs listed under it may be skipped when a shorter context is needed. Use it for secondary pages such as contact, legal and policy pages, and keep it as the last section in the file.
What is the difference between llms.txt and llms-full.txt?
llms.txt is a compact index — a title, a summary, and lists of links to the pages that matter. llms-full.txt is the companion convention that contains the full content itself in one file, for cases where a model should read the material rather than follow links to it.
Does llms.txt replace robots.txt or a sitemap?
No. robots.txt tells crawlers what they are allowed to fetch and a sitemap lists every indexable URL. llms.txt does neither — it is a curated summary that tells a language model which content is worth reading and how the site fits together. They serve different purposes and can all coexist at the site root.
Do I need an account to use this llms.txt checker?
No. The checker is free and requires no sign-up. You can validate a live URL or paste the contents of a draft file, and the results are returned to you without being published anywhere.
How do I validate an llms.txt file?
Enter your site address (the checker fetches /llms.txt) or paste the file's contents, then run the check. Fix each error and warning it lists, publish the file at your site root, and run the check again until the score is where you want it.
Is this llms.txt validator free?
Yes. The checker is free and needs no account. It works on a live URL or on pasted content, so you can test a draft before you publish it.
More tools for AI crawlers
Build the file, set crawl rules, and see what AI agents receive from your pages.
A valid llms.txt is a map. AI Rank Lab shows whether ChatGPT, Claude, Gemini, Perplexity and Google's AI answers actually mention and cite you.
Brand Visibility
Run the prompts your buyers ask on six AI engines and record whether your brand is mentioned, where, in what tone, and which URLs are cited. Every run is stored so you can compare over time.
ChatGPT, Claude, Gemini, Perplexity, AI Overviews and AI Mode