Skip to content
Leadee
Not translated yet.This page is not available in Deutsch yet, so you are reading the English version.Open the English page
Methodology

Every AI crawlability check, explained

Leadee's AI crawlability report runs 74 checks, catalog version 2026-10-27. Each one below links back from the issue card that found it.

AI access

AI search bots allowed in robots.txt

access.robots_search_bots

Severity
high
Effort
S
Weight
1
Who can fix
site admin

Blocking an AI search or answer bot (e.g. OAI-SearchBot, PerplexityBot) in robots.txt prevents your site from appearing in that engine's AI-powered answers entirely.

How to fix: Remove the Disallow rule for the listed bots, or scope it so it no longer covers the whole site.

AI training bot policy

access.robots_training_bots

Severity
info
Effort
S
Weight
0
Who can fix
site admin

Blocking a training-only bot (e.g. GPTBot, CCBot) is a legitimate policy choice and does not remove you from AI search answers — this is informational, not a score deduction.

How to fix: No action required; this reflects your own robots.txt policy choice.

robots.txt is healthy

access.robots_txt_health

Severity
high
Effort
S
Weight
1
Who can fix
site admin

A robots.txt that errors, is oversized, or redirects away from the site is often treated by bots as a full block, even if the rules inside would otherwise allow crawling.

How to fix: Serve robots.txt as a plain 200 response, under 500 KiB, on the same domain.

No firewall block on AI bots

access.waf_blocks_bot

Severity
critical
Effort
S
Weight
1
Who can fix
site admin

A WAF or CDN can block a bot's user agent before your server or CMS ever sees the request — robots.txt alone cannot fix this, and the bot cannot read your site regardless of your robots.txt policy.

How to fix: Allow-list the affected bot's user agent at your firewall/CDN.

No AI-blocking meta robots tags

access.meta_robots

Severity
high
Effort
S
Weight
1
Who can fix
content editor

A noindex, nosnippet, noai, or noimageai directive stops AI systems from reading, quoting, or indexing the page, even if robots.txt allows crawling.

How to fix: Remove the blocking directive from the meta robots tag unless it is intentional.

No AI-blocking X-Robots-Tag header

access.x_robots_tag

Severity
high
Effort
S
Weight
1
Who can fix
developer

An X-Robots-Tag header has the same blocking effect as a meta tag but is set at the server level, so it is easy to leave in place by accident after a staging-to-production move.

How to fix: Remove the blocking X-Robots-Tag header from the affected responses.

Crawled pages return healthy status codes

access.http_errors

Severity
high
Effort
M
Weight
1
Who can fix
developer

A page that errors or silently shows a 'not found' message while returning 200 wastes crawl budget and cannot be cited, since there is no real content to read.

How to fix: Fix the underlying error, or return a real 404/410 instead of a 200 'not found' page.

Clean redirects

access.redirect_chains

Severity
medium
Effort
S
Weight
1
Who can fix
developer

Inconsistent http/https or www/non-www redirects add extra hops and can split how AI crawlers canonicalize the same page across multiple URLs.

How to fix: Redirect straight to the final https + canonical host in a single hop.

HTTPS is configured correctly

access.https

Severity
medium
Effort
S
Weight
1
Who can fix
site admin

A site without working HTTPS, or without HSTS, is less trusted by crawlers and browsers alike and risks serving mixed/insecure content.

How to fix: Serve the site over HTTPS with a valid certificate and a Strict-Transport-Security header.

No rate limiting during a polite crawl

access.rate_limited

Severity
medium
Effort
M
Weight
1
Who can fix
site admin

If a single polite request per second triggers rate limiting, well-behaved AI bots are also likely to be throttled or blocked during normal crawling.

How to fix: Raise the rate limit (or allow-list known bot user agents) so a slow, polite crawl is never throttled.

Rendering

Server-rendered text

render.ssr_text

Severity
high
Effort
L
Weight
1
Who can fix
developer

AI crawlers typically do not execute JavaScript, so a page that only renders content client-side looks blank to them and cannot be read or cited.

How to fix: Make sure the key headings and paragraphs are present in the initial server response, not only after client-side rendering.

Main content is identifiable

render.main_content

Severity
medium
Effort
M
Weight
1
Who can fix
developer

Without a clear main-content landmark, AI crawlers struggle to separate the page's real content from repeated navigation and footer boilerplate.

