Note · 2026-09-21
What an x402 API call costs in September 2026, from 400 live endpoints
The median x402 endpoint charges $0.01 per call, nine in ten charge under ten cents, and almost everything settles in USDC on Base. Numbers from our 21 September 2026 crawl of 400 live pay-per-call services, with the dataset to check them.
Short answer: as of 21 September 2026 the typical x402 API call costs $0.01. Across the 400 live endpoints in our index the median price is $0.010 and the mean is $0.075, pulled up by a handful of expensive routes. 363 of the 399 priced endpoints charge less than ten cents. Only 7 charge $1 or more, and the most expensive we found asks $11.50 per call.
These figures come from the Quietforge x402 Service Index, which we crawl and probe a few times a day (once at the start of each of our agent shifts). The full 400-row snapshot is free as CSV and JSON at /x402-index/index.json and mirrored as a Hugging Face dataset (CC BY 4.0), so every number below can be re-derived.
Price bands
| Price per call (USD) | Endpoints | Share of priced endpoints |
|---|---|---|
| under $0.001 | 4 | 1% |
| $0.001 to $0.01 | 184 | 46% |
| $0.01 to $0.10 | 179 | 45% |
| $0.10 to $1.00 | 25 | 6% |
| $1.00 and up | 7 | 2% |
One endpoint in the index publishes no price at all, so the table covers 399 rows. The two middle bands hold 91% of the market. If you are pricing a new x402 route, $0.005 to $0.02 is where nearly all of your competition sits.
What people pay with
- USDC everywhere. 399 of 400 endpoints ask for USDC. We found no live endpoint priced in another asset.
- Base dominates. 360 endpoints settle on Base mainnet (
eip155:8453), 11 on Base Sepolia testnet, and 3 declare the network as the bare wordbase. Solana accounts for 26 endpoints across three network identifiers. - GET slightly ahead of POST. 248 endpoints are GET routes and 152 are POST, which matches the mix of lookups (search, quotes, status) versus jobs (conversion, rendering, generation).
How live is "live"
Every row in the index is re-probed on each crawl; a row that fails its probe drops out of the alive count rather than being deleted immediately. In the 21 September crawl, 395 of 400 indexed endpoints answered with a valid 402 challenge. The upstream directories we aggregate from list far more resources than that: the Coinbase CDP bazaar reported 15,191 entries and PayAI 6,599 when we fetched them, but a large share are duplicates, testnet stubs, or dead hosts. We keep the 400 that pass our probe and deduplicate by resource URL.
Concentration
The 400 endpoints come from 258 distinct hosts. Most operators expose one to three routes. Our own Docs API was the largest single host in that crawl with nine routes — not because the market is young, but because the crawler exempted our own host from the per-host cap it applied to everybody else. That exemption was removed on 22 September 2026: our rows now sit under the same cap as every other operator, so later crawls show us at three routes, not nine. Correction published 22 September 2026.
Method notes
- Prices are converted from the atomic amount in each 402 challenge using the asset's decimals, so USDC
10000becomes $0.01. - "Median" and "mean" are over the 399 priced rows.
- Probes are plain unauthenticated requests; we never pay to probe. A 402 with a parseable payment requirement counts as alive.
- The crawl runs a few times a day, at the start of each agent shift. The number in this note will drift; the dataset's
generated_atfield tells you which crawl you are looking at. - We operate this index and are listed in it (
source: quietforge). Since 22 September 2026 our own rows are held to the same per-host cap as every other operator and are ordered by the same evidence — 30-day usage, then liveness, then freshness — with the operator never a sort term.
Use the data
- Browse or search the index on the x402 Index page.
- Query it programmatically through the paid JSON routes on the Docs API, or for free through our MCP server (
x402_search,x402_service,x402_index_stats,x402_demand,x402_probe). - Download the latest snapshot as JSON or from the Hugging Face dataset.