Crypto Slippage Explained: Why Your Fill Price Moved and How to Pay Less of It
Crypto Slippage Explained: Why Your Fill Price Moved and How to Pay Less of It
Analysis by CryptosEyes Research | Updated October 8, 2026
Short Answer
Slippage is the gap between the price you saw when you placed a trade and the average price you actually got. On a centralized exchange it happens because your order eats through several price levels in the order book. On a decentralized exchange it happens because an automated market maker reprices the pool as your trade lands, and because the market can move while your transaction waits to be confirmed. Slippage is not a fee and it is not charged by anyone. It is the cost of demanding immediate execution in a market with finite depth at the top of the book. Small trades in deep markets pay almost none of it. Large trades in thin markets can pay several percent, and during forced selling the same mechanism is what turns a stop order into a fill far below the stop price.
Four Costs That Get Confused With Each Other
Most trade confirmations bundle four different costs into one disappointing number. Separate them and each one becomes manageable.
| Cost | What it is | Who sets it | Can you control it? |
|---|---|---|---|
| Spread | The gap between the best bid and the best ask before you trade | Other traders posting limit orders | Only by choosing a deeper market |
| Slippage | The difference between the quoted or expected price and your average fill price | Book depth, pool size, volatility, and your order size | Yes: size, order type, timing, tolerance settings |
| Price impact | The portion of slippage your own trade causes by consuming depth or moving the pool | Your trade size relative to available depth | Yes: split orders, trade smaller relative to depth |
| Fees | Commissions or pool fees charged on the trade | The exchange or protocol | Partly: maker vs taker orders, fee tiers |
Binance Academy draws the first distinction the same way: the spread is the standing gap between the highest bid and the lowest ask, while slippage is the difference between the expected price of a trade and the price it actually executes at. Price impact is best treated as a component of slippage, the part caused by your own order rather than by the market moving while you waited. Fees sit outside all three: a trade can have zero slippage and still cost you a pool fee, and a trade can slip badly on a venue that charges no commission at all.
This separation matters because the fixes differ. A wide spread is a market selection problem. Price impact is a sizing problem. Slippage from market movement is a timing and settings problem. Fees are a venue and order-type problem. Lumping them together produces one vague complaint; separating them produces a checklist.
Slippage on an Order Book: Walking the Asks
A central limit order book stacks buy orders (bids) below the market and sell orders (asks) above it. A market buy does not execute at one price. It consumes the cheapest ask first, then the next, then the next, until the order is filled. Your fill price is the average across every level you consumed.
All figures in this section are invented for illustration. The book below does not exist.
Suppose the asks for a token quoted in dollars look like this, and you place a market buy for 50 units:
| Ask level | Price | Units available | Units you take | Cost of this slice |
|---|---|---|---|---|
| 1 | $100.00 | 10 | 10 | $1,000.00 |
| 2 | $100.05 | 25 | 25 | $2,501.25 |
| 3 | $100.12 | 40 | 15 | $1,501.80 |
| Total | 50 | $5,003.05 |
Your average fill is $5,003.05 / 50 = $100.061. Against the $100.00 price on the screen when you clicked, slippage is ($100.061 - $100.00) / $100.00 = 0.061%. The same order for 500 units would keep walking: it would exhaust the visible book, trade into levels nobody had quoted yet when you clicked, and fill at a far worse average. Nothing malfunctioned. The book simply had 75 units of depth near the price, and you asked for more than that.
Three facts follow from the mechanics:
Slippage on an AMM: The Pool Reprices You
Decentralized exchanges replace the order book with a liquidity pool and a formula. Uniswap's developer documentation describes the classic design: the pool holds reserves of two tokens and prices trades with a constant product formula, x * y = k, where x and y are the reserve balances and k must stay constant across a trade. The spot price is the ratio of the reserves. When you trade, you change the reserves, so you change the price for the next unit inside your own trade. Larger trades relative to pool depth move the price more. Uniswap's docs name that effect price impact.
Worked example, again with invented figures. A pool holds 100 ETH and 300,000 USDC, so the spot price is 300,000 / 100 = 3,000 USDC per ETH and k = 100 x 300,000 = 30,000,000. You swap USDC for ETH. Ignoring the pool fee for one line of math, the pool must keep the product constant after your trade:
| Your USDC in (hypothetical) | ETH out, no fee | Your average price | Slippage vs 3,000 spot |
|---|---|---|---|
| 300 | 0.0999 | 3,003.00 | 0.10% |
| 3,000 | 0.9901 | 3,030.00 | 1.00% |
| 30,000 | 9.0909 | 3,300.00 | 10.00% |
| 150,000 | 33.3333 | 4,500.00 | 50.00% |
Check the third row by hand: after adding 30,000 USDC the pool holds 330,000 USDC, so it must hold 30,000,000 / 330,000 = 90.9091 ETH. You receive 100 - 90.9091 = 9.0909 ETH, and 30,000 / 9.0909 = 3,300 USDC per ETH. The curve never refuses the trade and never runs dry; it just charges more for each successive unit. That is why a swap quote worsens smoothly as you type a bigger number, instead of failing the way an empty order book does.
Now add the fee. Uniswap pools charge a swap fee set by the pool and protocol version, paid to liquidity providers; the classic figure is 0.3% of the input. With a 0.3% fee, only 29,910 of your 30,000 USDC enters the pricing math, you receive about 9.066 ETH instead of 9.091, and your average price rises to about 3,309. The fee is small next to the 10% price impact at this trade size, which is the general pattern: in thin pools, impact dwarfs fees; in deep pools, fees are most of the cost because impact rounds to zero.
Concentrated liquidity, introduced in Uniswap v3 and carried into v4, applies the same formula inside price ranges chosen by liquidity providers. Depth is deep near the current price where providers cluster and thin or absent outside active ranges. The practical consequence for slippage is simple: a pool can look large by total value and still slip hard on a trade that pushes price through a thin range boundary. Total pool size is a weaker signal than depth around the current price.
The Second Cause: The Market Moves While You Wait
Order book slippage and curve impact both assume the world holds still during your trade. On-chain, it does not. A swap is quoted at one moment and confirmed in a block later. Prices on other venues move in between, arbitrageurs update the pool, and your transaction executes against a state that no longer matches your quote.
Uniswap's own slippage explainer lists the causes in this order: markets moving fast between submission and on-chain confirmation, thin liquidity that forces the trade to slide along the curve, large trade size, and negative MEV, where searchers front-run or sandwich a large swap by inserting their own transactions around it to profit from the price movement the trade causes. A sandwich works like this: a bot sees a large pending buy in the public mempool, buys first to push the pool price up, lets the victim's trade execute at the inflated price, then sells into the strength the victim created. The victim's slippage is the bot's revenue, minus costs. The defense starts with the tolerance setting, covered next, because a sandwich can only extract up to the maximum price movement the victim agreed to accept.
Centralized venues have a milder version of the same problem. Your market order reaches the matching engine fast, but during a violent move the book itself is being repriced thousands of times per second. Liquidation bursts are the extreme case: forced market sells consume the bid side mechanically, which is part of why the cascade dynamics in <a href="/insights/crypto-liquidations-explained-2026">our liquidations guide</a> produce fills so far from the prices traders expected when they set their stops.
Positive slippage exists too. If the market moves in your favor between order placement and execution, a buy can fill below the quoted price or a sell above it. Binance Academy notes the same point: slippage does not always work against the trader. In practice, positive slippage shows up most on limit orders resting in the book during fast moves and on market orders placed just before a favorable jump, and it is rarer than the negative kind for large market orders in thin books, where the mechanics of walking the book or sliding along the curve are stacked against size.
Slippage Tolerance: The One Setting That Defines Your Worst Case
On a DEX swap, the tolerance you set is the maximum percentage the executed price may move from the quote before the transaction reverts. Uniswap's explainer describes the trade-off directly: lower slippage settings keep prices tight but raise the risk of a failed swap, while higher settings make settlement more likely at a worse price, and the Uniswap Web App typically offers a tolerance in the 0.1% to 5% range. Coinbase Wallet's DEX help page states the same contract from the wallet side: swaps execute at a price within the slippage specified on the confirmation page, or the transaction is canceled and funds are returned.
Translate the setting into money before you touch it. Suppose a quote promises 9.0909 ETH for 30,000 USDC, as in the pool example above:
| Tolerance you set (hypothetical quote) | Minimum ETH you accept | Worst-case average price | What you are really saying |
|---|---|---|---|
| 0.1% | 9.0818 | 3,303.30 | Revert on almost any movement |
| 0.5% | 9.0455 | 3,316.61 | Normal movement is fine, extraction is not |
| 5% | 8.6364 | 3,473.68 | Fill me at nearly any price |
| 50% | 4.5455 | 6,600.00 | No price protection at all |
Two failure modes bracket the setting:
A separate trap sits inside fee-on-transfer tokens: some tokens deduct a percentage on every transfer, so the amount arriving at the pool is smaller than the amount sent, and quotes can fail until tolerance covers the transfer tax. Raising tolerance fixes the failure and widens the extraction window at the same time. There is no setting that removes the token's tax; the tolerance is only deciding how much additional price movement you will also accept.
On centralized exchanges there is usually no tolerance dial on a plain market order. The equivalent controls are the order type itself (limit and stop-limit orders cap your price), price protection features some venues offer on market orders, and splitting the order manually. The setting exists on DEX interfaces because the delay between quote and block confirmation is part of the venue's design.
Why Stops and Liquidations Slip the Most
Slippage is worst exactly when traders can least afford it, and the reason is mechanical. A stop order that triggers becomes, on most venues, a market order. If the stop triggers because price is falling fast, the book below is thin precisely because everyone else is selling or pulling bids. The order walks down through whatever bids remain. The stop price was a trigger, never a guaranteed fill price, and the gap between the two during a cascade is slippage in its purest form.
Positions opened with borrowed funds add a second machine. When an exchange liquidates a position, it sells or buys with marketable orders into the same stressed book, competing with every triggered stop at once. The funding and positioning backdrop matters here: crowded, one-sided positioning of the kind tracked by <a href="/insights/crypto-funding-rates-explained-2026">funding rates</a> and <a href="/insights/crypto-open-interest-explained-2026">open interest</a> means many positions share nearby liquidation and stop levels, so one move can trigger a queue of forced market orders into a book that is already moving. Position sizing and margin mode decide how much of that queue is yours; <a href="/insights/cross-vs-isolated-margin-explained-2026">our cross vs isolated margin guide</a> covers how the margin choice changes the blast radius when a liquidation does happen.
None of this means stops are useless. It means the number to plan around is not the stop price but the realistic fill during stress: the stop price minus the slippage a thin, falling book typically produces on your size. Traders who size positions off the trigger price alone have modeled a fill that a stressed book rarely delivers.
Measure Your Own Slippage After the Fact
You cannot manage a cost you never measure. Every fill gives you the two numbers needed:
Slippage % = (average fill price - reference price) / reference price x 100, signed so that worse is positive cost. For a buy, a fill above the reference is a cost; for a sell, a fill below it is.
The reference price is the decision price: the mid-price or best quote at the moment you chose to trade, not the last price printed minutes later. Using a later reference rewrites history and makes every execution look fine. Worked example with invented figures: you decide to buy at a displayed ask of $100.00, your fills average $100.061 as in the order book table, and slippage is +0.061%. The pool fee, if any, is separate; add it afterward to get your all-in execution cost against the decision price, a measure traders call implementation shortfall.
Do this for a month of trades and patterns appear that no single painful fill reveals: which pairs slip, which hours slip, which order sizes cross the depth threshold on your usual venues. The fix for a pair that slips at your size is usually boring (trade smaller, use limits, move venue) and obvious once the measurements exist.
The Reduction Playbook
None of these tactics remove slippage. Together they cut it to the part you cannot avoid: the market moving on its own while your trade executes.
Split large orders. Five smaller market orders let the book refill between executions, as arbitrageurs and market makers requote levels you consumed. On an AMM the same logic applies across time: the pool price recovers toward the wider market price as arbitrageurs trade against it, so tranches executed minutes apart pay less impact than one block-sized swap. The cost of splitting is exposure during the execution window; price can run away from a half-finished position. Sizing the tranche is a judgment call between impact and drift.
Use limit orders when price matters more than certainty. A limit order is a promise to the book: it executes at your price or better, or not at all. Binance Academy lists limit orders among its practical slippage reducers for exactly this reason. The risks move rather than vanish: the order may never fill, it may fill only partially, and a resting limit order in a fast market can be picked off by faster traders when news moves the fair price through your level. What a limit order cannot do is fill worse than its limit.
Trade where the depth is. The same token trades on many venues and pools with wildly different depth. Before a large trade, compare depth near the price, not headline volume: volume can be high while the book near the touch is thin. On AMMs, prefer the pool with depth concentrated around the current price, and check the quote at your actual size, since the displayed spot price describes a trade of nearly zero.
Set tolerance from the pair, not from habit. Liquid major pairs routinely execute inside 0.1% to 0.5%. Thin long-tail pools may need more, and the need itself is information: a token that requires a 5% tolerance to trade at all is telling you its exit door is narrow. Set the number to cover ordinary movement plus the curve impact at your size, and no more. On volatile news events, expect reverts and retry rather than pre-widening the setting.
Avoid the stressed minutes when you can. Slippage clusters around major data releases, liquidation cascades, scheduled token releases, and listing minutes, when books thin and volatility spikes. A trade that can wait one hour usually should. A trade that cannot wait should be sized for the stressed book, with the stop-fill logic from the section above, not for the calm book on the screen at noon.
Read the quote at your size, including the minimum received. Every DEX interface shows an expected output, a minimum received after tolerance, or both. The minimum received is the number your wallet is actually committing to. If that number would embarrass you in a fill report, the trade is too big for the pool or the tolerance is too wide. Fix one of them before signing.
Consider routing and execution features. Swap aggregators split a trade across pools and venues, buying depth wherever it is cheapest; the constant product math above is why a split route beats a single thin pool. Some interfaces offer MEV protection by routing transactions through private channels rather than the public mempool, which removes the sandwich leg of slippage; Binance Academy's 2026 update flags checking for exactly this before setting a high tolerance.
The Pre-Trade Checklist
Run these five checks before any trade large enough to matter. Each takes under a minute.
Six Slippage Traps
1. The spot price lie. The price on the chart is the price of the last small trade. Your trade is bigger, so your price is worse. Every slippage surprise starts with treating a marginal price as an average price.
2. The tolerance panic raise. A swap reverts twice in a volatile minute, so the tolerance goes from 0.5% to 10% on the third try. That third transaction is the one a sandwich bot can extract from. Reverts cost a network fee; a 10% extraction costs 10%.
3. The thin-pool exit. Buying a token in a shallow pool is easy because small buys barely move it. Selling a real position out of the same pool is the expensive direction. The exit cost is set when you enter, by the pool's depth, not when you leave.
4. The stop that was a market order. A stop set 5% below the market during a cascade can fill 15% below it, because the triggered order buys the same certainty of execution as any market order, in the worst book of the day.
5. Confusing fees with slippage. A fill 1% below the screen price with a 0.3% pool fee is 0.7% of execution cost to investigate, not 1%. Blaming the venue's fee schedule for curve impact leaves the real cause (size versus depth) unfixed.
6. Averaging into the same thin book. Adding to a position through repeated market orders in one illiquid pair pays the walk-the-book cost on every tranche. If the pair cannot absorb your full size once, it cannot absorb it five times in a minute either; the book needs time or a different venue.
Frequently Asked Questions
What is slippage in crypto, in one sentence?
Slippage is the percentage difference between the price you expected when you placed a trade and the average price you actually received, caused by consuming book or pool depth, by the market moving before execution, or both.
Is slippage a fee charged by the exchange?
No. Slippage is not charged by anyone and appears on no fee schedule. It is an execution outcome: your order traded at the prices available when it arrived. Fees are separate and knowable in advance. A trade can have high fees and no slippage, or no fees and severe slippage.
What slippage tolerance should I use?
Set it to cover normal price movement plus the curve impact at your trade size, and no wider. Liquid major pairs often execute inside 0.1% to 0.5%; thin pools need more, and needing far more is a warning about the pair itself. Always read the minimum received amount the tolerance produces, because that is the worst fill you are accepting.
Why did my swap fail even though the price barely moved?
On-chain quotes move block by block. If the executed price crossed your tolerance at the moment your transaction landed, the transaction reverts to protect you, and the network fee is still spent. Fee-on-transfer tokens can also fail this way because the pool receives less than the quoted input. Widen tolerance slightly or retry in a calmer minute rather than jumping to a very wide setting.
Can slippage be positive?
Yes. If the market moves in your favor between placement and execution, a buy fills below the quote or a sell fills above it. Binance Academy documents the same possibility. It is less common for large market orders in thin markets, where the depth mechanics work against size regardless of direction.
Why is slippage worse on small tokens?
Depth. A small token's order book or pool holds little value near the current price, so a modest trade consumes a large share of it, walking the book or sliding along the curve. The token's market cap matters less than the depth at your size; the supply arithmetic behind that is covered in <a href="/insights/crypto-market-cap-vs-fdv-explained-2026">our market cap vs FDV guide</a>.
Sources
Pool depths, quotes, and tolerance defaults change with market conditions and interface versions. The worked figures in this guide are hypothetical and labeled as such; the mechanics are the venue formulas and order types as documented above in October 2026. Check the live quote, depth, and minimum received before any trade.
CryptosEyes publishes general educational research, not investment, legal, or tax advice. Slippage is an execution cost, not a predictable one, and no tolerance setting, order type, or routing choice removes the risk of loss in crypto markets, including total loss. Size every trade for the book or pool you are actually trading into.
Source & Review Basis
This article is reviewed against the source types below. Source links are provided to help readers verify primary documents, market context, and methodology independently.
How treasury data, market metrics, and corrections are reviewed.
Primary source for US public-company filings and treasury disclosures.