The cross-chain fee stack: five layers of cost in a bridge transfer

Updated

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

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.

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

AmountMedian cheapest quote across 38 routesMedian of route medians
$203.12 bps38.05 bps
$2001.21 bps27.95 bps
$2,0000.94 bps25.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

  1. Compare the amount received, not the advertised fee.
  2. Check the gas column separately, especially below $100.
  3. Look for an integrator fee in the quote details; try the bridge's own interface too.
  4. For asset changes, compare at the size you will actually send.
  5. 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