When the same token has pools on multiple chains, each pool prices independently through its own AMM curve. Prices drift, sometimes meaningfully — and the gap is the trade. Same-chain DEX-DEX windows exist too but get arbed by aggregators in milliseconds, so they're not realistic for a hand-trading user. Cross-chain is the user-actionable space: real spreads, minutes of life, bridge required to capture. This guide covers what cross-chain DEX-to-DEX arbitrage is, why the spreads exist, how to execute end-to-end without bleeding to slippage or bridge friction, and where Finder fits in.
The same token lives on many blockchains at once — Ethereum, Arbitrum, Base, Polygon, BSC, Solana. Liquidity in each chain is its own market, and the price in an Arbitrum pool can drift noticeably from the price in a Base pool at the same second. Cross-chain DEX arbitrage is earning on that gap: buy cheap on one chain, bridge the tokens to another, sell higher.
CEX-DEX sets a centralised order book against a single on-chain pool. Cross-chain DEX-to-DEX is both legs on-chain, on different chains, with a bridge in the middle. No exchange custody, no withdrawal queue — but you eat slippage on both sides, pay gas on two chains, and pay a bridge.
DEX-Dumps targets rare flashcrash windows — from typical 20–40% slumps to catastrophic 99%+ dumps after rug pulls, hacks, or liquidity events. Cross-chain DEX-to-DEX is the steady everyday flow: spreads on assets fragmented across chains, with bridge friction as the speed limit.
DEX pools don't have order books. They price algorithmically using a constant-product market maker:
Where x and y are the two tokens in the pool, and k is a constant the pool tries to preserve. To buy y, you deposit x; the pool adjusts y downward to keep k unchanged. Cross-chain DEX-DEX means you do this twice — once on each side of the trade, on two independent chains, with a bridge between them.
The curve is nearly flat near the current ratio, so small trades are almost mid-priced. Bigger trades walk the curve and pay progressively worse rates.
Concrete example: a pool holds 100 ETH and 100,000 USDC, so 1 ETH = 1,000 USDC. Buying 1 ETH costs about 1,010 USDC — minimal slippage. Buying 10 ETH at once costs about 11,111 USDC — an effective rate of 1,111 per ETH, 11% slippage in a single trade. Same pool, same starting price, completely different fill.
Not all bridges are equal. Their mechanics directly affect speed, fees, and — most importantly — how much you have to trust the bridge with your money.
1. Lock & Mint (wrapped tokens). The bridge locks your token in the source chain and mints a wrapped version in the target chain. Portal (formerly the Wormhole token bridge) works this way. The catch: the wrapped token's value rests entirely on the bridge's security — and bridges built on this model have historically been the most-targeted in DeFi hacks.
2. Liquidity Pool bridges. The bridge holds liquidity pools in both chains: you deposit into the source pool and receive from the destination pool. Across, Hop, and Stargate work like this. Stargate runs on LayerZero and uses unified liquidity pools to transfer native assets without wrapping, with a 0.06% protocol fee. Fast and cheap, but at large sizes you pay slippage against the pool's size.
3. Native / CCTP (burn & mint). The most trust-minimal model: the token is burnt in the source chain and re-minted as native on the target chain, no wrapping involved. The reference implementation is Circle's CCTP for USDC. No wrapped-token risk, but finality is longer — a transfer can take 13–19 minutes.
The same way you don't pick a single DEX manually, you don't pick a single bridge. Bridge aggregators compare dozens of routes and choose the optimal one for cost, speed, and risk. LI.FI (front-end: Jumper) aggregates dozens of bridges and DEXes into one router. Bungee (rebranded from Socket in early 2026) is embedded in Coinbase Wallet and MetaMask Bridge. deBridge, Squid, and Rango work the same category. They'll bundle swap + bridge + swap into one operation and quote the real final amount on the destination chain — exactly the number you need to compute profit.
The algorithm below is the same whether you're using a scanner or hunting spreads manually. The only difference is throughput — manual you'll catch maybe a few opportunities per day; with a scanner, you'll see dozens but still execute on the same playbook.
Through a scanner (Finder pings you in Telegram with the live pair) or manually via DexScreener / aggregator interfaces. Filter ruthlessly: ignore anything below your minimum acceptable gross spread, anything where pool depth doesn't comfortably exceed your trade size on both sides, or any token whose age and contract history you can't verify in a minute.
Same ticker on two chains doesn't guarantee same token. Open each pool's contract address and confirm: (a) the project is the same on both deployments, (b) one isn't a fake clone of the other, (c) the wrapped variant matches the native variant. Five minutes here saves a permanent loss.
Open LI.FI/Jumper, Bungee, deBridge, Squid, or Rango and quote your actual trade size — not a witness quote. The aggregator will pick the optimal bridge, sometimes bundling swap + bridge + swap into one operation, and show the real final amount on the destination plus finality time. Both numbers are what you need to compute profit honestly.
Buy the token on the DEX in chain A (typically via 1inch / Matcha / Jupiter or directly through the aggregator's swap step). Make sure your wallet has the source chain's native gas token. Approve tightly, never infinite.
Run the transfer through the chosen bridge or the aggregator. Wait for finality before doing anything else — don't start the sell leg until tokens actually land on the destination. Bridging is your highest-risk window: this is where you're most exposed.
Sell on the destination DEX. You need a native gas token on the destination chain in your wallet already — without it you can't pay for the swap. Submit with tight slippage tolerance (you've already accepted the upstream fills, no second surprise needed).
If the token has futures, opening a short on a CEX while the bridge transfer is in flight neutralises the price-move risk of the transit window. The funding cost over a 5-30 minute hedge is negligible compared to potential adverse moves.
Send the realised capital back via reverse bridge, or use it for the next spread from the destination chain. Log everything — total out, total in, every fee and gas. Without a per-trade ledger you'll convince yourself you're profitable when you're actually breakeven.
Bridges concentrate enormous liquidity and have been the targets of the largest DeFi attacks: Ronin, Wormhole, and Nomad each lost hundreds of millions in single hacks; the Multichain bridge effectively collapsed in 2023, freezing user funds. Don't hold capital in a bridge longer than needed. Prefer bridges with minimal trust assumptions and a long incident-free track record.
While the transfer is in flight, you don't control the position — and the price on the destination chain keeps moving. The longer the finality, the higher the risk the spread closes before you can sell. Hedging with a futures short for the duration of the bridge (if the token has perp markets) is the cleanest way to neutralise this.
Network congestion or a bridge issue can stall a transfer for tens of minutes — sometimes longer. Factor this into your sizing: don't put in capital you can't afford to have locked for an hour. And never run your wallet down to its last cents of gas on either chain — recovery transactions need gas too.
On a new chain, the same ticker can hide a different contract — a fake clone created to bait arbitrageurs. Always verify the contract address on both chains via the project's official sources, and run a quick contract scan (GoPlus, honeypot.is) before trading. A 'honeypot' token can be bought but never sold.
An eye-catching spread on a fresh chain often means a tiny pool. Walking the AMM curve on entry and exit at any meaningful size will eat more than the spread offers. Check pool TVL on DefiLlama before sizing; if the pool can't comfortably absorb your trade with margin, skip.
Walk-through of a realistic cross-chain trade: an 8% gross spread on the same token between an Arbitrum pool and a Base pool, executed for $2,000 USDC. Numbers below are typical for a fast bridge with short finality. Apply the same arithmetic to every alert you consider — anything where the breakdown doesn't land comfortably positive is a pass.
The two biggest leaks are the bridge cost and price movement during finality. If finality were 30 minutes instead of a few, the price-movement line alone could eat the entire profit on a volatile asset.
That's why bridge choice matters. A fast LP-bridge (Across, Stargate) on a low-volatility token leaves you with the headline math intact. A slow Lock&Mint bridge on a meme that's just had a news catalyst can flip the trade negative in transit.
Honest framing: cross-chain DEX-to-DEX is an opportunistic strategy, not a constant income stream. We can't quote you alerts-per-day or monthly P&L — both vary wildly with market conditions, your trade size, the assets you focus on, how fast you execute, and how much time you have to watch.
Spreads widen when liquidity fragments — a fresh chain listing, a hyped memecoin spilling onto new chains, a volatile market session. Quiet markets produce few opportunities. High-volatility weeks produce many. The same Finder feed will deliver wildly different numbers to two traders depending on their filters, their reaction time, and their willingness to take bridge risk.
The mechanics in the cost-breakdown above are real: every trade pays slippage on both sides, pool fees on both swaps, gas on both chains, and a bridge cost. Anything below ~1.5% gross spread is structurally underwater for typical trade sizes. Anything below pool depth of comfortable multiples of your trade size will eat itself in slippage. These are not opinions, they're math.
Trade size has to match pool depth. A trade that moves either pool more than a percent or two is moving the market against you faster than the spread can hold. Larger capital doesn't automatically mean larger profit per trade — pool size caps how much you can put through any given alert.
Manually tracking every DEX pool on every chain for spread opportunities isn't humanly possible — there are hundreds of thousands of pools across the chains we support, with prices updating continuously. The Finder scanner runs the comparison in the background, walks both AMM curves at $1k notional on every candidate, and pings your Telegram only when the net spread is genuinely actionable.
What lands in your channel — and what the web dashboard looks like — is below.
Every DEX-to-DEX alert follows the same shape Finder uses across all signal types. A header line carries the token, the top spread%, a magnitude emoji, the profit at the default notional, and the chain route (BSC → BASE, or just BSC when both pools sit on the same chain). Then two lines — Buy and Sell — name the exchanges with deeplinks and their prices, plus inline pool liquidity and deposit/withdraw status flags.
Below the header, the DEX table ranks every pool found for this token by spread, with the anchor pool (your sell side) pinned at the bottom showing 0.00%. Each row carries Dif, Profit at the default size, Price, the deposit + withdraw flags, and a clickable Link to the pool. At the end — a Networks block listing the contract address on every chain we resolved, so you can verify the canonical asset before swapping.
TOKEN +4.00% ⚡(+$40 on $1000) | BSC → BASE
0x...<contract>0x...<contract>
All pools firehose — every pool/pool combination sorted by spread. Filter by chain, by min liquidity, by min token age (filter out fresh launches that haven't priced).
Best per asset collapses to one row per canonical asset (highest-spread pool pair). Useful when you've sized up and want the cleanest pick. Alternative pools hide in an expand-row so you can compare without losing the headline view.
EVM chains and the major non-EVM ecosystems. Each chain's DEX pools are tracked independently, and same-asset entities across chains are collapsed by canonical-entity matching.
All arbitrage types are included while we polish — no tiers, no card, no quota.
All arbitrage types, every exchange, every alert tier — no plans, no card, no quota. We'll announce pricing before launch; early users keep grandfathered terms.
Pool prices drift constantly. We watch them all so you don't have to — and only ping when a spread is big enough to actually trade. Free during beta, no card.
Get alerts