How to fix: Wrap the primary page content in a <main> or <article> element.

Main content is visible HTML text

render.hidden_content

Severity
low
Effort
M
Weight
1
Who can fix
developer

If the main content only lives in a JSON hydration blob, a long data-* attribute, or an iframe, a bot reading raw HTML text sees none of it.

How to fix: Server-render the main content as visible HTML text, not only inside a JSON blob or iframe.

Discovery

Sitemap

discovery.sitemap

Severity
medium
Effort
S
Weight
1
Who can fix
site admin

A valid sitemap is the fastest way for crawlers to discover every page on the site, and a fresh lastmod tells them what to re-check first.

How to fix: Publish a valid /sitemap.xml listing your pages, and reference it from robots.txt.

Sitemap accuracy

discovery.sitemap_quality

Severity
medium
Effort
S
Weight
0.6
Who can fix
site admin

A sitemap listing dead URLs or copy-pasted lastmod dates wastes crawl budget and makes it harder for crawlers to trust the freshness signal.

How to fix: Remove or fix sitemap entries that 404/redirect, and keep lastmod dates accurate per URL.

llms.txt

discovery.llms_txt

Severity
low
Effort
S
Weight
1
Who can fix
content editor

llms.txt gives AI agents a quick, structured summary of your site and key pages; it is a minor signal but costs little to get right.

How to fix: Publish /llms.txt following the llmstxt.org format: an H1 title, a one-line summary, and link sections.

Canonical tags

discovery.canonical

Severity
high
Effort
S
Weight
1
Who can fix
developer

A missing or conflicting canonical tag leaves AI crawlers unsure which URL is authoritative, which can split or dilute citations across duplicate URLs.

How to fix: Add exactly one canonical tag per page, pointing to the preferred URL on your own domain.

Unique titles and descriptions

discovery.duplicates

Severity
medium
Effort
S
Weight
0.6
Who can fix
content editor

Duplicate or missing titles and descriptions make it harder for AI systems to tell pages apart and to summarise each one accurately.

How to fix: Give every page a unique <title> and meta description that summarise that specific page.

hreflang tags are valid and reciprocal

discovery.hreflang

Severity
low
Effort
S
Weight
1
Who can fix
developer

An invalid language code or a one-way hreflang link confuses search/AI engines about which page serves which language.

How to fix: Fix invalid language codes and make sure every hreflang pair links back to the other page.

Structured data

Organization schema markup

schema.organization

Severity
high
Effort
S
Weight
1
Who can fix
developer

Organization or LocalBusiness JSON-LD tells AI systems who you are, so answers that mention your business can attribute it correctly.

How to fix: Add an Organization or LocalBusiness JSON-LD block to the homepage with name, url, and logo.

Valid structured data

schema.validity

Severity
medium
Effort
S
Weight
1
Who can fix
developer

JSON-LD that fails to parse or is missing required fields is ignored by AI systems, so the markup provides no benefit even if it is present.

How to fix: Fix malformed JSON-LD and add any missing required fields reported for each schema type.

Schema type matches page content

schema.page_types

Severity
medium
Effort
S
Weight
1
Who can fix
developer

Service, Product, and FAQPage markup help AI systems match the right content to the right type of question, improving citation accuracy.

How to fix: Add the schema type that matches the page's URL path or content (Service, Product, or FAQPage).

Schema matches on-page contact details

schema.consistency

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

When schema says one phone number/address and the page shows another, AI systems can't tell which one to trust.

How to fix: Update whichever source (schema or visible page text) is out of date so both match exactly.

Content

Content is structured for AI citation

content.citability

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

AI answer engines favor passages that open with a direct answer, include concrete numbers, and are organized under clear headings, so unstructured content is less likely to be quoted.

How to fix: Add clear headings, an FAQ section, and specific numbers, and rewrite weak passages to lead with a direct answer.

Service/product pages have enough content

content.thin_pages

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

Pages with very little text give AI systems little to work with, so they are less likely to be summarized or cited accurately.

How to fix: Expand thin service/product pages to at least a few descriptive paragraphs.

Heading structure is clean

content.headings

Severity
low
Effort
S
Weight
1
Who can fix
content editor

A missing, duplicated, or out-of-order heading structure makes it harder for AI systems to understand a page's outline and extract the right section.

How to fix: Use exactly one H1 per page and keep heading levels in order (H2 before H3).

