Skip to main content

It loads perfectly for humans. That's the problem.

Blocked, empty, or unintelligible — you don't know which. We show you, request by request.

Your site didn't fail the AI test. It never got to take it.

Trackers tell you whether AI mentions you. We audit what each documented AI actor actually gets from your pages — the robots policy, the extractable content, the rendered result — recorded in a sealed evidence bundle anyone can re-verify, with a rescan that reports each fix as VERIFIED, NOT VERIFIED, or INDETERMINATE.

For AI-visibility, SEO, and content teams — and the agencies who run their sites — who need the technical why behind the citation question. We audit the ingestibility layer; we do not sell rankings, citations, or a score.

Free quick check, no account needed. We record only what the server returns.

Free account, no card. First audit: usually under two minutes. If an audit fails to complete, it consumes no allowance. You only ever pay for audits that produce a result. No universal score. No indexing, ranking, citation, or model-behavior guarantee.

Result contract

PASS

All required protocols completed; no production blocker is open.

FAIL

At least one evidence-linked production blocker is open.

AI Access Blocked

The site refused at least one required AI system in a scan window where it served the page to a reference request.

INCOMPLETE

Required evidence was not obtained; compatibility is not established.

Every result names its audit profile, actor, protocol version, execution state, limitations, artifact references, and integrity hash.

The fix-verified arc

A real defect on our own site, the fix, and a rescan that verifies it landed.

Operator self-audit — run by Generative Metrics on its own property, quota-exempt, protocol set 2.2.0. No customer story is claimed — the pilot cohort's documented arc begins at intake. Both sealed bundles are published and re-verifiable by anyone.

Before — WARNING recorded

Records OPT_OUT_TDM_REP_INVALID (WARNING) — our own tdmrep.json, invalid under our own validator.

Sealed 2026-10-06T07:30:54 · 8f46c773ed87… — re-verifiable at /verify

The fix

Our /.well-known/tdmrep.json carried the bare-object TDM-Rep form, which our own 2.2.0 validator records as invalid. We moved it to the conforming per-location array form ([{"location":"/","tdm-reservation":1}]) and gave /ai.txt the section blocks the validator requires (directives unchanged). Deployed as commit 1352b98; the BEFORE bundle was sealed after the 2.2.0 deploy and before this fix, so both sides ran under one protocol set.

Fix commit 1352b98

After — VERIFIED

The invalid-document finding is gone (the signal now records as OPT_OUT_POLICY_SIGNALS_OBSERVED, INFO).

VERIFIED · REPAIR_TDM_REP_DOCUMENT · 2026-10-06T07:43:47 · 29a494bd7476… — re-verifiable at /verify

What VERIFIED means: the rescan ran under the same protocol set and satisfied the registered criterion for this remediation — the fix is proven on the sealed record. What it never says: anything about citations or what AI systems do next — and when a rescan cannot be compared (different protocol set), the stamp reads INDETERMINATE, never a guess.

The full record, including the verification receipt: the public docket.

What the AI reads · sealed sample: www.usa.gov

A no-JavaScript capture of www.usa.gov measured 443 of the 443 words a browser renders.

This is the PASS case: a healthy page, nothing to fix. The same measurement is what catches the opposite case — when a page's main content exists only after JavaScript, the deficit is recorded as a blocker with the counts sealed.

What the audit measures:

Machine-extracted words (no JavaScript)

443words

Human-visible words (browser render)

443words

Recorded ratio

100%

machine words ÷ browser words, as recorded. Not a score.

No logo wall — we have no customer logos to show you yet, so we publish artifacts instead: inspect a real audit and the sealed digest it came from. The full bundle, not just the badge, ships with your own scan.

Demo figures rendered from the published sealed sample bundle (45397e9790fd90b2…, re-verifiable at /verify) — www.usa.gov, protocol set gm-ai-consumer-compat/4.0.0.

Run a live auditFree account, no card — the first audit is usually under two minutes.

For agencies

You run an agency. Every client asks the same question: “Why aren't we in AI answers?”

Trackers watch the scoreboard. You fix the site. Generative Metrics audits each client site for what blocks AI systems from reading it — and gives you sealed evidence your clients can verify themselves.

The math at full utilization.

25 client sites on Firm ($500 per month), each reported in the Monday roster letter. That's $20 per client per month. What you charge your clients is a price you set.

See what a month with us looks like →
“It uses a ‘query fan-out’ technique, issuing multiple related searches concurrently across subtopics and multiple data sources and then brings those results together to provide an easy-to-understand response.”
Google, “Expanding AI Overviews and introducing AI Mode” (March 5, 2025). Google's documented AI Mode behavior — we don't speak for Google; we audit against what it documents.

How it works

01

Audit

Run the versioned protocol set against one URL and one explicit consumer profile.

02

Diagnose

Review evidence-linked blockers, warnings, limitations, and concrete remediation steps.

03

Verify

Rescan after a fix. Each remediation is checked against its named protocol outcome: VERIFIED, NOT VERIFIED, or INDETERMINATE.

The 25 protocols in the production set — behind this link

