canaisee

Rubric v1.6

Every scan is scored against the published rubric below. Rubric changes require two approvals — EAC engineering (measurement correctness) and Evangent leadership (grading integrity) — and every change bumps the version string. Historical scans retain the rubric version that was active when they ran.

The two-tier composite

v1.3 introduced the two-tier Hygiene + Frontier composite, and v1.6 (September 2026) is the first release to re-cut what goes inside it. Hygiene measures whether agents can read and operate the site at all: a robots policy that lets in the crawlers that decide citations, an edge that lets an honest crawler through, content that survives a plain HTTP fetch, a page an agent can afford in tokens with nothing hidden from readers, semantic hooks and machine-readable dates, and controls a browser-driving agent can work. Frontier measures the agent-native surface, weighted differently for content, interactive, and commerce sites: Accept: text/markdown negotiation, an AI catalog at /.well-known/ai-catalog.json, a machine-readable usage policy, advertised markdown alternates, a valid llms.txt, WebMCP tool declarations, A2A agent cards, and for stores the UCP and ACP commerce protocols. Most well-built 2026 sites land in the B range on hygiene alone; Frontier is what lifts a site to A and A+.

What changed in v1.6

The evidence behind each change, with sources, is in docs/rubric-v1.6.md in the open-source repository.

Hidden text

v1.4 allowed an “AI-native content layer”: prose present in the DOM for agents but hidden from readers with a screen-reader-only class. v1.6 withdraws that allowance. Google’s spam policies on hidden text and cloaking now apply to AI Overviews and AI Mode, Bing discourages bot-only content, and hidden DOM text is the carrier of the prompt injection security researchers find in the wild. Prose hidden from readers earns no content credit; more than 150 words of it is flagged on the hidden-text-risk check; and instruction-like text hidden anywhere in the page (hidden elements, HTML comments, JSON-LD strings) scores zero, with the excerpt quoted so the finding can be verified. Ordinary accessibility work is unaffected: skip links, icon labels, and other short hidden text are ignored, and JSON-LD strings never count toward the word threshold, so FAQPage markup is fine. Agent-facing prose belongs in a visible section or a markdown alternate, which the Frontier tier rewards.

Composite formula

// Content site
composite = min(100, hygiene * 0.90 + frontier * 0.15)

// Interactive and commerce sites
composite = min(100, hygiene * 0.85 + frontier * 0.20)

The weights sum to more than one on purpose. Perfect hygiene alone reaches the top of B for every site type (a zero-frontier content site’s raw 90 is clamped to 85 by the ceiling below), and frontier work lifts a site into A and A+ instead of merely rescuing it from C. Interactive and commerce sites carry more frontier weight because the tool surface and the transaction surface are where agents get value from them.

Site-type classification

Sites are classified automatically as Content (blog, news, docs, nonprofit), Interactive (SaaS, booking, dashboards), or Commerce (stores), with commerce taking precedence over interactive and interactive over content. Commerce needs a decisive signal: Product structured data with offer details (availability, a SKU or GTIN) or several products, a checkout or cart form, a store platform fingerprint such as Shopify or WooCommerce assets, or a valid UCP or ACP discovery document; a bare Offer, a lone Product with only a price, or a products menu is only a hint. The classifier can be overridden from the scan form, and the scorecard records which type applied.

Hygiene checks

Hygiene is a weighted average of four sub-categories. The sub-category weights roll up into the Hygiene composite; within each sub-category the check weights sum to 100%.

Sub-categoryWeight in Hygiene
Crawler accessibility28%
Content readability32%
Semantic structure25%
Agent operability15%
CheckSub-categoryWithin-sub-category weight
robots.txt AI-agent policycrawler40%
JavaScript dependencycrawler35%
Edge reachabilitycrawler15%
Login / paywall wallcrawler10%
Content-to-chrome ratioreadability45%
Page cost in tokensreadability35%
Hidden text and hidden instructionsreadability20%
Heading hierarchysemantic25%
JSON-LD / schema.orgsemantic20%
sitemap.xmlsemantic20%
Machine-readable datessemantic15%
Language declarationsemantic10%
Open Graph & Twitter Cardssemantic10%
Accessible controls and landmarksoperability60%
First-load frictionoperability40%

Frontier checks

Frontier is weighted per site type and each column sums to 100%; a check with no weight for a site type (shown as a dash) is neither run nor counted for it. Content sites are scored on what answer engines and coding agents read, interactive sites on the tool surface, and commerce sites on the protocols shopping agents transact through. The top scores (95+) are reserved for sites that have genuinely built comprehensive agentic-web support.

CheckContentInteractiveCommerce
Accept: text/markdown negotiation25%20%3%
Documentation surface20%18%5%
Machine-readable AI usage policy12%10%5%
Rich structured data12%——
Markdown discoverability11%7%—
Agent capability manifest10%25%10%
llms.txt validity10%5%2%
WebMCP tool declarations—10%8%
A2A agent card—5%2%
UCP business profile——25%
ACP discovery document——15%
Product structured data——15%
Storefront MCP——10%

Letter grades

CompositeGradeMeaning
95–100A+Agentic-web leadership. Genuinely exceptional.
88–94AAhead of the curve on AI readability.
78–87BFundamentals solid; frontier features would push to A.
65–77CReadable, but real gaps. Clear next steps.
50–64DSerious issues; agents struggle here.
0–49FUnreadable to most agents.

Human-only ceiling

A site that scores below 15 on Frontier — meaning no deliberate agent-native step yet — has its composite capped at 85 (top of B) regardless of how strong its Hygiene score is. One step clears it: markdown negotiation, an agent catalog, a usage-policy line in robots.txt, or a valid llms.txt. Rich structured data alone does not, because a perfect score on it is worth 12 points of the content column, below the floor, and the 2026 evidence says structured data is not an agent-native surface. The cap is disclosed on every affected scorecard. It is aspirational, not punishing: B is a respectable grade that says “you’re doing the basics right”, and the cap preserves a meaningful difference between sites that have invested in the agentic web and sites that have only invested in the traditional web.

Where we're opinionated

The rubric tracks the surfaces agents actually use in 2026 and weights them by evidence, not by how often they are recommended. Cloudflare’s April 2026 scan of the top 200,000 domains found 78% with a robots.txt, 4% with a Content Signals line, 3.9% answering Accept: text/markdown, and MCP server cards or API catalogs on fewer than fifteen sites. That is why negotiation, policy, and discoverability carry the most Frontier weight for content sites, and why the agent catalog is weighted for interactive sites, where a tool surface matters. llms.txt stays a minor signal, scored on validity rather than presence: Ahrefs found that 97% of the files are never fetched and no answer engine reads them, but Chrome Lighthouse validates the format and coding agents follow the links. Where we measure the same things as Chrome’s Agentic Browsing category or Cloudflare’s Agent Readiness report we say so, so a site can compare graders. And we never impersonate another vendor’s crawler to see how an edge treats it: reachability is scored from CanAISeeBot’s own honestly identified fetch, and the evidence states that limitation.

Governance

Rubric changes are tracked in the lib/rubric/ directory of the open-source repo, one file per version. v1.2 through v1.5 stay in-tree alongside v1.6 so historical scans continue to read their own version's scoring logic, and docs/ carries the human-readable rationale for each version. The rubric is reviewed quarterly against the current agentic-web landscape; the next review re-checks Cloudflare’s 15 September crawler defaults, the outcome of the WebMCP origin trial, the IETF aipref and Web Bot Auth drafts, and the final server-card path.