The Spread Is Not the Profit

Matt McNick walks a Bitcoin price gap through trading fees, slippage, transfers, custody, and taxes before calling it arbitrage profit.

For: A curious trader who sees Bitcoin quoted at two prices and wants to know whether the gap is real, executable, and worth the risk.

A Bitcoin price gap between two marketplaces looks like a loose twenty on the sidewalk: buy where the number is lower, sell where it is higher, and try not to sprain anything while bending down.

That basic idea is cross-market arbitrage. The difficult part is that the visible spread is not the profit. It is the first line of an expense report.

Before a price gap deserves a dollar, it has to survive two executable quotes, two trading fees, slippage, transfer or rebalancing costs, withdrawal rules, timing, custody exposure, and taxes. If one of those lines is blank, the calculation is still wearing bar lighting.

Why two marketplaces can show two prices

Each venue has its own order book: buyers posting bids, sellers posting asks, and a finite amount available at each price. Different participants, funding rails, regional demand, inventory, and liquidity can produce short-lived gaps.

The homepage price is not enough. A trader buying must inspect the ask and the amount available there. A trader selling must inspect the bid and its available depth. The relevant comparison is:

executable bid on the expensive venue minus executable ask on the cheap venue

The word executable is doing most of the work. A thin top-of-book quote may cover only a sliver of the intended order. The rest can fill at worse prices, which is slippage.

There are two clocks, and both are rude

The intuitive workflow is sequential:

  1. Buy Bitcoin on Venue A.
  2. Withdraw it.
  3. Wait for the Bitcoin network and Venue B to credit the deposit.
  4. Sell on Venue B.

That is not a locked arbitrage. It is a directional Bitcoin position during the transfer. Coinbase’s current help material says on-chain sends incur fees and take time, and warns that using the wrong network can lose funds. Kraken separately publishes cryptocurrency withdrawal minimums and fees. Those operational details can change, so the confirmation screen—not an old screenshot—gets the final vote.

Professional operations often reduce that timing risk by keeping cash on the cheaper venue and Bitcoin on the more expensive venue, then buying and selling nearly simultaneously. That removes the wait between the two trading legs, but it does not remove risk. Capital is now split across custodians, inventory can drift, and eventually the balances must be rebalanced. A frozen withdrawal or failed venue can turn tidy market-neutral arithmetic into a custody problem.

Make the gap survive a tiny example

Suppose these are hypothetical, simultaneously executable quotes for the same Bitcoin-dollar market:

LineHypothetical amount
Venue A ask$100,000 per BTC
Venue B bid$100,700 per BTC
Trade size0.01 BTC
Gross price gap$7.00
Venue A buy fee at 0.40%-$4.00
Venue B sell fee at 0.40%-$4.03
Net before slippage, transfers, and tax-$1.03

The screen displayed a $700-per-Bitcoin gap. The 0.01 BTC trade lost money before a single withdrawal, deposit, spread movement, or tax consequence entered the room.

The 0.40% fees are illustrative assumptions, not a claim about a reader’s account. Actual maker and taker fees depend on the venue, order behavior, and often trailing volume. Coinbase explains that immediately filled orders are taker orders while resting orders can earn maker treatment; Kraken also uses a volume-based maker-taker schedule. A limit order is not automatically a maker order, and a maker order is not automatically filled.

Use this full test:

net result
= sale proceeds at the executable bid
- purchase cost at the executable ask
- buy-side trading fee
- sell-side trading fee
- slippage on both legs
- withdrawal and network costs
- fiat funding or withdrawal costs
- rebalancing cost
- tax and recordkeeping burden

If the result works only when every variable receives its best possible value, it does not work yet.

The risk ledger is longer than the fee ledger

Execution risk. One leg can fill while the other does not. The unfilled side leaves exposure to Bitcoin’s price, and chasing the second fill can erase the gap.

Transfer risk. Confirmations take time. Venues can pause deposits or withdrawals, impose holds, change minimums, or require additional review. Sending to the wrong address or network can be irreversible.

Custody and platform risk. Prefunding makes simultaneous execution possible by leaving assets at multiple venues. It also increases the number of platforms that can be hacked, fail, freeze an account, or become unreachable. The CFTC warns that virtual-currency cash markets can lack critical safeguards and face volatility, manipulation, cyber risk, and platform conflicts.

Liquidity risk. A displayed quote is not a promise that the entire order fills there. Compare depth for the actual size, not just the prettiest first row.

Operational risk. API lag, stale data, mismatched symbols, decimal mistakes, withdrawal-address errors, and fee-tier changes can beat a correct idea with incorrect plumbing.

Compliance and tax risk. Venue eligibility, identity checks, transaction reporting, and tax treatment depend on the trader and jurisdiction. In the United States, the IRS treats digital assets as property and requires reporting of taxable sales and dispositions. Moving the same Bitcoin between wallets you own is different from selling it, but accurate lot, basis, fee, timestamp, and proceeds records still matter. This article is not tax or legal advice.

Paper trade the machinery first

Before risking capital, record a series of observed gaps without trading them. For each one, capture:

  • both venues’ timestamps;
  • executable bid, ask, and depth for the same pair and order size;
  • the order type and actual fee tier on each venue;
  • expected slippage;
  • withdrawal availability, minimum, fee, and deposit-credit rule;
  • the cost of restoring starting balances;
  • the gap’s duration; and
  • the after-cost result.

Then make the assumptions meaner. Widen slippage. Delay the second leg. Add a failed fill. Raise the rebalancing cost. If the strategy survives only a perfectly synchronized spreadsheet, congratulations: the spreadsheet has achieved arbitrage. You have not.

The plain answer

Bitcoin arbitrage between marketplaces is real as a market mechanism. Easy, guaranteed profit is not.

The defensible process is boring on purpose: compare executable prices, model every cost, understand both venues, protect account access, rehearse failure, keep complete records, and use only capital you can afford to have exposed or inaccessible. The CFTC’s advice is admirably direct: do not use a product or strategy you do not understand, and do not believe anyone promising a risk-free trade.

A gap is an invitation to calculate. It is not permission to celebrate.

Sources reviewed August 14, 2026