The protocol set deliberately starts with signals that can be recorded, repeated, and challenged. Experimental detectors remain separate and cannot create a production blocker.

01

Direct HTTP acquisition

Records the public HTTP outcome, final URL, redirect chain, content type, bounded byte count, and cryptographic artifact hash.

02

Robots.txt acquisition

Acquires /robots.txt as a separate hashed artifact and records the public policy document exactly as served.

03

Raw and rendered representation

Keeps the initial response, browser-rendered DOM, and no-JavaScript representation distinct instead of pretending one view represents every consumer.

04

Main-content extraction

Runs a deterministic extraction protocol. A material deficit blocker is recorded when the raw and no-JavaScript extractions each carry under half the rendered main-content words (rendered ≥ 100 words), suppressed only when computed containment (≥ 90% of the no-JavaScript capture’s distinct words present in the rendered extraction, same semantic main-content scope) shows the rendered growth is additive; where containment is not computed the deficit stands and the record states why. Script-injected additive material (for example translations) can still produce a deficit under this convention. Under protocol set 2.4.0 the protocol also records a block census over the sealed no-JavaScript and rendered captures — how many text blocks were preserved, added, removed, or rewritten, with their word counts — and where the added words sit relative to the page’s main-content region; when a comparison cannot be computed the record states why instead of a count.

05

Structured-data consistency

Checks JSON-LD parsing, raw availability, bounded visible-text consistency for material properties, and whether markup appears only after client-side rendering.

06

Machine-readable dates

Reports strict machine-readable publication, modification, and HTTP date signals. Missing dates and contradictory dates remain different facts.

07

llms.txt acquisition

Acquires /llms.txt as a separate hashed artifact and records presence, bounded byte count, media type, and whether the required title heading is present.

08

Sitemap acquisition

Acquires /sitemap.xml as a separate hashed artifact and records presence, bounded validity, listed URL count, newest lastmod, and whether the audited URL path was listed.

09

Structured-data completeness

Compares raw versus rendered schema type presence and records bounded Organization identity fields as booleans, without storing property values.

10

Content negotiation

Records what a markdown-representation request returned, without inferring how any provider consumes content.

11

Per-actor content extraction

Extracts content once per crawler token on the rendered page and attests the results with per-view hashes and word counts.

12

Crawler identity verification

States exactly what a synthetic probe can and cannot verify about crawler identity — and claims neither direction.

13

Content structure facts

Seals heading, list, and table tag counts plus fingerprint facts from the rendered document. Counts only — never page text, never a verdict input.

14

Metadata signals

Seals canonical presence and self-consistency plus same-hostname link counts from the rendered document.

15

Opt-out semantics (meta robots, X-Robots-Tag, TDM-Rep)

Records the site-declared opt-out signals for automated consumers — meta robots directives, X-Robots-Tag tokens, and the TDM-Rep reservation — exactly as declared.

16

ai.txt policy file

Records the state of the /ai.txt policy file: presence, bounded byte count, media type, and whether it satisfies the declared shape.

17

Structured-data property depth

Records which convention properties the page’s supported structured-data types carry, as counts only — never property values.

18

PDF text layer

Records whether an acquired PDF carries a machine-readable text layer and how much of it the bounded extractor reaches.

19

Site robots coverage

Evaluates the site's robots policy against the sitemap's page inventory and records, per AI crawler, how many pages are disallowed — counts and example URLs only.

20

Web Bot Auth key directory

Records whether a vendor operator publishes a reachable Web Bot Auth key-directory endpoint — status, shape and counts only.

21

AIPREF signals

Records the site-declared AIPREF preferences under the pinned draft vocabulary, as declared.

22

CDN default-block observation

Observes when a scan denial matches a CDN vendor-documented default-block class, citing the dated vendor documentation.

23

AI-usage header policy

Reads site-declared AI usage signals from the captured raw response, including x-robots-tag tokens and TDM reservation headers, for each audited actor as an observation-only policy layer.

24

Actor robots policy

Evaluates robots.txt separately for documented discovery, training, grounding, and user-action actors. Training controls are not mislabeled as discovery failures.

25

Actor access probes

Sends one probe per documented AI actor carrying its vendor-published user agent, and records status, byte counts, and the measurement vantage on every record.

Proof · corrected 2026-09-29

A correction we made in public — and the artifact that closed it

On 2026-09-19 we published an audit example claiming a U.S. federal government site (www.usa.gov) served almost no main-content text to a raw crawler. The defect was ours, not the site's. We retracted the figures publicly on 2026-09-29 and re-audited the page under protocol set gm-ai-consumer-compat/4.0.0: verdict PASS, raw 443 = rendered 443 = no-JavaScript 443 words, bundle digest 45397e9790fd90b2…. Corrected numbers were published on the sample-report page, and the wrong scan is recorded in the public errata register.

The external-testing round that followed has its own public record — confirmed findings, fixing releases, sealed before/after digests, and rejected claims with reasons: the external-testing docket →

Independent external evaluation · October 17–18, 2026

Independent replication & integrity

