{
  "name": "Agentic commerce benchmark across all stores v3.0.0",
  "category": "all",
  "version": "v3.0.0",
  "currentVersion": "v4.0.0",
  "issuedOn": "2026-10-22",
  "url": "https://ottom.io/benchmarks/all/v3.0.0",
  "summary": "An AI shopping agent reached the payment step on 80% of the 346 stores Ottom scanned in the 90 days to 22 October 2026, in every category and including stores whose category could not be determined, counting stores that blocked the agent or stopped it early as not reached. Of the 317 measured at every stage, 87% reached it, and the median agentic readiness score was 97 out of 100.",
  "caveat": "A store enters Ottom’s survey only if a catalogue of at least ten products can be read from it in one request, which in practice means Shopify and WooCommerce storefronts. These figures therefore describe the storefronts Ottom can read in bulk rather than online retail as a whole.",
  "window": {
    "start": "2026-07-24",
    "end": "2026-10-22",
    "days": 90
  },
  "storesMeasuredAtEveryStage": 317,
  "storesScanned": 346,
  "storesLeftOutForScoringVersion": 0,
  "agentVersion": "agent-v2",
  "agentVersions": {
    "hybrid-v2.0.1": 316,
    "hybrid-v2.6.0": 1
  },
  "storesLeftOutForAgentVersion": 0,
  "storesStoppedBeforeCheckout": 29,
  "methodologyVersion": "bench-v6",
  "methodology": "https://ottom.io/benchmarks/methodology",
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "attribution": "Ottom, Agentic commerce benchmark across all stores v3.0.0, 24 July 2026 to 22 October 2026, methodology bench-v6, agent-v2. https://ottom.io/benchmarks/all. Licensed CC BY 4.0.",
  "metrics": {
    "score": {
      "p25": 93,
      "median": 97,
      "p75": 97
    },
    "stages": [
      {
        "stage": "discover",
        "median": 100,
        "passRate": 84,
        "storeCount": 317
      },
      {
        "stage": "evaluate",
        "median": 88,
        "passRate": 87,
        "storeCount": 317
      },
      {
        "stage": "compare",
        "median": 100,
        "passRate": 90,
        "storeCount": 317
      },
      {
        "stage": "buy",
        "median": 100,
        "passRate": 87,
        "storeCount": 317
      }
    ],
    "checkout": {
      "completionRate": 87,
      "storeCount": 317
    },
    "stalls": [
      {
        "code": "missing_gtin",
        "title": "Products have no GTIN or MPN to match against",
        "stage": "evaluate",
        "storeShare": 64
      },
      {
        "code": "no_variant_data",
        "title": "Variants are not described in structured data",
        "stage": "evaluate",
        "storeShare": 12
      },
      {
        "code": "missing_schema_org",
        "title": "Product pages have no schema.org markup",
        "stage": "discover",
        "storeShare": 8
      },
      {
        "code": "no_sitemap",
        "title": "No sitemap for agents to crawl",
        "stage": "discover",
        "storeShare": 8
      },
      {
        "code": "missing_shipping_terms",
        "title": "Shipping cost cannot be determined before checkout",
        "stage": "compare",
        "storeShare": 8
      },
      {
        "code": "cart_requires_js",
        "title": "Add to cart needs JavaScript the agent cannot run",
        "stage": "buy",
        "storeShare": 7
      },
      {
        "code": "no_llms_txt",
        "title": "No llms.txt to orient agents",
        "stage": "discover",
        "storeShare": 4
      },
      {
        "code": "payment_step_unreachable",
        "title": "Agent could not reach the payment step",
        "stage": "buy",
        "storeShare": 2
      },
      {
        "code": "inconsistent_pricing",
        "title": "Feed price and storefront price disagree",
        "stage": "compare",
        "storeShare": 2
      },
      {
        "code": "product_pages_unreadable",
        "title": "Product pages did not answer when the agent asked for them",
        "stage": "discover",
        "storeShare": 2
      }
    ],
    "withheldStallCodes": 7,
    "observedStoreCount": 346,
    "otherScorerStoreCount": 0,
    "paymentReached": {
      "scannedRate": 80,
      "scannedStoreCount": 346
    },
    "storesLeftOutForAgentVersion": 0,
    "agentDrivers": {
      "hybrid-v2.0.1": 316,
      "hybrid-v2.6.0": 1
    }
  }
}