x402 upto: usage-based pricing for paid APIs

Some API calls cost more or less depending on what they do: tokens generated, bytes moved, compute time. A fixed price does not fit those. The x402 upto scheme is built for them. This guide summarizes the x402 docs on upto and the scheme overview, plus Polygon's per-inference billing page, and says where they are silent.

What upto is

The seller advertises a maximum price for one request, and the buyer signs once for that maximum. After doing the work, the seller settles for the actual usage. The x402 docs require the final amount to be less than or equal to the maximum. Setting the settled amount to "0" means no charge for that request. The seller can express the amount as raw atomic units ("50000"), a percentage of the route maximum ("50%") or a dollar price ("$0.05").

What happens when the seller gives no amount: the scheme page does not say. The behavior commonly described, that the maximum is settled, is not stated there, so confirm it with your SDK and facilitator before relying on it.

upto supports only the authorization flow, according to the scheme overview.

Permit2 and the approval step

On EVM, upto uses Permit2, because the settled amount is not known when the buyer signs. The facilitator advertises a facilitatorAddress in the payment requirements, and the client binds the authorization to that facilitator. Polygon's page adds that replay protection relies on Permit2 nonces and that authorizations carry validAfter and deadline bounds, so an unsettled authorization expires.

The scheme page does not describe the token approval Permit2 needs. The facilitator /supported endpoints do list two extensions, eip2612GasSponsoring and erc20ApprovalGasSponsoring, which our facilitator support page reads as covering that approval, so the buyer does not pay gas for it. The upto docs themselves do not mention these extensions, so treat that reading as unconfirmed by the scheme docs. On Solana, the docs describe a different mechanism: the client escrows the ceiling in an onchain channel, and the facilitator sponsors transaction fees and channel rent.

upto, exact or batch-settlement

The overview describes each scheme but gives no explicit decision rules, so the guidance above is our reading of those descriptions.

Illustrative 402 entry

Illustrative only, built from field names in the docs. Field names differ between the scheme page (price) and Polygon's page (maxAmountRequired), and the docs do not give a full example payload. Check your SDK's actual output.

{
  "accepts": [{
    "scheme": "upto",
    "network": "eip155:137",
    "maxAmountRequired": "50000",
    "payTo": "0xSELLER_ADDRESS",
    "extra": { "facilitatorAddress": "0xFACILITATOR_ADDRESS" }
  }]
}

With USDC's six decimals, 50000 is $0.05, per Polygon's example. Where facilitatorAddress sits in the payload is not specified in the docs we read, so its placement under extra here is a guess.

Seller checklist

Buyer checklist

Which facilitators list upto

From our facilitator support table (mainnets, fetched 2026-10-10): Coinbase CDP lists upto on Base, Polygon, Arbitrum, World Chain and Solana. Dexter lists it on Base, Polygon, Arbitrum, World Chain and Monad. Daydreams lists it on Base and Ethereum. PayAI, x402.rs and the x402.org reference facilitator list no upto on those mainnets. Facilitators change without notice, so check /supported yourself.

Adoption

In a snapshot from 2026-10-09, 710 Bazaar listings offer upto on 32 hosts, and one host holds 80% of them. See State of the x402 Bazaar for the counts.

Tanod charges exact today and is evaluating upto for OCR and transcription.

Sources: docs.x402.org scheme pages and Polygon's per-inference billing page, read 2026-10-10. Corrections: [email protected].