"The product is honest, deterministic and unusually well documented. Where we could check it independently, it was right. It is deterministic and reproducible. Our scan of usa.gov reproduced the vendor's published sample exactly (443 = 443 = 443 words, PASS, same findings)."

Commercial & stage assessment

"[...] Today it is a narrow, early-stage plumbing audit... with a headline feature (fix verification) that is fragile because the methodology changes every ~3 days."

How we address this: every methodology change is declared with its sealed movement in the changelog — see /changelog. Cross-version rescans resolve to INDETERMINATE with the exact version diff.

external evaluation, October 2026 — see /docket

No logo wall. Open artifacts.

Verify this product the way it verifies a page

Every claim below is a link you can inspect right now.

Each audit ships a sealed evidence bundle, content-addressed with SHA-256 hashes, so its recorded facts are independently re-computable from the bundle itself: altering a bundle breaks its digest, and the public /verify checker flags that; a re-sealed forgery — altered content with a recomputed digest — does not match the copy in our sealed store, and the stored-copy check reports it; and the seal never proves who produced a file, because a matching digest shows the copy is intact, not who made it.

The visibility panel

The audit answers why AI systems can't read your site. The visibility panel shows whether your brand appears in AI answers while you fix it.

Weekly per-engine checks across OpenAI (ChatGPT), Perplexity, and Gemini for brand mentions, with full request and response receipts attached and retained for 30 days. Attributed instrument logs — a different evidence class from sealed audit evidence.

Whether, or why

Citation trackers answer whether a brand is cited. We answer why a site can be hard for AI systems to read.

Trackers like Otterly, Profound, and Semrush are scoreboards: they tell you whether a brand shows up in AI answers. Generative Metrics works upstream of that question — the audit records what each documented crawler's policy allows and what a non-JavaScript fetch receives versus what a browser renders, seals every observation into a bundle you can verify, and verifies your fixes on rescan. We do not promise citations; the citation question is yours to answer with the evidence.

Generative Metrics is an AI access assurance service. The AI Access Audit records the robots and AI-usage-header policy that applies to each documented AI actor — GPTBot, ClaudeBot, PerplexityBot, and others — plus one request carrying each actor's own token, and what a non-JavaScript fetch receives versus what a browser renders. Results are PASS, FAIL, INCOMPLETE, or AI Access Blocked with a sealed evidence bundle and evidence-linked remediations; a rescan reports each fix as VERIFIED, NOT VERIFIED, or INDETERMINATE. No universal score. No promises about AI behavior.

Scope verified on 2026-11-05 · protocol gm-ai-consumer-compat/4.0.0.

What the audit can establish

  • What the direct public HTTP protocol received.
  • Which named robots policy group and rule applied to the audited path.
  • Whether meaningful content or supported structured data appeared only after rendering.
  • Whether strict machine-readable date signals were observed or contradicted.
  • Whether a specific remediation satisfied its expected protocol outcome on a later scan.

What it cannot establish

  • That any provider will crawl, index, train on, rank, cite, or recommend the page.
  • That one browser representation is identical to every provider's acquisition path.
  • That detected text is true, trustworthy, useful, or semantically understood.
  • That absence under a bounded protocol proves universal absence.
  • That an experimental detector is production truth.

Questions before you rely on it

Is this another AI visibility score?

No score. The core product audits access and extraction with sealed evidence; a separate experimental visibility panel observes what three AI arms surface about a brand — different instrument, different evidence bar, never a score. The evidence-first result does not calculate a universal readiness score.

Does PASS mean an AI provider will index, rank, cite, train on, or understand my page?

No. PASS means the required protocols in the named audit profile completed without an open production blocker. Provider selection and downstream model behavior are outside that verdict.

What happens when the scanner cannot obtain reliable evidence?

The result is INCOMPLETE, or a remediation verification is INDETERMINATE. The product does not convert missing evidence into a pass, failure, or improvement claim.

Why not ask a general-purpose chatbot to review the page?

A chatbot can offer useful editorial advice, but it is not a substitute for recorded HTTP artifacts, actor-specific policy decisions, deterministic protocol execution, immutable evidence, and finding-specific rescans.

Which AI crawlers does it check?

The audit checks documented AI actors such as GPTBot, ClaudeBot, and PerplexityBot, plus the other documented AI actors the public-ai-discovery profile marks as required or informational. Each actor is audited separately, with its own robots-policy reading, so a policy decision that treats one actor differently does not get collapsed into another.

Is Generative Metrics free?

The free tier is 5 single-page audits per month plus one full site audit (up to 25 URLs) per account — the site audit is once per account, while the single-page allowance renews every month; no credit card required. PDF reports and the sealed evidence bundle are downloadable on every tier, including free. Agency ($300/mo, 5 site audits monthly, weekly monitoring for 10 sites, white-label PDF audit reports) and Firm ($500/mo, 25 site audits monthly, 25 monitored sites) cover recurring and agency-scale auditing. 1 site audit = up to 25 URL audits; single-page audits draw from the same URL-audit pool.

Start with one important URL

Run one audit, fix one production blocker, and turn the verification rescan into client-ready proof.