A crypto arbitrage route (or "bundle") is the concrete path of a single trade: an asset + a buy venue + a sell venue + the way the asset moves between them. When someone says "found a route BTC Kraken → MEXC +2.3%", that's exactly it: buy BTC on Kraken, transfer, sell on MEXC, pocket the difference. But the visible 2.3% spread is a raw number before costs. A real (executable) route only exists when a profit survives fees, transfer cost, and open deposit/withdrawal. Below: the anatomy of a route, how to read each component, the route types, where routes hide traps, a worked example, and an FAQ.

What an arbitrage route is

Every route has five required parts:

  1. Asset - what you trade (BTC, a fresh alt, a memecoin).
  2. Buy leg - the exchange and order book where it's cheaper (ask).
  3. Sell leg - the exchange and order book where it's dearer (bid).
  4. Transfer - how the asset gets from buy leg to sell leg: the blockchain network, its fee and time, or no transfer at all (for a futures↔spot basis on one exchange).
  5. Spread - the price gap (sell_bid − buy_ask) / buy_ask, in %.

A route is executable only when every condition holds at once: the spread covers total fees plus transfer cost. Both legs have liquidity for your size. Deposit is open on the sell leg and withdrawal is open on the buy leg. A single "no" turns a pretty spread into a phantom.

How to read a route

The raw spread tells you almost nothing. To know whether a route is tradeable, read it layer by layer, top to bottom.

1. Gross spread. The base (bid − ask) / ask. It's the ceiling - everything else is subtracted from it.

2. Exchange fees. Taker fee on both legs (typically 0.1% + 0.1% = 0.2%). A 0.25% gross route leaves 0.05% after two takers - basically zero.

3. Transfer cost and time. The network decides everything: an Ethereum withdrawal can cost $5–30 and take 2–5 minutes. Solana / BSC / Base - cents and ~30 seconds. While the asset is in transit the legs converge - the slower the network, the higher the risk the spread collapses before arrival.

4. D/W status (deposit/withdraw). The most underrated component. If withdrawal of the asset on the buy leg is closed, you can buy but can't move it out. If deposit on the sell leg is closed, you can't bring it in. An honest scanner shows this explicitly: 🟢 open / 🔴 closed / ❔ unknown - and never guesses, because a fake 🟢 means stuck capital.

5. Liquidity / executable size. A top-of-book spread may exist for $200, but at $2000 slippage already eats the gap. A real route is computed against order-book depth, not a single price.

Reading rule: gross spread → minus fees → minus transfer → check D/W → check depth. A route is tradeable only if a profit survives every step.

Route types

Routes differ by what they connect:

CEX-CEX CEX-DEX TRIANGULAR BUY Kraken SELL MEXC BSC ~30s coin moves on-chain CEX ask DEX pool / bid + gas on-chain swap USDT BTC ETH one venue, no transfer
Three route types: CEX-CEX transfers a coin over a network, CEX-DEX swaps against an on-chain pool, triangular loops through three pairs on one venue.
  • Spot–Spot - one exchange's spot vs another's, moving the coin over a network. The everyday baseline flow. Full guide: spot–spot arbitrage.
  • CEX–DEX - a centralized exchange vs a DEX pool. Often wider spreads, but needs on-chain execution and gas accounting. See CEX–DEX arbitrage.
  • Futures / Funding - a perpetual vs spot (basis), or perp vs perp across venues (funding-rate divergence). No cross-exchange coin transfer - it closes through price and funding convergence. See futures arbitrage.
  • Listing / one-off - a fresh-listing route against the older venue (separate mechanics, breakdown here).

Why a route closes

A route is a market inefficiency, and the market closes it. Who exactly: arbitrage bots that see the same spread and trade it faster. Market makers pulling liquidity onto the lagging leg. On liquid assets (BTC, ETH) the window lives seconds. On illiquid alts and unusual networks - minutes, because fewer players are willing to carry the transfer risk.

The takeaway: most "fat" spreads (>5%) are phantoms. They look like routes but aren't tradeable for one of these reasons: closed withdrawal, dead liquidity, a stale order-book price, a contract/network mismatch. The real work of an arbitrageur isn't "find a big percent" - it's filter out the phantoms and keep the executable ones.

How to build routes

By hand. Open two exchanges' order books, line up the prices, compute fees and transfer, check D/W in each exchange's withdraw/deposit panel, estimate depth. Minutes per asset. Monitoring the whole market by hand is impossible.

With a scanner. A real-time tool reads the order books of 20+ exchanges, computes the spread with fees and network math already subtracted, pulls D/W statuses and flags phantoms. The operator sees a finished list of executable routes, not raw percentages. That's what the Finder web dashboard does: spread net of fee/network, honest D/W flags, book depth and a spam-route filter - across 20+ CEXs, DEXs and perp venues.

A worked route

Hypothetical alt ABC. The scanner shows a Gate → MEXC spread of +2.6%.

0% net % -> break-even ~0.2% GROSS +2.60% - fees/net -0.21% NET +2.39% executable PHANTOM 0.00% net withdrawal closed, same +2.6% gross
The same +2.6% gross: net +2.39% when D/W is open, but 0% the moment withdrawal is closed - identical raw percent, phantom route.
Buy leg:   Gate, ask $1.000, book liquidity ~$4k
Sell leg:  MEXC, bid $1.026  (+2.6% gross)
Transfer:  BSC, ~$0.20, ~30s, withdrawal 🟢 open, MEXC deposit 🟢 open

Buy Gate $2000 → 2000 ABC
Gate taker 0.1%            −$2.00
BSC withdrawal            −$0.20
Sell MEXC at $1.026       → $2052
MEXC taker 0.1%            −$2.05
──────────────────────────────────
Net ≈ +$47.75 (~2.39% net) — route is executable

Now the same route, but ABC withdrawal on Gate is 🔴 closed: gross is still 2.6%, net is zero, because there's nothing to move. Identical raw percent, phantom route. That's the whole difference between "saw a spread" and "read a route."

FAQ - arbitrage routes

What is an arbitrage route in simple terms?

The path of a single arbitrage trade: which asset, where to buy, where to sell, and how to move it between exchanges. "Route Kraken → MEXC on BTC" = buy BTC on Kraken, transfer, sell on MEXC.

Why is the route's spread big but I can't make money?

Because a big gross spread is almost always a phantom: closed withdrawal/deposit, dead liquidity, a stale price, or a network/contract mismatch. Real profit = gross minus fees minus transfer, and only with open D/W and enough depth.

What spread counts as a workable route?

After two takers (~0.2%) and transfer, ~0.5–1% net is workable on liquid assets. On illiquid ones the windows are wider (2–10%+), but transfer/slippage risk is higher too.

How fast does a route close?

On BTC/ETH - seconds (bots). On illiquid alts and rare networks - minutes. The fewer players willing to carry the transfer risk on that network, the longer the window lives.

Can I build routes by hand?

For one asset - yes, in a couple of minutes. Monitoring the whole market by hand - no: you'd need to read dozens of order books, D/W statuses and depth at once. That's what a scanner is for.

This is not investment advice. A route's visible spread is a raw number. Real profit depends on fees, network, open deposit/withdrawal and book depth. Any route can collapse during the transfer.


Related: the pillar Crypto arbitrage guide, arbitrage types - Spot–Spot, CEX–DEX, futures. One-off windows - new-listing arbitrage. Live routes across 20+ exchanges, net of network and D/W - in the web dashboard.