AI visibility audit
See your site the way machines do.
MachineRead probes the public signals that AI agents, retrieval systems, and search crawlers rely on: crawler policy, bot access, semantic HTML, structured data, text/Markdown access, freshness, and discovery hints. 13 check groups run on every scan; deeper checks are listed but never guessed at.
Standby
100-point readiness rubric
What gets scanned
What MachineRead measures
Three pillars of machine visibility
MachineRead audits a public website URL for AI visibility, agent accessibility, scrapability, and search discovery readiness. The audit organizes every signal into three pillars: off-site presence, AI access, and search discovery. Each pillar carries a fixed weight in the full rubric: off-site is capped at 30 points, AI access at 40, and search discovery at 30, for a 100-point total.
The Essentials audit runs 13 included check groups across those pillars. Each check group can contain multiple underlying signals. The current checked max is 56 points. Check groups cover social and entity metadata, Wikipedia and Wikidata entity lookup, robots.txt AI bot policy, bot fetch access, semantic HTML, JSON-LD structured data, LLM text and Markdown access, raw HTML readability, agent protocol discovery, crawl efficiency, canonical and HTTPS, indexing directives, and search discovery hints.
The audit also lists 9 advanced check rows that are locked at score zero until they are verified through paid or authenticated coverage. These rows cover earned mentions and backlinks, owned social presence, social traction and reviews, AI citation share, extraction fidelity, agent task simulation, multi-engine index coverage, Core Web Vitals field data, and keyword and competitor gap analysis.
Essentials does not claim to measure actual search ranking, traffic, backlinks, social traction, Core Web Vitals field data, model citation share, or conversion success. The audit reports what public HTTP, DNS, and page metadata expose to machines, not what private analytics dashboards report to site owners.
How the audit works
From URL entry to scored report
The audit follows four stages. First, the frontend collects a URL and optional audit scope toggles. FastAPI normalizes and validates the URL, and SSRF protection blocks unsafe targets and unsafe redirects before any fetch leaves the server.
Second, the backend builds an audit context by fetching the homepage, robots.txt, and sitemap.xml. These three documents anchor the crawler policy, bot access, and discovery signal checks. If a fetch fails, the audit isolates the failure into an actionable warning row so one broken endpoint does not collapse the full report.
Third, free checks run concurrently. Each check inspects a bounded slice of public HTTP, DNS, or page metadata. Individual check failures stay isolated. The backend also computes a strict agent readiness summary from explicit agent-native discovery and protocol signals. If that summary fails unexpectedly, the audit returns a degraded warning state rather than crashing the request.
Fourth, the backend assembles the result: locked advanced rows at score zero, scope metadata, pillar caps, and benchmark comparisons. The frontend renders the dashboard with scores, caveats, benchmarks, and action items. The whole flow runs on free, bounded public checks and one cached Wikimedia lookup. No logins, no paid APIs, no authenticated crawls.
What the scores mean
Three scoring concepts, not one
MachineRead reports three separate scores. They measure different things and should not be collapsed into a single number. A site can score high on Essentials evidence and low on agent readiness, or the reverse, depending on which public signals are present and which scope options are active.
The Full Rubric Score is a 100-point total across three pillars: off-site presence capped at 30, AI access capped at 40, and search discovery capped at 30. It includes locked advanced rows at score zero until those rows are verified through paid coverage. The API field is overall_score.
The Essentials Evidence Score is computed only from included, non-locked rows. The current checked max is 56 points. This score feeds the peer-relative benchmark comparison. The API field is benchmark.score.
The Strict Agent Readiness Score measures explicit agent-native discovery and protocol signals. The default scope checks 8 probes. The full scope, with all options enabled, checks 21 probes. This score is stricter than general crawlability or SEO. The API field is agent_readiness.score.
Score bands use the same labels across all three: Elite for 85 and above, Strong for 70 and above, Developing for 50 and above, and At risk for anything below 50. These bands are diagnostic labels, not performance grades. A Developing site is not failing; it has room to improve specific, named signals.
What MachineRead does not claim
The trust anchor
Essentials runs bounded public checks. It does not have access to private analytics, search engine internals, or model telemetry. The following claims are intentionally excluded from every report.
The audit does not claim to measure actual search ranking. Proxy checks like crawl access, indexing directives, and canonical tags do not prove where a page ranks in any search engine results page.
The audit does not claim to measure traffic, backlinks, or conversion success. It inspects public signals that crawlers and agents can read, not private funnel data that only the site owner sees.
The audit does not claim to measure social traction. A site that does not publish social links is not the same as a company with no social presence. The audit reports what the site exposes, not what the organization does off-site.
The audit does not claim to measure Core Web Vitals field data. Lab-derived page speed signals are bounded proxies, not field measurements from real user sessions.
The audit does not claim to measure model citation share. Agent protocol discovery signals show whether a site publishes machine-readable surfaces, not whether any specific model cites or routes to that site.
The audit does not penalize a site for failing a protocol that is out of scope for its business model. Scope toggles exist so a blog is not dinged for missing commerce checkout flows, and a corporate site is not dinged for missing account auth.
Benchmarks and peer context
Relative position, not absolute proof
Benchmark data is relative context, not exposure proof. MachineRead compares a site against peers under the same selected pre-scan option combination. Matching the denominator matters: a blog should not be compared against an ecommerce site with different check families and a different scoring max.
The Essentials evidence score feeds the main benchmark. This is the 56-point checked max computed from included, non-locked rows. The strict agent readiness score feeds the agent-native benchmark. This is the 8-probe or 21-probe score depending on selected scope.
The report shows a percentile rank, median benchmark score, and a list of nearest peers. Nearest peers are sites with the closest matching scope profile, not the closest matching domain or topic. If no exact benchmark profile exists for a given option combination, the report either hides the comparison or labels a nearest available proxy with a caveat.
The audit does not claim comparable traffic, ranking, conversion, or model citation share through benchmark context. A position above or below median means the public signals score higher or lower than peers under the same scope. It does not mean the site is more or less visible to real users.
Benchmark profiles are regenerated whenever check weights, checked max, pre-scan options, or applicability rules change. The snapshot date in each report tells you when the comparison set was last refreshed. Public fallback benchmarks use fictional profiles when no private profile exists.
Advanced coverage
Locked rows, scored at zero until verified
The Essentials audit lists 9 advanced check rows that are locked at score zero. These rows represent checks that require logins, paid APIs, authenticated crawls, or private data access. They are visible in the report so the user knows what is not being measured, not to imply it is being measured.
The Starter tier covers 6 of the 9 locked rows: earned mentions and backlinks, owned social presence, social traction and reviews, extraction fidelity, multi-engine index coverage, and Core Web Vitals field data.
The Pro tier covers 2 of the 9 locked rows: AI citation share and agent task simulation. Keyword and competitor gap analysis rounds out the list at the Starter tier.
Locked rows use the Advanced state label in the findings table. They carry a tier badge: Available with Starter or Available with Pro. The audit never guesses at these rows. It lists them so the report is honest about what it does not check, and so the user can see the upgrade path for each gap.
When Starter or Pro coverage is activated, the locked rows unlock and contribute to the full rubric score. The Essentials evidence score and its benchmark denominator stay unchanged so past reports remain comparable.
Roadmap
What is free, what is planned
MachineRead Essentials is free. It runs bounded public HTTP, DNS, and page checks, one cached Wikimedia lookup, and a templated scoring pass. No account, no payment, no API key required. The Essentials audit is the product surface available today.
Advanced coverage is listed but scored at zero until verified. The 9 locked rows represent the Starter and Pro tiers. Starter covers 6 rows: earned mentions and backlinks, owned social presence, social traction and reviews, extraction fidelity, multi-engine index coverage, and Core Web Vitals field data. Pro covers 2 rows: AI citation share and agent task simulation. Keyword and competitor gap analysis rounds out the Starter tier.
Planned but not active: Clerk auth, Supabase persistence, billing, paid crawlers, paid LLM and search integrations, and bring-your-own-provider access for customer-side model usage. Public agent-consumable surfaces including curated OpenAPI, machine-readable API docs, a product-level llms.txt, and an ARD catalog are sequenced for publication after the public website is stable.
The audit contract stays stable. New check rows are additive: they unlock from the locked state, contribute to the full rubric score, and never change the Essentials evidence denominator or benchmark profiles that past reports depend on.
Run an audit to see where your site stands today. The report will show what is checked, what is listed but locked, and what each score does and does not mean.
Run audit