About, Contact, and business details are present

content.trust_pages

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

About and Contact pages, plus visible phone/email/address details, help AI systems confirm a business is real and verify who they are citing.

How to fix: Link to an About page and a Contact page from the homepage, and publish a phone number, email, or address.

Passages open with a direct answer

content.answer_first

Severity
high
Effort
M
Weight
1
Who can fix
content editor

AI engines quote passages that answer the implied question in the first sentence — a filler opener gets skipped.

How to fix: Rewrite the first sentence of each flagged passage to directly answer its heading's question.

Target question is answered on the page

content.target_question

Severity
high
Effort
M
Weight
1
Who can fix
content editor

If no passage covers most of the target question's terms, AI engines have nothing to quote when a buyer asks it.

How to fix: Add or rewrite a passage that directly answers the target question using its own key terms.

Claims include concrete numbers

content.statistics

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

A vague claim ('fast', 'many customers') is less citable than a concrete number ('ships in 2 days', '4,000 customers').

How to fix: Add a specific number (price, count, percentage, or timeframe) to each flagged passage.

Numbers are backed by a source

content.sources

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

A number with no source is harder for an AI engine to trust and cite confidently.

How to fix: Name or link the source for each number that currently has none.

Passages are a citable length

content.passage_length

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

AI engines struggle to quote a passage under ~40 words (no context) or over ~300 words (too much to extract).

How to fix: Split long passages, or add context to very short ones, to land in the 40-300 word range.

Headings match how customers ask

content.question_headings

Severity
low
Effort
S
Weight
1
Who can fix
content editor

A heading phrased the way a buyer would ask it ('How much does X cost?') is far more likely to be matched to that question by an AI engine.

How to fix: Rewrite flagged headings as the question or topic a customer would actually type.

Comparisons use lists or tables

content.lists_tables

Severity
low
Effort
S
Weight
1
Who can fix
content editor

AI engines extract structured comparisons (lists, tables) far more reliably than the same facts buried in prose.

How to fix: Convert the flagged comparison passage into a list or table.

Brand/product named explicitly

content.entity_explicit

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

A passage quoted out of context needs the brand/product name in it — 'we' alone doesn't tell an AI answer who 'we' is.

How to fix: Replace a 'we/our' reference in each flagged passage with the actual brand or product name.

Content is readable

content.readability

Severity
low
Effort
S
Weight
1
Who can fix
content editor

Very dense, long-sentence writing is harder for both readers and AI engines to parse and summarize correctly.

How to fix: Shorten sentences and simplify wording until the Flesch score is at least 30.

No unexplained jargon

content.jargon

Severity
low
Effort
S
Weight
1
Who can fix
content editor

Internal jargon ('leverage synergies') adds no citable information and can make a passage sound vague rather than concrete.

How to fix: Replace or explain each flagged jargon term in plain language.

Content has a visible update date

content.freshness

Severity
low
Effort
S
Weight
1
Who can fix
content editor

AI engines favor content that looks current — a missing or stale update date makes a page look unmaintained.

How to fix: Add a dateModified (schema and/or visible 'Updated on' text) and keep it current.

Speed

Fast server response time

speed.ttfb

Severity
medium
Effort
M
Weight
1
Who can fix
developer

A slow time-to-first-byte reduces how much of a site AI crawlers can fetch within their time budget and can signal poor server health.

How to fix: Reduce homepage time-to-first-byte to 800 ms or less with caching and a CDN.

HTML response size is reasonable

speed.html_weight

Severity
low
Effort
S
Weight
1
Who can fix
developer

Very large or uncompressed HTML responses slow down crawling and increase the chance an AI crawler times out before reading the full page.

How to fix: Keep HTML responses under 1 MiB and enable gzip/br compression for responses over 50 KB.

Real-user Largest Contentful Paint is fast

speed.cwv_field

Severity
low
Effort
M
Weight
1
Who can fix
developer

Field data (real visitors, via Chrome UX Report) measures what people actually experience, unlike a single lab test.

How to fix: Improve LCP: optimize the largest above-the-fold image/text block, reduce render-blocking resources.

Prompt coverage

Priority buyer questions have an answering page

coverage.prompt_unanswered

Severity
high
Effort
M
Weight
1
Who can fix
content editor

