Short answer
The cost of a cross-chain transfer is the difference between what you send and what you can use on the other side. It comes from five layers: source-chain gas, the bridge or solver fee, any integrator or platform fee, price impact or swap spread, and destination-side costs. Most apps show only one or two of these. The reliable way to compare is the net amount received for the same input, which is how upswap ranks quotes.
Key terms
- bps (basis point): 0.01% of the amount. On $200, 1 bps is $0.02; 25 bps is $0.50.
- Net received: the output amount minus any fee charged on top, valued at the same price snapshot as the input (our methodology).
- Gas: the network fee paid to the blockchain, in its native coin (ETH, POL, BNB, SOL…).
Layer 1: source-chain gas
Every transfer starts with a transaction on the source chain, and that transaction pays gas. On Ethereum the fee is gas used × (base fee + priority fee); the base fee is burned and the tip goes to the validator (ethereum.org: gas and fees). Rollups such as OP Mainnet add an L1 data fee for posting the transaction to Ethereum (Optimism docs: transaction fees). Solana charges a base fee of 5,000 lamports per signature plus an optional prioritization fee (Solana docs: fees). Token approvals can add a second transaction the first time you use a contract.
In upswap run #62 (2026-10-24 12:35 UTC), the median gas estimate reported by the quote APIs for a source transaction was $0.030 for USDC on Ethereum, $0.0105 for USDC on Arbitrum, $0.0040 for USDC on Base and $0.0079 for USDC on Solana. At $20 these figures are noticeable; at $2,000 they are a rounding error. We show gas in its own column and do not rank by it.
Layer 2: bridge or solver fee
This is what the protocol and the people moving the funds charge.
- Intent and relayer bridges usually take the fee as a spread: you deposit an input amount and a relayer delivers a smaller output amount. Across documents its total fee as input minus output, split into an LP fee and a relayer fee that covers the relayer's gas, capital cost and risk (Across docs: fees).
- Fixed plus variable fees: deBridge DLN charges a flat fee in the source chain's native token plus a 4 bps variable fee in the input token, and refunds it in full if the order is cancelled (deBridge docs: fees).
- Burn-and-mint transfers such as Circle's CCTP move USDC without liquidity pools (Circle: CCTP); any fee then comes from the app or the fast-transfer option you use.
Layer 3: integrator or platform fee
Wallets, aggregators and front ends can add their own fee on top of the bridge. It is often included in the quote rather than shown separately. In run #62, 1,023 of the 1,767 ranked quotes came through LI.FI's public endpoint, which includes a 25 bps platform fee, and NEAR Intents 1Click quotes carried 1 bps (99 quotes) or 20 bps (6 quotes). That is a large part of why the median quote on most routes sat between about 26 and 32 bps at $200 while the cheapest quote on the same route was often near 1 bps. The same bridge reached through different front ends can therefore cost very different amounts — see any route page or Across for examples.
Layer 4: price impact and swap spread
If the transfer also changes the asset (for example ETH on Ethereum to SOL on Solana), a swap happens somewhere along the way and its price impact is part of the cost. Larger amounts move the price more. That is why same-asset stablecoin routes are usually cheaper than asset-changing routes: in run #62 the cheapest $200 quote for Ethereum ETH → Solana SOL cost 18.16 bps, against 1.00 bps for Ethereum → Solana USDC.
Layer 5: destination-side costs
Some routes need a second transaction on the destination chain — for example, claiming a withdrawal from a canonical rollup bridge — or leave you with tokens but no gas coin to move them. Budget for the destination gas coin before you send, and check whether the quote includes a small native-token top-up.
Measured snapshot
| Amount | Median cheapest quote across 38 routes | Median of route medians |
|---|---|---|
| $20 | 3.12 bps | 38.05 bps |
| $200 | 1.21 bps | 27.95 bps |
| $2,000 | 0.94 bps | 25.64 bps |
Source: upswap run #62, sampled 2026-10-24 12:35–12:37 UTC, 1,893 quotes, gas excluded. Small amounts cost more in percentage terms because part of every fee is fixed.
How to compare quotes in practice
- Compare the amount received, not the advertised fee.
- Check the gas column separately, especially below $100.
- Look for an integrator fee in the quote details; try the bridge's own interface too.
- For asset changes, compare at the size you will actually send.
- Check incident history before choosing on price alone.
FAQ
What is the cheapest way to bridge stablecoins?
It changes by route and run. In run #62 the cheapest $200 stablecoin quotes on most routes cost 0.1–1.7 bps before gas, while median quotes were mostly between 26 and 35 bps. Comparing several quotes is what saves money.
Why does the same bridge show different prices in different apps?
Integrators can add their own fee and route through different paths. upswap lists the same bridge reached through different APIs as separate rows so that markup is visible.
Is gas included in upswap's bps figures?
No. Gas is an estimate shown in its own column; the bps cost is calculated before gas.
Sources
- ethereum.org: gas and fees — accessed 2026-10-24
- Optimism docs: transaction fees — accessed 2026-10-24
- Solana docs: fees — accessed 2026-10-24
- Across docs: fees in the system — accessed 2026-10-24
- deBridge docs: fees and supported chains — accessed 2026-10-24
- Circle developer docs: CCTP — accessed 2026-10-24
- upswap snapshot run #62, 2026-10-24 12:35–12:37 UTC (open data)
