Agent Readiness Grade

One grade, A to F, for whether an AI agent can get from a store's products to a checkout link. Method v1. In the 6 Nov 2026 snapshot, 10,698 of 10,750 stores have a grade.

How ARC turns what it already measured at a store into one grade, A to F: the rules, the audits behind each grade, what is measured and what is not, and how to dispute or re-check a grade.

No payment ever affects a grade.ARC is a free, open research project. A grade is worked out by a published function from ARC's saved checks, and nothing else goes in.

The rules

Each audit is passed, failed or not measured. A failed audit caps the grade at its level, and the grade is the lowest cap. With no failed audit the grade is A. Passing or unmeasured audits never lower a grade, and fixing a failed audit can only raise it. A store is graded only when ARC measured its checkout outcome or its check was turned away.

GradeMeansRuleStores (6 Nov 2026)
AReadyAn agent got a checkout link through a protocol route (a UCP or MCP agent catalog), and no measured audit failed.5,745
BReaches checkout, with gapsAn agent got a checkout link, and at least one of these failed: price and stock readable, a valid UCP profile, robots.txt lets AI agents and crawlers in, a protocol route (not only a cart link), ARC's browser shoppers add to cart, guest checkout.1,475
CFound, no checkoutAn agent found a product (in the catalog or through ARC's browser shoppers), but no checkout link came back.426
DNot foundNo agent found a product: the catalog search and any browser shoppers came back empty.2,533
FTurned awayThe store turned away ARC's automated check, so an agent could not get in to look.519

52 stores in the snapshot have no grade because their check did not finish. Opted-out stores are never graded.

The audits

AuditPasses whenFails whenA fail caps atReads
Lets ARC's automated check inARC's check got a page backThe check was turned away (HTTP check or browser cart test at the door)Fcan_agents_find_products, verdict
An agent finds a productThe catalog search found the product, or a browser shopper added it to the cartNeither found a productDcan_agents_find_products, browser_cart_test
An agent gets a checkout linkA checkout link came backNo checkout link came backCcan_agents_get_checkout_link
Checkout through a protocol route (UCP or MCP)The link came back through a UCP or MCP agent catalogOnly a plain cart link came backBagent_catalog_type
Agents can read price and stockPrice and stock readNot readBcan_agents_read_price_and_stock
UCP profile passes validationValid profileMissing at the host, or did not validateBucp_profile_valid
robots.txt lets AI answer agents inNo blockrobots.txt blocks an AI answer agentBblocks_ai_answer_agents
robots.txt lets AI crawlers inNo blockrobots.txt blocks an AI crawlerBblocks_ai_crawlers
ARC's browser shoppers add to cartAt least one ARC browser shopper added to cart0 of 5 added to cartBbrowser_cart_test
Guest checkout, no account requiredGuest checkout offeredAn account is requiredBguest_checkout_offered, account_creation_required

Every failed audit on a store page comes with a one-line fix and, where ARC has one, a link to the ready-to-paste fix pack on that page. A turned-away check measures nothing behind the door, so every other audit on a turned-away store is not measured. A turned-away check is a response to ARC's automated checker, not a finding against the store.

Not measured is never a fail

A blank, unknown or not-tested value is shown as not measured. It does not count against the store and does not lower the grade. Most stores have no browser cart test and no guest-checkout reading yet, so those audits are usually not measured.

Freshness

A grade is dated by the check behind it. After 30 days it shows as expired: re-check, never as current, on the store page, on the badge and in agent answers (expired: true).

What is measured, and what is not

Measured, from ARC's saved automated HTTP check and, where present, the browser cart test:

  • whether an agent finds a product, reads its price and stock, and gets a checkout link back, and through which route;
  • whether the store turned ARC's check away;
  • robots.txt rules for AI crawlers and AI answer agents;
  • whether the UCP profile at /.well-known/ucp passes validation;
  • guest checkout or a required account, where ARC confirmed it;
  • ARC's browser cart test, where one was run.

Not measured: payment or a completed order (ARC stops before payment), live sessions of any consumer AI agent, blocks applied by a platform, marketplace or network in front of the store, and anything ARC has not published for the store.

Where the grade appears

  • Every store page, near the top, with the audits and the fixes.
  • The live badge at /badge/{host}.svg, with an embed snippet on the store page. Opted-out and unpublished hosts get a 404.
  • Agent answers: GET /api/precheck and before_checkout carry grade: {grade, version, checked_at, expired, audits_failed}. The same block is on every row of find_stores, find_agent_ready_stores and compare.

How grades are used

The grade has consequences, on the Core Web Vitals model: agents are sent to better-graded stores first. Results are ordered only by published grade and freshness, never by anything else.

  • find_stores (on /api/ask and /api/mcp), find_agent_ready_stores and GET /api/agent-checkout/stores list the best current grade first (A, then B, and so on). An expired grade ranks after current grades of the same letter. Within a grade, the newest check comes first. Each store carries its grade; a store that is not graded is listed after graded ones with grade: null, which is not a mark against it.
  • An optional min_grade (default none) keeps only stores whose current grade is that letter or better.
  • compare picks the best current grade among the stores whose saved check reached checkout on a fresh check. Without fresh evidence there is no pick, whatever the grade.
  • before_checkout adds a one-line alternatives_hint when the store's grade is D or F, or expired: a find_stores call in the same category with min_grade: "B". It never steers away from a store that is not graded. Advisory only: no agent should refuse a store solely because of ARC's data.

Dispute or re-check a grade

To get a fresh grade, re-check the store from its store page (or check any store). If you think a saved check is wrong, use the corrections flow: ARC re-checks the store when that helps and logs fixes to published numbers in the method changelog.

Changelog

VersionDateChange
v16 Nov 2026First version. Five grades, ten audits, a 30-day expiry. Built only from data ARC already published; no new checks.

Grades are versioned. A change to the rules gets a new version here, so a method change is never read as a store getting better or worse.

Store counts are from ARC's published 6 Nov 2026 snapshot, read as of that day.