These are the buyer questions closest to a purchase decision — if no crawled page or passage covers one, an AI engine has nothing of yours to cite when a buyer asks it.

How to fix: Add or expand a page that directly answers the flagged question, using its own key terms.

Every buyer stage has at least one answering page

coverage.stage_gap

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

Buyers ask AI different kinds of questions at each stage of a purchase — a stage with zero covered prompts means the site has nothing for AI to cite at that point in the journey.

How to fix: Add at least one page or section written for the missing buyer stage.

Pricing or quote information is on the site

coverage.pricing_info

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

Price is one of the most common buyer questions AI engines answer — a site that never mentions price or a quote process leaves AI engines to guess or stay silent.

How to fix: Add a pricing range, starting price, or a clear "how to get a quote" section.

Location-specific content matches the site's stated location

coverage.location

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

Buyers asking AI for a local or regional supplier expect location-specific proof (service area, shipping, local reviews) — without it, AI engines can't confirm the site serves that area.

How to fix: Add a page or section naming the service area, shipping destinations, or local presence.

The site has citable proof (case studies, certifications, reviews)

coverage.proof

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

AI engines favor answers backed by verifiable proof — a site with no case study, certification, or review content gives an AI engine nothing concrete to cite when a buyer asks "is this reliable".

How to fix: Add a case study, certification detail, or genuine review/testimonial section.

Early-stage buyer questions are answered somewhere on the site

coverage.faq

Severity
low
Effort
S
Weight
1
Who can fix
content editor

Problem/awareness-stage questions ('why', 'what is') are often the first thing a buyer asks AI — a site with nothing answering them misses an easy citation opportunity.

How to fix: Add an FAQ section or intro paragraph answering the flagged early-stage questions.

Fan-out coverage

Rule-based sub-queries are covered by the page

fanout.subquery_uncovered

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

These sub-queries are Leadee's simulation of what an engine might search while researching an answer to the prompt — gaps here are ideas for content to add, not proof of what an engine actually searched.

How to fix: Add a passage addressing each uncovered sub-query, in its own words.

Buyer attributes (price, lead time, certification, MOQ, warranty) are named

fanout.attribute_missing

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

Buyer attribute questions (price, lead time, certification, MOQ, warranty) are common sub-queries an engine's research might cover — a page silent on one gives an AI engine nothing to quote for it.

How to fix: Name the missing attribute explicitly on the page (even a range or "contact us" is better than silence).

The page compares itself to an alternative

fanout.comparison_missing

Severity
low
Effort
S
Weight
1
Who can fix
content editor

Comparison sub-queries ('X vs Y', 'alternatives to X') are common while an AI engine researches an answer — a page with no comparison content gives it nothing of yours to weigh against the alternative.

How to fix: Add a short, honest comparison section against a named alternative.

shop

Store platform detected

shop.platform

Severity
info
Effort
S
Weight
0
Who can fix
site admin

Recognising the store platform lets AI shopping agents use the right integration path; this check is informational and carries no score weight.

How to fix: No action required.

Product schema markup

shop.product_schema

Severity
high
Effort
M
Weight
1
Who can fix
developer

Without complete Product JSON-LD, AI shopping agents cannot reliably read price, availability, or shipping details, blocking agentic purchase flows.

How to fix: Add Product JSON-LD with name, image, description, SKU/GTIN, brand, price, currency, availability, shipping, and return policy.

Machine-readable catalog API

shop.catalog_api

Severity
high
Effort
M
Weight
1
Who can fix
developer

AI shopping agents browse product catalogs programmatically; an unreachable catalog endpoint blocks that path entirely.

How to fix: Enable the platform's public catalog endpoint and ensure it is reachable without authentication.

Product feed signals

shop.feed

Severity
low
Effort
M
Weight
1
Who can fix
site admin

Without a product feed, AI shopping assistants and comparison engines cannot list your products alongside competitors.

How to fix: Install a product feed plugin/app and submit it to Google Merchant Center.

Shipping/returns/terms pages linked

shop.policies

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

AI shopping agents need shipping and return policies visible to confirm purchase conditions before recommending a store.

How to fix: Create and link Shipping, Returns, and Terms pages from the site footer.

Agentic commerce protocol endpoints

shop.protocols

Severity
low
Effort
M
Weight
0.3
Who can fix
developer

Emerging AI buying agents are expected to use standardised endpoints (UCP/ACP/MCP); early adoption is a competitive advantage, not yet a ratified requirement.

