Short answer: most of what you pay is a percentage that scales with the amount, plus one or two fixed costs that do not scale at all. That means the same bridge can look expensive on a 0.01 BTC swap and cheap on a 1 BTC swap without changing a single fee rate, because the fixed part gets divided by a bigger number. Bitcoin traded at $80,018 when I checked the price feed in Rango Exchange's app on 26 October 2026 at 05:25 UTC, so the three sizes below are $800, $8,002 and $80,018 of BTC. The Bitcoin network fee I measured the same morning was 1 sat/vB, the recommended rate returned by mempool.space at 05:26 UTC, which makes the on-chain leg almost free and pushes the comparison entirely onto bridge economics.
What actually makes up a Bitcoin bridge fee?
Four things, and they behave differently as the amount grows.
-
The solver or liquidity fee. A percentage of the swap. Garden Finance publishes 0.1% to 0.3% per solver. Chainflip lists a liquidity fee of 0.10% to 0.15% per pool. NEAR Intents charges 0.2% through its frontend plus 0.25% extra on 1Click without an API key, 0.20% with one. This is the part that scales linearly and never gets cheaper per dollar.
-
A protocol or network charge. Chainflip's swapping docs list a 0.10% network fee with a $0.50 minimum, burned against FLIP. That minimum is the important word: it is a floor, so it costs the same in dollars whether you swap $400 or $400,000, and it stops scaling as a percentage below about $500.
-
The source chain fee. Your Bitcoin transaction. You pay it from your own wallet in sats, out of protocol, so no bridge can quote it for you. At 1 sat/vB a typical single-recipient payment of a few hundred virtual bytes costs a few hundred sats. Call it $0.16 for a 200 vB transaction at $80,018 BTC, and note that this is the number most sensitive to mempool conditions rather than to swap size.
-
The destination gas. BOB Gateway includes it inside the quoted output and estimates it upfront, which its fee docs illustrate at roughly $0.50 for a BTC to USDT on Ethereum swap. Chainflip charges a broadcast fee on the destination side. Again a fixed-ish cost, and again it does not care how much BTC you moved.
BOB Gateway is the clearest example of the quote-first model. Its fee documentation, read on 26 October 2026, says every fee is computed per swap and returned in the getQuote response before the user signs, that the quote is the guaranteed minimum used to create the order, and that the protocol fee is currently set to cover routing and gas with 0 markup, with the BOB DAO able to activate a markup later. The documentation's own worked example: a $100 swap with a 50 bps affiliate fee shows a $0.00 protocol fee line, about $0.50 of destination gas, $0.50 going to the affiliate, and roughly $99.00 of USDT to the user.
How do fees change between a 0.01 BTC and a 1 BTC swap?
Here is the arithmetic, using the published structures above and the same fixed costs on every row. Effective fee is the total cost divided by the swap notional, and the basis point figure follows the standard formula: (cost divided by notional) multiplied by 10,000.
-
0.01 BTC, $800. Fixed costs of about $0.66 (destination gas $0.50 plus a 200 vB miner fee of about $0.16) equal 8.25 bps on their own, before any percentage fee. Garden at 0.1% to 0.3% adds $0.80 to $2.40, so the total lands near 18 to 38 bps. Chainflip at 0.20% to 0.25% combined adds $1.60 to $2.00, so roughly 28 to 33 bps. NEAR Intents at 0.45% adds $3.60, about 53 bps.
-
0.1 BTC, $8,002. The same $0.66 of fixed cost is now 0.83 bps, effectively invisible. Garden's percentage becomes the whole story at 10 to 30 bps. Chainflip sits at 20 to 25 bps. NEAR Intents at 45 bps.
-
1 BTC, $80,018. Fixed cost is 0.08 bps, pure noise. Garden 10 to 30 bps, Chainflip 20 to 25 bps, NEAR Intents 45 bps. BOB Gateway's fixed components are the $0.50 destination gas and the miner fee only, so what remains is the solver's rate inside the quote, with no protocol markup on top per its docs.
Read the columns as a trend rather than a leaderboard. The ordering between services does not change much here, but the *gap between paying 18 bps and paying 53 bps on $800 is $2.80*, while on $80,018 the same 35 bps spread is $280. Small swaps are decided by fixed costs. Large swaps are decided by basis points. That is the whole answer in one sentence, and it is why "which bridge is cheapest" has no stable answer without an amount.
Which costs stay fixed when the transfer gets bigger?
The ones that are not a percentage of notional. List them before you quote, because a service that looks 10 bps cheaper can lose on a single $0.50 minimum.
-
Destination gas. Included in BOB's quote at roughly $0.50 in the documented example, deducted from output rather than paid by you.
-
Network minima. Chainflip's $0.50 minimum on the 0.10% network fee is a hard floor; below $500 of notional the percentage stops applying and the minimum takes over.
-
Bitcoin miner fee. Set by mempool conditions, not by the swap. Today's 1 sat/vB is about as cheap as Bitcoin gets; at 30 sat/vB the same transaction costs 30 times more, which is 24 bps on an $800 swap and still only 0.24 bps on an $80,000 swap.
-
Refund-side costs. BOB's refund docs state a refunded V4 order sends BTC back net of the fee needed to confirm that transaction, and the order earns no fee. Chainflip's docs note a refunded slice pays its refund fee, the $0.50 network minimum plus the broadcast fee. Those are fixed penalties attached to failure, and they hurt small swaps proportionally more.
-
Wrapping, if you take that path. tBTC charges a 0.2% mint fee and a 0.2% redemption fee, two percentage hits on the way in and out, plus a DEX spread in between. At $800 that is about $3.20 before you even trade.
Where does size actually hurt?
Two places, and neither is the headline fee.
The first is liquidity depth expressed as price impact. THORChain's fee model is explicit about this: an inbound fee, a slip-based liquidity fee that scales with trade size, an optional affiliate fee of 0 to 10,000 bps, and an outbound fee covering destination gas at a dynamic 1x to 3x multiplier. The slip term is the one that grows with your order, so a quote that is fine at 0.01 BTC can degrade at 5 BTC without any fee schedule changing.
The second is solver inventory. BOB Gateway fills from a solver's own BTC and USDT inventory, which is why the quote is signed with a one-minute validity and why a release that fails is re-quoted and retried on an exponential backoff for up to an hour before the BTC is refunded. Long swaps and thin inventory are the same problem seen from two sides.
BOB's own quote tests, published 14 September 2026, show the size effect directly: at 1 BTC to USDT, Gateway quoted 77,897.00, Garden Finance 77,871.90, THORChain 77,860.20 and NEAR Intents 77,730.13. At 0.1 BTC to USDT, Garden won by 1.3 bps, and at 0.01 BTC Gateway was ahead by 3.7 bps. Those are BOB's numbers about BOB's product, so read them as an interested party's snapshot of one afternoon. The useful part is structural: the winner changed with the amount.
How do BOB Gateway's fees compare with other Bitcoin bridges?
Different shapes rather than different prices.
-
BOB Gateway. Quote-first, signed, guaranteed minimum, all-in. Four disclosed components: protocol fee (currently 0 markup per the fee docs), solver pricing inside the rate, optional affiliate bps, destination gas estimated upfront. Source-chain miner fee is out of protocol. One-minute quote validity.
-
Garden Finance. HTLC on both chains, solver fee typically 0.1% to 0.3%, refund you can claim yourself after the timelock. Publishes 2 to 5 minutes for BTC to EVM.
-
THORChain. Shared vaults, layered fees: inbound gas, slip-based liquidity fee, affiliate bps, outbound gas at 1x to 3x.
-
Chainflip. Shared FROST vaults, 0.10% to 0.15% liquidity per pool, 0.10% network fee with a $0.50 minimum, broadcast fee, optional boost of 0.05% to 0.3%.
-
NEAR Intents. Most layers: 0.0001% on-chain, 0.2% frontend, plus 0.25% or 0.20% on 1Click depending on whether you hold an API key.
The practical difference is what you can verify before signing. BOB's model hands you four line items with an optional USD value on each, plus a minimum you are guaranteed to receive. THORChain's model hands you a slip number that is a function of pool state at execution. Chainflip's model hands you a retry window and a refund address you must supply.
What should you check before signing?
Five things, in this order.
1. Quote at your actual amount, not at 1 BTC. The 0.1 BTC route in BOB's September tests went to a different winner than the 1 BTC route.
2. Ask whether the number is a guaranteed minimum or a slip estimate. A quote that can move with the pool is a different product from a signed minimum valid for one minute.
3. Add the fixed costs yourself. Destination gas plus miner fee plus any network minimum. Under $1,000 of notional this is often a fifth to a half of what you pay.
4. Check the refund terms and who can trigger them. BOB's X to BTC escrow releases only against an SPV proof verified by its Bitcoin light client, and the refund call is owner-operated after a configurable delay of 12 hours to 7 days. Garden lets you reclaim via the timelock. Chainflip refunds to the address and retry duration you supply.
5. Price the source transaction separately. At 1 sat/vB today it is cents. At 30 sat/vB it is a real line item, and no bridge can hide it for you.
An honest limitation of this test
I could not pull a live BOB Gateway quote from my own environment for this article, so the BOB numbers above are the ones BOB publishes rather than numbers I captured. Two things blocked it. The swap widget at app.gobob.xyz prices a route only once an amount is entered in its connected flow, and on my test browser the amount field did not populate the quote during the session. The public quote host, gateway-api-mainnet.gobob.xyz, returned Cloudflare's "you have been blocked" page to my server address when I requested a quote for 0.01 BTC into USDT on Ethereum at 05:26 UTC on 26 October 2026. So there is no request id and no signed quote from me in this piece, and I am not going to invent one.
What I did capture live, with timestamps, was the price and the network condition that the arithmetic rests on: $80,018 per BTC from the app's own price display, and 1 sat/vB from mempool.space. The fee structures quoted for BOB, Garden, THORChain, Chainflip and NEAR Intents come from each project's own documentation, and the quote comparisons attributed to BOB are labelled as BOB's tests on 14 September 2026. Compare at your own size before you sign anything, and treat any article, including this one, as a starting point rather than a price list.
Sources
-
BOB Gateway fees documentation, read 26 October 2026: https://docs.gobob.xyz/gateway/fees
-
BOB Gateway technical deep dive, settlement and refund path: https://docs.gobob.xyz/gateway/technical
-
BOB Gateway refunds documentation: https://docs.gobob.xyz/gateway/refunds
-
BOB's published quote tests and cheapest-bridge comparison, 14 September 2026: https://www.gobob.xyz/en/blog/the-cheapest-bitcoin-bridges-for-native-btc
-
Garden Finance FAQ and fee documentation: https://docs.garden.finance/
-
THORChain network fee documentation: https://docs.thorchain.org/thornodes/overview/network-fees
-
Chainflip swapping and fee documentation: https://docs.chainflip.io/concepts/swapping/fees
-
NEAR Intents fee documentation: https://docs.near-intents.org/near-intents/fees
-
Threshold Network tBTC mint and redemption fees: https://docs.threshold.network/
-
Bitcoin mempool recommended fee rates, read 26 October 2026 05:26 UTC: https://mempool.space/api/v1/fees/recommended
One caveat worth repeating: quotes move, minima get adjusted, and a service that is cheapest at $800 today can be fourth at $80,000 tomorrow. The fee shape is the durable part. Percentage costs scale, fixed costs do not, and whichever side of that line dominates is decided by the amount you are actually moving.