{
 "report": "x402 Payability Report 12",
 "published": "2026-11-02",
 "scan_id": "scan-20261101T050901Z",
 "scan_time_utc": "2026-11-01T05:09Z",
 "scan_status_caveat": "scan-20261101T050901Z is complete; this snapshot covers 28144/28144 resources (100.0 percent).",
 "population": {
  "total": 28144,
  "hosts": 3118,
  "payable": 27231,
  "cannot_be_paid_either_verb": 804,
  "unreachable": 26,
  "malformed": 70,
  "not_payable": 5,
  "skipped": 8,
  "unknown": 0,
  "priced": 27231
 },
 "by_network": {
  "base": 27070,
  "solana": 10581,
  "polygon": 7205,
  "arbitrum": 5391
 },
 "by_network_note": "distinct PAYABLE resources per network from the completed 1 November full scan (see scan_status_caveat); canonical network id per network; a resource that accepts several networks is counted once on each",
 "host_concentration": {
  "top_host_nonpayable_count": 22,
  "top_host_verdicts": {
   "PAYABLE": 2,
   "CANNOT_PAY_EITHER_VERB": 22
  },
  "payable_pct_raw": 96.8,
  "payable_pct_excluding_top_host": 96.8,
  "resources_excl_top": 28120,
  "payable_excl_top": 27229
 },
 "turnover_vs_25oct": {
  "absent_vs_25oct": 26070,
  "new_vs_25oct": 4537,
  "changed_verdict_vs_25oct": 225
 },
 "pagination_total_catalog": {
  "this_week_01nov": 28144,
  "last_week_25oct": 49889,
  "two_weeks_ago_18oct": 46353
 },
 "catalogue": {
  "week_over_week": {
   "scan_25oct": 49677,
   "scan_01nov": 28144,
   "largest_host_25oct": 21149,
   "largest_host_01nov": 0,
   "excl_largest_25oct": 28528,
   "excl_largest_01nov": 28144,
   "change_excl_pct": -1.3
  }
 },
 "agent_demand": {
  "network": "base",
  "window_utc": "2026-10-25T05:09Z to 2026-11-01T05:09Z",
  "window_blocks": [
   53057797,
   53360197
  ],
  "method": "USDC Transfer events to the payTo addresses of PAYABLE catalogue resources, counted only under the strict rule below",
  "method_strict": "a Transfer to a catalogue payTo is kept only when the same transaction carries a USDC AuthorizationUsed event (EIP-3009) whose authorizer equals the Transfer sender, emitted at the log index immediately before the Transfer; payTo equal to the zero address or dEaD, and payTo with no positive catalogue price, are excluded",
  "usdc": 13043.14,
  "tx": 560359,
  "distinct_payers": 8363,
  "median_usdc": 0.02,
  "payto_with_payment": 1425,
  "payto_total": 1718,
  "top10_payto_share_of_value_pct": 81,
  "excluded": {
   "tx": 0,
   "usdc": 0.0
  },
  "rev_known_answer_check": {
   "strict_tx_to_REV": 12,
   "strict_usd_to_REV": 0.1
  },
  "loose_vs_strict": {
   "loose": {
    "tx": 560361,
    "usdc": 13043.16
   },
   "strict": {
    "tx": 560359,
    "usdc": 13043.14,
    "distinct_payers": 8363,
    "median_usdc": 0.02,
    "payto_with_payment": 1425,
    "payto_total": 1718,
    "top10_payto_share_pct": 81
   },
   "note": "loose keeps any Transfer whose tx has any AuthorizationUsed; strict applies the authorizer-equals-sender, adjacent-log-index rule"
  },
  "payer_classes": {
   "all": {
    "wallets": 8363,
    "tx": 560359,
    "usdc": 13043.14
   },
   "monitors": {
    "wallets": 39,
    "tx": 39928,
    "usdc": 331.41
   },
   "closed": {
    "wallets": 301,
    "tx": 37727,
    "usdc": 2206.7
   },
   "remaining": {
    "wallets": 8165,
    "tx": 482704,
    "usdc": 10505.03
   },
   "monitor_count": 39,
   "closed_payto_count": 15,
   "note": "additive split of the strict demand: monitors = wallets paying >20 distinct payTo or the known named monitors (Lumiere, Lumi Trades, KertivoCensus, Market402PaidProbe, AnnalistChecks, agents-trust, SettledScout, trilatic-probe); closed = non-monitor spend into closed-circuit payTo; remaining = neither a monitor nor a closed circuit; see single_funder_clusters",
   "single_funder_clusters": {
    "rule": "an address that was the first source of incoming USDC for 20 or more distinct payer wallets in the window",
    "funders": 21,
    "wallets": 5118,
    "usdc": 5165.98,
    "tx": 258105,
    "contracts_with_spread": 2,
    "unfunded_in_window_wallets": 2400,
    "report11": "not measured"
   }
  },
  "remaining_excluding_clusters": {
   "wallets": 3047,
   "usdc": 5339.05,
   "tx": 224599
  },
  "closed_circuits": {
   "candidates_ge300tx": 61,
   "closed_circuit_payto": 15,
   "closed_circuit_tx": 41416,
   "closed_circuit_usd": 2256.99,
   "note": "closed = 30 day outbound to top payer at least 80 percent of 7 day inbound from that payer; one known test harness payTo is excluded and not named"
  },
  "shared_payto_note": {
   "payto_on_multiple_hosts": 249,
   "usdc_on_those_payto": 8661.82,
   "tx_on_those_payto": 426833,
   "note": "figures are per payTo (wallet) and are not split across hosts or routes a payTo serves"
  },
  "top_by_distinct_payers": [
   {
    "clean_payers": 5746,
    "clean_tx": 339608,
    "clean_usdc": 6790.83
   },
   {
    "clean_payers": 589,
    "clean_tx": 4679,
    "clean_usdc": 38.31
   },
   {
    "clean_payers": 345,
    "clean_tx": 2214,
    "clean_usdc": 221.28
   },
   {
    "clean_payers": 133,
    "clean_tx": 31684,
    "clean_usdc": 297.34
   },
   {
    "clean_payers": 113,
    "clean_tx": 31338,
    "clean_usdc": 156.69
   },
   {
    "clean_payers": 111,
    "clean_tx": 19251,
    "clean_usdc": 270.88
   },
   {
    "clean_payers": 84,
    "clean_tx": 94,
    "clean_usdc": 0.49
   },
   {
    "clean_payers": 73,
    "clean_tx": 1581,
    "clean_usdc": 10.4
   },
   {
    "clean_payers": 62,
    "clean_tx": 1110,
    "clean_usdc": 27.58
   },
   {
    "clean_payers": 61,
    "clean_tx": 680,
    "clean_usdc": 5.78
   },
   {
    "clean_payers": 60,
    "clean_tx": 4787,
    "clean_usdc": 30.34
   },
   {
    "clean_payers": 53,
    "clean_tx": 107,
    "clean_usdc": 22.53
   }
  ],
  "note": "top by distinct payers uses the clean remaining demand only (monitors and closed-circuit spend removed); a distinct payer is a distinct paying wallet, not a distinct customer",
  "data_gap_caveat": "two issues were found and closed before this report was built: a small number of eth_getLogs batches failed after retries during collection, covering 2000 of the 302401 blocks in this window (about 0.66 percent), recovered with a smaller-chunk retry; and 163 payTo addresses only became PAYABLE once the 1 November catalogue scan finished, so their Transfer history was backfilled separately for the full window. The figures above already include both fixes, 0 blocks and 0 payTo missing.",
  "new_wallets_this_week": {
   "report11_payers": 3473,
   "report12_payers": 8363,
   "returning_payers": 1800,
   "dropped_payers_not_seen_this_week": 1673,
   "new_payers_this_week": 6563,
   "new_payers_usdc": 5199.11,
   "new_payers_tx": 175428,
   "distribution_by_distinct_payto_paid": {
    "paid_1_payto": 6369,
    "paid_2to5_payto": 161,
    "paid_gt5_payto": 33
   },
   "tx_per_new_wallet": {
    "median": 5,
    "p90": 11,
    "max": 8002
   },
   "top10_payto_by_new_payers": [
    {
     "new_payers": 5172,
     "tx": 129929,
     "usdc": 2597.58
    },
    {
     "new_payers": 574,
     "tx": 4685,
     "usdc": 38.3
    },
    {
     "new_payers": 82,
     "tx": 15068,
     "usdc": 1534.69
    },
    {
     "new_payers": 79,
     "tx": 88,
     "usdc": 0.46
    },
    {
     "new_payers": 53,
     "tx": 2153,
     "usdc": 39.81
    },
    {
     "new_payers": 50,
     "tx": 79,
     "usdc": 0.79
    },
    {
     "new_payers": 48,
     "tx": 908,
     "usdc": 28.8
    },
    {
     "new_payers": 41,
     "tx": 172,
     "usdc": 2.56
    },
    {
     "new_payers": 28,
     "tx": 3061,
     "usdc": 16.53
    },
    {
     "new_payers": 27,
     "tx": 86,
     "usdc": 0.55
    }
   ],
   "top3_payto_share_of_new_wallets_pct": 88.8
  },
  "solana": {
   "network": "solana",
   "usdc": 157.28,
   "tx": 6779,
   "distinct_payers": 162,
   "payto_with_payment": 116,
   "monitor_wallets": 4,
   "monitor_usdc": 11.35,
   "payer_classes": {
    "all": {
     "wallets": 162,
     "tx": 6779,
     "usdc": 157.28
    },
    "monitors": {
     "wallets": 4,
     "tx": 935,
     "usdc": 11.35
    },
    "remaining": {
     "wallets": 158,
     "tx": 5844,
     "usdc": 145.93
    },
    "monitor_count": 4,
    "note": "additive split of Solana demand: monitors = wallets paying into >20 distinct payTo owners, or the known named Solana monitor wallet; remaining = neither a monitor nor a closed circuit; see single_funder_clusters; no closed-circuit category exists yet on Solana (the P4 closed-circuit check has not been built for Solana)"
   },
   "known_answer_check": {
    "owner": "35tCuyL3E7M88jfhTeEaRxhrbuKFyQLWgxJQyf5QcLLe",
    "computed": {
     "count": 15,
     "usd": 0.085
    }
   },
   "concentration_caveat": {
    "tx_over_1000usd": 0,
    "usdc_over_1000usd": 0,
    "distinct_payto_over_1000usd": 0,
    "top_payers_over_1000usd": [],
    "note": "after the price match filter, 0 transfers over 1,000 USDC remain; the unfiltered figures are under solana.raw"
   },
   "note": "USDC transfers into the payTo ATAs of PAYABLE Solana catalogue resources, same window as the Base figures",
   "raw": {
    "network": "solana",
    "usdc": 490944.5,
    "tx": 10635,
    "distinct_payers": 1202,
    "payto_with_payment": 131,
    "monitor_wallets": 5,
    "monitor_usdc": 11.51,
    "payer_classes": {
     "all": {
      "wallets": 1202,
      "tx": 10635,
      "usdc": 490944.5
     },
     "monitors": {
      "wallets": 5,
      "tx": 987,
      "usdc": 11.51
     },
     "remaining": {
      "wallets": 1197,
      "tx": 9648,
      "usdc": 490932.98
     },
     "monitor_count": 5,
     "note": "additive split of Solana demand: monitors = wallets paying into >20 distinct payTo owners, or the known named Solana monitor wallet; remaining = neither a monitor nor a closed circuit; see single_funder_clusters; no closed-circuit category exists yet on Solana (the P4 closed-circuit check has not been built for Solana)"
    },
    "known_answer_check": {
     "owner": "35tCuyL3E7M88jfhTeEaRxhrbuKFyQLWgxJQyf5QcLLe",
     "computed": {
      "count": 15,
      "usd": 0.085
     }
    },
    "concentration_caveat": {
     "tx_over_1000usd": 84,
     "usdc_over_1000usd": 295416.17,
     "distinct_payto_over_1000usd": 3,
     "note": "a small number of large single transfers to a handful of payTo owners account for most of the Solana total; no closed-circuit check (like P4 on Base) exists yet for Solana, so this concentration is not filtered out and the Solana total is not directly comparable to the Base strict figure"
    },
    "note": "USDC transfers into the payTo ATAs of PAYABLE Solana catalogue resources, same window as the Base figures"
   },
   "method": "kept only transfers whose amount, converted back to atomic units, exactly equals one of the prices the payee's own PAYABLE 402 options declared in the 1 November scan",
   "tx_over_1000usd_raw": 84,
   "tx_over_1000usd_price_matched": 0,
   "unmatched_no_price_data": {
    "distinct_payto": 0,
    "tx": 0,
    "usdc": 0
   },
   "unmatched_wrong_amount": {
    "tx": 3856,
    "usdc": 490787.22
   }
  }
 },
 "report11_comparison": {
  "gross_usdc": 12120.66,
  "remaining_usdc": 7898.9,
  "remaining_wallets": 3250,
  "closed_circuit_payto": 15,
  "closed_circuit_usd": 3875.64,
  "note": "figures from the published Report 11 (scan-20261025T051127Z), for side by side comparison only"
 },
 "published_at": "2026-11-02T10:29:02Z"
}