How to fix: Monitor UCP/ACP/MCP specifications and add well-known endpoints as standards mature.

Guest checkout

shop.guest_checkout

Severity
info
Effort
S
Weight
0
Who can fix
site admin

Guest checkout availability affects AI agent purchase flows; not checked in this version of the engine.

How to fix: No action required in this version.

Online product designer

print.designer

Severity
high
Effort
M
Weight
1
Who can fix
site admin

Print shops without an online designer lose customers who expect to customise products (business cards, banners, etc.) before ordering.

How to fix: Integrate an online design tool so customers can personalise products before checkout.

Instant pricing/quote

print.instant_quote

Severity
medium
Effort
M
Weight
1
Who can fix
developer

Without instant pricing, customers and AI agents must contact the business manually to get a quote, slowing the sales cycle.

How to fix: Add a visible price calculator or quantity-tiered pricing table to every product page.

Artwork file upload

print.upload

Severity
medium
Effort
M
Weight
1
Who can fix
developer

Without a file upload option, customers must email artwork separately, slowing order fulfilment.

How to fix: Add a clearly labelled file upload field accepting common design formats.

Bulk/tiered pricing

print.bulk_pricing

Severity
low
Effort
S
Weight
1
Who can fix
developer

Missing quantity discounts make it harder to win bulk orders against competitors who show clear tiered pricing.

How to fix: Display a tiered price table and encode it in Product JSON-LD priceSpecification.

entity

Organization/LocalBusiness entity present

entity.org_block

Severity
high
Effort
S
Weight
1
Who can fix
developer

AI systems need exactly one clear Organization or LocalBusiness block to know who your business is — without it, answers can't attribute anything to your brand.

How to fix: Add one Organization or LocalBusiness JSON-LD block to the homepage.

Business name is consistent

entity.name_consistency

Severity
high
Effort
S
Weight
1
Who can fix
content editor

AI engines lose confidence in an entity when its name differs between <title>, og:site_name and schema markup — pick one name and use it everywhere.

How to fix: Use the exact same business name in schema, <title> and og:site_name.

Open Graph tags present

entity.og_tags

Severity
low
Effort
S
Weight
1
Who can fix
developer

og:title, og:image and og:type help AI systems and social previews describe your page correctly.

How to fix: Add og:title, og:image and og:type meta tags to the page head.

About page linked and descriptive

entity.about_linked

Severity
low
Effort
M
Weight
1
Who can fix
content editor

A linked About page with a real company description (80+ words) gives AI systems the context to describe who you are.

How to fix: Link an About page from the homepage and write at least 80 words describing the company.

sameAs profiles declared

entity.same_as_present

Severity
medium
Effort
S
Weight
1
Who can fix
content editor

sameAs links tell AI systems which social/business profiles belong to this entity, strengthening identity confidence.

How to fix: Add a sameAs array to the Organization schema with links to your official profiles.

sameAs profiles are alive

entity.same_as_live

Severity
high
Effort
S
Weight
1
Who can fix
content editor

A sameAs link that 404s or redirects to a platform's homepage signals a stale or fake profile to AI systems.

How to fix: Remove or fix any sameAs URL that is dead or redirects away from the actual profile.

sameAs profiles match the brand

entity.same_as_match

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

A profile page that doesn't mention your brand name in its title/heading makes AI systems less confident it's really yours.

How to fix: Confirm each sameAs profile's own page shows the brand name clearly.

Wikidata entry found

entity.wikidata

Severity
low
Effort
L
Weight
1
Who can fix
expert

A Wikidata entry with a matching official website (P856) is a strong, independent identity signal AI knowledge graphs use.

How to fix: If your business is notable enough per Wikidata's policy, submit an entry with the official website property set.

Contact details present in schema

entity.contact_point

Severity
medium
Effort
S
Weight
1
Who can fix
developer

Machine-readable contact details let AI systems answer 'how do I contact this business' directly from schema.

How to fix: Add contactPoint, email or telephone to the Organization schema.

Name/address/phone consistent (NAP)

entity.nap

Severity
medium
Effort
M
Weight
1
Who can fix
content editor

Inconsistent name, address or phone between schema and the visible page confuses AI systems and local search alike.

How to fix: Make sure schema NAP fields match exactly what's shown on the homepage, About and Contact pages.