81trust / 100

Settlement Costs

by 402rates.com in Onchain & crypto

x402 APIPassing, checked 3 h ago

Measured USDC transfer costs on Base, Polygon, Arbitrum, Ethereum and XDC: simulated gas, current token prices, fresh chain heads and applicable rollup L1 fees. Inputs and block references accompany each figure. Cheapest first; unmeasurable chains are excluded, not estimated. Business/professional use only. Terms: https://402rates.com/data-terms/

GET https://api.402rates.com/v1/settlement/costs

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
221 ms typical, 221 ms slowest 5%
Last check
3 h ago
Next check
any minute now

How to call it

# See the payment challenge (nothing is charged)
curl -i -X GET "https://api.402rates.com/v1/settlement/costs?chains=base%2Cpolygon%2Carbitrum%2Cethereum%2Cxdc"
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fapi.402rates.com%2Fv1%2Fsettlement%2Fcosts
const res = await pay("https://api.402rates.com/v1/settlement/costs?chains=base%2Cpolygon%2Carbitrum%2Cethereum%2Cxdc");
console.log(await res.json());

Example input

{
  "chains": "base,polygon,arbitrum,ethereum,xdc"
}

Example output

{
  "cheapest": {
    "caveats": [],
    "chain": "xdc",
    "compared_chains": [
      "xdc"
    ],
    "est_cost_usd": 0.0000188,
    "excluded_chains": [],
    "runner_up": null,
    "scope": "transaction_fee_total",
    "stability": {
      "historical_claim": false,
      "level": "unknown"
    }
  },
  "data": [
    {
      "chain": "xdc",
      "cost_basis": "complete",
      "cost_bps": [
        {
          "fee_bps": 0.00188,
          "notional_usd": 100
        },
        {
          "fee_bps": 0.000188,
          "notional_usd": 1000
        },
        {
          "fee_bps": 0.0000188,
          "notional_usd": 10000
        }
      ],
      "est_cost_usd": 0.0000188,
      "fee_components": {
        "execution_usd": 0.0000188,
        "l1_data_usd": null,
        "total_usd": 0.0000188
      },
      "fee_model": "single_layer",
      "gas_price_wei": "250000000",
      "gas_units": 46680,
      "gas_units_assumed": null,
      "gas_units_method": "eth_estimateGas",
      "gas_units_scenario": "transfer to an address with an existing USDC balance",
      "head_age_s": 3,
      "l1_data_fee_included": null,
      "transfer_amount_atomic": 1000000,
      "tx_type": "usdc_transfer"
    }
  ],
  "meta": {
    "attributions": [
      {
        "fallback_used": false,
        "fetched_at": "2026-08-30T22:14:03.011Z",
        "message": "Data provided by CoinGecko",
        "quote_asset": "usd",
        "source_id": "coingecko.simple.licensed.xdc",
        "url": "https://www.coingecko.com/en/api"
      }
    ],
    "capability": "compass.settlement.costs",
    "chains_requested": [
      "xdc"
    ],
    "chains_unavailable": [],
    "fee_completeness": "complete",
    "freshness": {
      "all_sources_within_policy": true,
      "cache_ttl_s": 119,
      "oldest_source_age_s": 1,
      "policy_max_age_s": 120,
      "valid_until": "2026-08-30T22:16:02.904Z"
    },
    "generated_at": "2026-08-30T22:14:03.117Z",
    "limitations": "a simulated transfer to an address that already holds the token; a first transfer to a fresh address costs more, and no bridge, mint or subscription cost is included",
    "request_id": "req_example1",
    "schema_version": "0.5.0",
    "sources": [
      {
        "block": 85797652,
        "fetched_at": "2026-08-30T22:14:02.904Z",
        "id": "xdc.rpc.gas_price",
        "kind": "onchain_read",
        "max_age_s": 120
      },
      {
        "fetched_at": "2026-08-30T22:14:02.904Z",
        "id": "xdc.rpc.gas_units",
        "kind": "onchain_simulation",
        "max_age_s": 120,
        "method": "eth_estimateGas"
      },
      {
        "attribution": "Data provided by CoinGecko",
        "fallback_used": false,
        "fetched_at": "2026-08-30T22:14:03.011Z",
        "id": "coingecko.simple.licensed.xdc",
        "kind": "public_api",
        "license_basis": "operator_attestation",
        "licensed": true,
        "max_age_s": 120,
        "quote_asset": "usd",
        "url": "https://www.coingeck

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
3 h agoPassed402241 ms$0.01
8 h agoPassed402221 ms$0.01