How Ethereum, Polygon, Base, Arbitrum, Solana, Tron, Stellar, Tempo, and Arc compare for off-ramps: time to finality, fee model, and which tokens work.
The best network for a crypto off-ramp is the cheapest one both you and the provider support for your token. For USDC that usually means Polygon, Base, Arbitrum, Solana, Stellar, Tempo, or Arc. For USDT it means Polygon, Solana, or Tron. Ethereum is fine for large payments but costs more gas and takes about 15 minutes to finalize.
The network sets the on-chain clock and part of the fee. The bank rail sets everything after that.
It decides how long the stablecoin leg takes and what the transfer costs. Everything else, from the FX rate to the payout rail, is the same whatever chain you send on.
Think of it as two clocks. Clock one is on-chain: your transfer lands in a block and that block becomes final, meaning it can't be reorganized away. Clock two is the fiat payout over Pix, SPEI, ACH, SEPA, or SWIFT. The settlement times by rail cover clock two. This article is about clock one.
The gap between "submitted" and "final" is also where provider SLAs get vague. The SLA and finality explainer calls these T1 and T2.
| Network | Block time | When a transfer is final | About how long |
|---|---|---|---|
| Ethereum | 12-second slots | After two epochs of validator votes (Gasper) | About 15 minutes |
| Polygon PoS | A few seconds | When a milestone is agreed by 2/3+ of validators (Heimdall v2) | 2 to 5 seconds |
| Base | 2 seconds, 200 ms preconfirmations | When the batch is final on Ethereum (Base finality) | About 2 minutes to post, about 20 minutes to L1 finality |
| Arbitrum One | 250 ms | Soft finality from the sequencer, hard finality once the batch is final on Ethereum (Nitro) | Soft is instant, hard follows Ethereum finality |
| Solana | Sub-second slots | "Finalized" after 31+ confirmed blocks on top (commitments) | About 12.8 seconds |
| Tron | 3 seconds | When 19 of 27 super representatives have produced blocks at or above it (consensus) | About 1 minute |
| Stellar | About 5 seconds | When the ledger closes under SCP (Stellar) | About 5 seconds |
| Tempo | About 600 ms | Deterministic finality under Simplex BFT (Tempo) | Under a second |
| Arc | Sub-second | Deterministic finality under Malachite BFT (Arc) | Under a second |
Two kinds of finality sit in that table.
Deterministic finality (Stellar, Polygon PoS milestones, Tempo, Arc) means a block is final once consensus signs it. There's nothing to wait for after that. Stellar's consensus is built to stall rather than fork, which is the trade you want for payments.
Economic or probabilistic finality (Ethereum, Solana, Tron, and the rollups that inherit Ethereum's) means the chance of a block being replaced shrinks as more blocks pile on, until a checkpoint makes reverting it prohibitively expensive. On Ethereum, undoing a finalized block would require destroying at least a third of all staked ETH.
Reorgs are not theoretical. Polygon PoS had a 157-block reorg in February 2023. Its current milestone finality makes blocks final within seconds. Solana's planned Alpenglow upgrade targets about 150 ms finality, so its row will change.
Each provider sets its own rule. Some count blocks per chain. Some wait for the chain's finalized state. Some release fiat earlier for small amounts and wait longer for large ones.
What you should do: don't count blocks yourself to decide whether money arrived. Read the provider's status. On BlindPay, the payout's tracking_transaction step moves to completed once the stablecoin leg is done, and the top-level status tells you where the fiat is. BlindPay doesn't publish a per-chain confirmation count, so build against statuses and webhooks. The payout tracking guide shows what each status should say to the recipient.
Gas is the smaller part on most chains. Here is what each one charges for, in its own words.
| Network | Gas paid in | Fee model |
|---|---|---|
| Ethereum | ETH | Base fee plus priority tip under EIP-1559 (blocks). Rises with demand |
| Polygon PoS | POL | EIP-1559 style gas: a base fee plus a priority tip |
| Base | ETH | L2 execution fee plus an L1 security fee, usually the larger part (Base fees) |
| Arbitrum One | ETH | L2 gas plus an L1 data fee for posting to Ethereum (Arbitrum fees) |
| Solana | SOL | 5,000 lamports per signature plus an optional priority fee. Creating a new token account also needs rent (Solana fees) |
| Tron | TRX or staked energy | Energy and bandwidth. Burning TRX costs 100 sun per energy unit, and activating a new account costs 1 TRX (Tron resources) |
| Stellar | XLM | Base fee of 100 stroops per operation, higher under surge pricing (Stellar fees) |
| Tempo | USD stablecoins | Paid in TIP-20 stablecoins. Around $0.0006 at the cap for a 50,000-gas transfer (Tempo fees) |
| Arc | USDC | USDC is the gas token, with a target of about $0.001 per ERC-20 transfer (Arc fees) |
The provider's per-network fee is often the bigger number. On BlindPay offramp wallets, for example, each deposit carries a fixed fee by chain: 15 USDT on Tron (200 USDT minimum), 0.50 USDC on Solana (50 USDC minimum), 1 USDC on Ethereum, and nothing on Polygon, Base, Arbitrum, Tempo, or Arc.
A fixed fee hurts small payments and disappears on large ones:
The off-ramp wallet explainer runs a full 100 USDT example with every fee line.
Not every token is on every chain, and a quote for an unsupported pair fails. Per BlindPay's supported chains reference:
| Token | Networks |
|---|---|
| USDC | Ethereum, Polygon, Base, Arbitrum, Solana, Stellar, Tempo, Arc |
| USDT | Ethereum, Polygon, Solana, Tron, Tempo |
USDC isn't on Tron. USDT isn't on Base, Arbitrum, Stellar, or Arc.
One more trap: "USDC" on a chain can mean native USDC issued by Circle or an older bridged version. They have different contract addresses and aren't interchangeable. Check the contract against Circle's list of USDC addresses before you send. For which token to hold at all, see USDC vs USDT for payments.
Work down this list and stop at the first rule that decides it.
| Problem | Cause | How to avoid it |
|---|---|---|
| Funds sent but no payout | Token sent on the wrong network. EVM addresses look the same on every EVM chain | Confirm network and token with the recipient, not just the address |
| Transfer rejected or not credited | Bridged token instead of native USDC | Check the contract address against the issuer's list |
| Deposit not converted | Below the network's minimum, or smaller than the fees | Know the per-network minimums before you share an address |
| Approve or transfer won't send | Wallet holds the stablecoin but no gas token | Keep ETH, POL, SOL, TRX, or XLM in the sending wallet |
| Payout slower than expected | The rail, not the chain | Set ETA copy per rail |
The payout mistakes guide goes deeper on each one.
BlindPay pays out from nine networks: Ethereum, Polygon, Base, Arbitrum, Tempo, Arc, Stellar, Solana, and Tron. You pass network and token on the payout quote, and the quote fails fast on an unsupported pair. From an external wallet you authorize the exact quoted amount (an ERC-20 approve on EVM chains, a signed transaction on Stellar, a token delegation on Solana) and BlindPay pulls the funds only when the payout executes. Offramp wallets cover the same chains except Stellar, and every deposit pays out on its own.
Start in the sandbox with the payout quickstart.
This article is for general information only and is not legal, tax, or financial advice.
Stablecoin payments are as safe as the issuer, the network, the provider, and your own controls. The seven risks to check, with real incidents and fixes.
Five stablecoin APIs compared for cross-border payments: primary use case, pre-funding requirement, payout regions, and developer experience, plus how to choose by buyer scenario.
Ten stablecoin APIs compared for 2026: BlindPay, Circle, Bridge, BVNK, Fireblocks, Crossmint, Zero Hash, Conduit, Sphere, and Borderless, across rails, custody, pricing, and compliance.