Understanding Your AI-Friendliness Score
What we check in each parameter and why it matters for AI visibility
❓ About This Audit
How the audit works and what the scores actually represent
No — and we want to be transparent about why. No public API exists that lets a third-party tool query whether your specific website would be cited by ChatGPT or Claude in response to a given prompt. Any tool claiming to directly measure that is making an unverifiable claim.
What our audit does is test whether your site meets the structured content, semantic markup, and metadata standards that AI retrieval systems are designed to favor. Think of it as testing whether your site speaks the same language as AI — not whether any specific AI has read it yet.
🎯 Section A — AI Standards & Discoverability
Weight: 20% of total score | Three parameters
What we check: Whether your site has a file at /llms.txt that is non-empty. We make a direct HTTP request to that path and check the response.
Scoring: 100/100 if the file exists and contains content. 0/100 if it's missing or empty. No partial credit.
What we check: We fetch your sitemap.xml and look for at least one <lastmod> date within the past 90 days. We parse the XML directly.
| Condition | Score |
|---|---|
| At least one URL updated within 90 days | 100 |
| Sitemap exists but all dates are older than 90 days | 60 |
| No sitemap found or malformed XML | 0 |
What we check: We analyze the path of the URL being audited by splitting it on hyphens and underscores and counting meaningful words. The homepage (/) automatically passes.
| Condition | Score |
|---|---|
Homepage path (/) or 2–5 meaningful words in path | 100 |
| 1 word or more than 6 words in path | 60 |
| Numeric IDs only, no readable words | 0 |
/expert-witness-medical-malpractice immediately establishes topic context, reducing the chance of misclassification. Numeric or symbol-only URLs provide no context signal at all.
🏗️ Section B — AI Content Architecture
Weight: 35% of total score — the highest-weighted section | Four parameters
Measures whether your site's content structure meets the formatting standards used by AI retrieval systems to locate and extract relevant expertise.
What we check: We scan all heading tags (H1–H6) and evaluate: whether there is exactly one H1, whether levels are skipped (e.g. H1 jumping directly to H4), and whether any headings are empty.
| Condition | Score |
|---|---|
| Single H1, logical nesting, no empty tags | 100 |
| Minor level skip (e.g. H1→H3) | 60 |
| Multiple H1s, major skips (H1→H4+), or excessive empty headings | 20 |
| No headings found | 0 |
What we check: We count all H2 and H3 tags and calculate what percentage have an id attribute. Only H2 and H3 are checked (section-level headings).
| Condition | Score |
|---|---|
| More than 80% of H2/H3 tags have id attributes | 100 |
| 20–80% of H2/H3 tags have id attributes | 60 |
| Fewer than 20% have id attributes | 0 |
What we check: We measure the ratio of readable text to total HTML size. Scripts, style blocks, SVGs, and noscript tags are removed before calculating the text content length against the raw page size.
| Condition | Score |
|---|---|
| Text content is more than 15% of total page size | 100 |
| Text content is 5–15% of total page size | 60 |
| Text content is under 5% | 20 |
What we check: We count the number of <ul>, <ol>, and <table> elements in the main content area of the page.
| Condition | Score |
|---|---|
| 3 or more lists/tables found | 100 |
| 1–2 lists/tables found | 60 |
| No lists or tables found | 20 |
🆔 Section C — Entity Clarity & Trust
Weight: 30% of total score | Three parameters
AI systems need to confirm who you are before confidently recommending you.
What we check: We look for JSON-LD <script> blocks and inspect every schema object, including those nested inside @graph arrays. We check the @type of each object.
| Condition | Score |
|---|---|
Person, Expert, or ProfilePage schema with name + jobTitle or description | 100 |
LocalBusiness or Organization schema with name | 60 |
| No qualifying schema found | 0 |
What we check: We scan all schema objects (including @graph arrays) for a sameAs property containing at least one valid HTTP/HTTPS URL.
| Condition | Score |
|---|---|
sameAs found with one or more valid URLs | 100 |
No sameAs property found in any schema | 0 |
sameAs links tell AI systems "this entity is also described at these authoritative sources" — typically LinkedIn, a university profile, or a professional association page. This cross-reference allows AI to verify your identity against third-party sources before recommending you, significantly increasing citation confidence. Without it, your profile is self-asserted with no external confirmation.
What we check: We look for date signals in three places: datePublished or dateModified in any schema object (including @graph), an article:published_time meta tag, or a visible date pattern in page text matching "Published/Modified/Updated: [date]".
| Condition | Score |
|---|---|
| datePublished/dateModified in schema or article:published_time meta tag | 100 |
| Visible date text matching "Updated: [date]" pattern on page | 60 |
| No date signals found anywhere | 0 |
📖 Section D — Readability
Weight: 15% of total score | Two parameters
How efficiently AI can parse and extract information from your content.
What we check: We find all <p> tags with more than 50 characters of text and calculate the average character length across those paragraphs.
| Condition | Score |
|---|---|
| Average paragraph under 400 characters (~3–4 sentences) | 100 |
| Average paragraph 400–800 characters | 60 |
| Average paragraph over 800 characters | 20 |
What we check: We extract all visible text, split it into sentences by punctuation, filter to sentences with 3 or more words, and calculate the average number of words per sentence.
| Condition | Score |
|---|---|
| Average sentence under 20 words | 100 |
| Average sentence 20–30 words | 60 |
| Average sentence over 30 words | 20 |
See How Your Site Scores
Run the free audit on your website — results in under 60 seconds.
Run Your Free Audit