Basis Point Bulletin

Home › Strategy & Math › How to Arbitrage Bitcoin: A Step-by-Step Walkthrough

How to Arbitrage Bitcoin: A Step-by-Step Walkthrough

Editorial team · Updated 2026-10-14 · 6 min read

To arbitrage Bitcoin, open verified accounts on two exchanges, pre-fund them (Bitcoin on one, a stablecoin on the other), watch for a price gap larger than your full round-trip cost, then sell on the expensive exchange and buy on the cheap one at the same time. Rebalance the inventories afterwards, not mid-trade.

Step 1: Choose two liquid venues

Start with exchanges that have deep Bitcoin order books and that accept customers in your country. Depth matters more than a slightly lower fee, because a thin book turns a theoretical gap into a bad fill. We compare selection criteria in the best exchanges for bitcoin arbitrage. Confirm that each exchange is available where you live and complete identity checks in advance, since waiting for verification while a gap exists defeats the purpose.

Step 2: Fund both sides

This is the step beginners skip. You cannot sell Bitcoin you do not hold. A typical layout splits capital like this:

Exchange Holds Used for
Exchange A Bitcoin Selling when A’s price is higher
Exchange B Stablecoin (for example USDT) Buying Bitcoin when B’s price is lower

When the gap reverses, you need the opposite layout, or you accept that you only trade one direction until you rebalance. The Bitcoin arbitrage bot page at CryptoMEV Bot describes this very requirement: funded accounts with BTC and a stablecoin on at least two supported exchanges, with rebalancing of BTC and stablecoins between them. Keep in mind that stablecoin exposure carries its own risk, so only hold what you can afford to see move.

Step 3: Measure the spread properly

Do not compare the last traded prices on two websites. Compare what you can actually get:

  • the best bid on the exchange where you will sell,
  • the best ask on the exchange where you will buy,
  • and the volume available at those prices.

The gross spread is the bid minus the ask. If the sell-side bid is $50,200 and the buy-side ask is $50,000, the gross spread is $200 per coin, or 0.4 percent, before costs.

Step 4: Subtract every cost

Write the net-profit formula once and apply it every time.

Net profit per coin = gross spread − buy fee − sell fee − slippage − any transfer or rebalancing cost allocated to the trade.

With an illustrative 0.1 percent taker fee on each leg, the $200 spread above loses about $100 to fees and leaves roughly $100 per coin before slippage. If the order book is thin and you average a fill $40 worse on each side, the profit falls to about $20. At 0.25 percent per leg, the trade is a loss. The point is not the specific figures, which are assumptions, but how quickly a nice-looking gap shrinks. The full cost breakdown is in bitcoin arbitrage fees and slippage.

Step 5: Place both legs together

Speed is the whole game. Options, from slowest to fastest:

  1. Manual orders in two browser tabs. Fine for learning, rarely fast enough.
  2. Scripts using exchange APIs. You write code that polls prices and submits orders.
  3. Packaged arbitrage software. A bot manages the monitoring and the order pair. CryptoMEV Bot is one example whose page describes one-click pre-built strategies and customizable parameters.

Whichever route you use, use limit orders or controlled market orders sized to the visible depth. A market order for more than the book can absorb is the classic way to give away the spread.

Step 6: Handle failure cases

Two orders on two exchanges are not atomic. One can fill while the other does not, leaving you with an open position. Plan for it:

  • Set a maximum time for the second leg and a rule for closing the first leg at a loss if it fails.
  • Cap the size of any single trade so one failure is survivable.
  • Monitor exchange API status; CryptoMEV Bot’s own page cites exchange API downtime and sudden price moves during execution as risks.

More scenarios appear in bitcoin arbitrage risks.

Step 7: Rebalance and record

After a run of trades one exchange ends up with more Bitcoin and the other with more stablecoin. Rebalancing means moving assets, which costs network fees and takes time. Record each trade: time, prices, fees, fills and the cost of rebalancing. You will need these records for tax and legal reporting and for honest evaluation of whether you are actually profitable.

Common beginner errors

  • Trusting displayed prices instead of order-book depth.
  • Ignoring withdrawal and network fees when rebalancing.
  • Starting with too little capital, so fixed costs dominate.
  • Skipping a paper-trading period. See how to test a bitcoin arbitrage bot for a method that also works for manual strategies.
  • Concentrating all funds on one exchange. A longer list is in bitcoin arbitrage mistakes.

Is it worth doing?

That depends on your costs, your speed and your capital, and on competition from professional firms. Our view, explained in is bitcoin arbitrage profitable, is that you should assume nothing until your own recorded results show it. Treat this guide as education, not advice, and never trade money you cannot afford to lose.

A worked example from start to finish

Here is a complete walk-through with invented numbers, so you can see how the steps connect. A trader holds 0.2 BTC on exchange A and 10,000 USDT on exchange B. At 14:02 the best bid on A is $50,180 and the best ask on B is $50,000. The gross spread is $180 per coin, or 0.36 percent.

The trader checks depth: A’s bid has 0.15 BTC available at that price and B’s ask has 0.20 BTC. The trade size is therefore capped at 0.15 BTC. Fees are assumed at 0.10 percent per leg. On 0.15 BTC, the notional is about $7,500, so fees total about $15. Slippage is estimated at $4 for the pair. Gross profit is 0.15 × $180 = $27. Net is $27 − $15 − $4 = $8, before rebalancing. The trader decides $8 is above their minimum threshold of $5 and places both orders.

Both fill. Now A holds 0.05 BTC plus about $7,527 in USDT, and B holds 0.15 BTC plus roughly $2,500 in USDT. The inventory is lopsided. After a few more trades the trader will need to rebalance, and the cost of that is subtracted from the daily result, as described in the cost article on fees and slippage.

When manual trading stops working

The example took a person about a minute to compute, and in a real market the gap could have vanished in seconds. That is the case for scripts or a bot. If you automate, keep the same discipline: compute net spread, cap by depth, use a minimum profit threshold and log. The vendor’s Bitcoin arbitrage bot is one packaged option, with pre-built strategies and parameters you can adjust, and its crypto arbitrage trading guide gives a general introduction. Neither guarantees outcomes.

Setting a minimum profit threshold

A threshold is the smallest net profit you are willing to take after all costs. Setting it above zero is protection against estimation error. If your cost model is accurate to within about 0.05 percent, a threshold of 0.05 to 0.10 percent net leaves a margin. Too low a threshold lets noise trade; too high a threshold skips real opportunities. Start conservative, review monthly and adjust. Record the threshold in your trade log so you can see how it affected results.

Frequently asked questions

How do you arbitrage Bitcoin between exchanges?

Hold funds on two exchanges, find a spread larger than total costs, sell Bitcoin on the expensive one and buy it on the cheap one at the same time, then rebalance later.

Do I need to transfer Bitcoin between exchanges for every trade?

Usually not. Pre-funding both exchanges avoids waiting for blockchain confirmations while the price moves.

What do I need to start bitcoin arbitrage?

Verified accounts on at least two exchanges, capital in Bitcoin and a stablecoin, API access or a fast manual workflow, and a way to track costs.

Can I do bitcoin arbitrage manually?

Yes, but visible gaps often close before a manual order is placed, which is why many traders use automation.