What Is Slippage in Crypto? The Gap Between Quoted and Executed Price

Last updated: August 19, 2026

Slippage is the difference between the price you were quoted for a trade and the price you actually got when it executed. It is the small, easily-missed cost that shows up almost every time you exchange crypto to crypto — you see one rate on screen, you press confirm, and the amount that lands in your wallet is slightly different. This page explains what slippage actually is, the two things that cause it, what the tolerance percentage in your swap interface really controls, and why turning that number up is a worse idea than it looks.

Two horizontal price markers on a measurement scale with a gap between them, representing the difference between a quoted price and an executed price

What slippage actually is

When an interface shows you a rate, that rate is a quote based on conditions at that moment. Between the moment you see it and the moment your order actually fills, conditions can change — and the fill happens at whatever the conditions are then, not at the quote. Slippage is that gap between the expected price and the executed price, expressed either as an absolute amount or as a percentage of the trade.

It works in both directions. Negative slippage means you got a worse price than quoted — fewer tokens out for the same amount in. Positive slippage means you got a better one. Interfaces warn you about slippage because the negative case is the one that costs you, but the mechanism itself is neutral: it is simply the market moving between quote and fill.

Why it happens: volatility and liquidity

There are two distinct causes, and they produce the same symptom on your screen.

The first is volatility. The price genuinely moved in the seconds between your quote and your fill. Nothing about your trade caused this — other people were trading, news landed, a large order went through somewhere else. Your order simply arrived at a different moment than the quote described.

The second is liquidity, and this one your own trade does cause. A quote reflects the best available price for a small amount. If your order is large relative to what is actually available at that price, it fills progressively: the best-priced portion first, then the next-best, and so on, until the whole order is filled. The average price you end up paying is worse than the headline quote, and the bigger your order is relative to the available depth, the worse that average gets. This is why the same trade size can execute cleanly on a deep, heavily-traded pair and badly on a thin one. Both causes are covered in more depth in why slippage happens.

A split diagram showing a jagged moving line on one side and a stack of decreasing bars on the other, representing volatility and liquidity depth

What the slippage tolerance setting actually does

Most swap interfaces expose a slippage tolerance control, usually behind a settings or gear icon, often preset to something like 0.5% with options for 1%, 2%, or a custom value. It is easy to assume this setting reduces slippage. It does not. It is a limit, not a lever.

Setting a tolerance of 0.5% tells the system: fill this trade only if the execution price lands within 0.5% of the quote. If the price would fall outside that band, do not fill it — cancel instead. On an on-chain swap, that cancellation is a reverted transaction, which typically still costs you the network fee even though the trade did not happen. So the setting does not make your fill better; it defines how bad a fill you are willing to accept before you would rather have no trade at all. The slippage tolerance setting article goes through how to pick a starting value.

A horizontal band with tick marks and a narrow highlighted zone in the centre, representing an acceptable price range

Why a high tolerance is riskier than it looks

When a trade fails with a slippage error, the obvious fix is to raise the tolerance until it goes through. On a public blockchain this is genuinely dangerous, and it is the single most important thing on this page.

Pending transactions are visible before they are confirmed. An automated bot can see your pending swap, place its own buy immediately before yours to push the price up, let your trade execute at that worsened price, and sell immediately after — pocketing the difference. This is called a sandwich attack, and your slippage tolerance is what determines whether it is worth doing. The tolerance sets a hard ceiling on how far the bot can move the price against you while still leaving your transaction valid. A 0.5% tolerance gives it half a percent of room. A 15% tolerance gives it fifteen. Raising the number to force a trade through does not just accept more market noise — it hands a larger, explicitly-bounded budget to anyone watching.

A worked example, end to end

Numbers make this concrete. Suppose you want to swap into a token quoted at exactly $2.00, and you are spending $1,000. At the quoted rate you would expect 500 tokens.

If the pool is deep and the market is calm, your order barely moves the price and you might receive around 499 tokens — roughly 0.2% of slippage, well inside a 0.5% tolerance, and the trade fills. If the same $1,000 order hits a thin pool, your own buying pressure walks the price up as it fills, and the average price you pay might be $2.06 instead of $2.00: about 485 tokens, roughly 3% of slippage. With a 0.5% tolerance, that trade reverts rather than filling — which is the setting doing exactly its job, protecting you from a fill you said you did not want.

Now the version that matters. If you had responded to that failure by setting tolerance to 15%, the trade would go through — and so would anything a bot could do inside that 15% band. Your protection against a fill at $2.30 is gone, because you told the system $2.30 was acceptable. More scenarios laid out side by side are on the worked examples page, including how splitting a large order changes the arithmetic.

Three horizontal bars of decreasing length side by side, representing progressively worse fill amounts

Practical ways to reduce slippage

  • Trade deeper markets. The same order size that barely registers on a heavily-traded pair can move a thin one noticeably. Depth, not the platform’s branding, determines your fill quality.
  • Split large orders. Several smaller trades each consume less depth than one large one, so each fills closer to the quote — at the cost of paying the network fee more than once.
  • Use limit orders where they are available. A limit order specifies a price rather than accepting whatever the market offers, which removes negative slippage entirely at the cost of possibly not filling at all.
  • Keep tolerance as low as will still execute. Start low, and treat a failed trade as information about the market’s depth rather than as a setting to override.
  • Prefer routing that splits across sources. Aggregators that route one trade across several liquidity sources generally consume less depth in any single pool than sending the whole order to one.

What slippage is not

Slippage is not a fee. Nobody sets it, nobody collects it as a line item, and it does not appear on a fee schedule — it is an outcome of market conditions and order size, separate from any trading fee or network fee you also pay. It is also not something any method eliminates. Every technique above reduces expected slippage or bounds the worst case; none of them produces a guaranteed zero-slippage fill, and any interface or service claiming otherwise is describing something other than what the word means.

A pre-trade checklist

  • Check the quoted price impact, not just the output amount — most interfaces show it, and it tells you whether your own order is the problem.
  • Compare your order size to the available depth. A large order into a thin market is the single biggest predictor of a bad fill.
  • Start with a low tolerance and let a failure tell you something, rather than raising it reflexively.
  • Ask why a trade failed before retrying it with a wider band.
  • Remember the network fee is charged on reverts too on-chain, so repeatedly retrying a doomed trade has a real cost.
Five small square checkbox icons stacked vertically, representing a pre-trade checklist

Frequently asked questions

Is slippage the same thing as a trading fee?

No. A fee is a set charge collected by a platform or network. Slippage is an outcome of market movement and order size u2014 nobody sets it or collects it, and it does not appear on a fee schedule.

Does raising slippage tolerance reduce slippage?

No, it does the opposite. Tolerance is a ceiling on how bad a fill you will accept, not a lever that improves the price. Raising it permits worse fills rather than preventing them.

Can slippage ever work in my favour?

Yes. Positive slippage means the price moved in your favour between quote and fill, so you receive more than quoted. Interfaces warn about the negative case because that is the one that costs you.

Why did my swap fail with a slippage error?

The execution price would have fallen outside your tolerance band, so the trade cancelled instead of filling. That is the setting working as intended, not a malfunction.

What slippage tolerance should I start with?

Common interface defaults sit around 0.5% for liquid pairs. The useful rule is to start low and treat a failed trade as information about market depth rather than a number to override.

Why is a high slippage tolerance dangerous on-chain?

Pending transactions are publicly visible. A wide tolerance defines exactly how far a bot can move the price against you while your trade still executes, effectively setting its budget.

Does slippage affect large and small trades equally?

No. Liquidity-driven slippage scales with your order size relative to available depth, so a large order into a thin market is affected far more than a small one into a deep market.

Can slippage be eliminated completely?

No. Deeper markets, smaller orders, limit orders, and low tolerance settings all reduce expected slippage or bound the worst case, but none of them guarantees a zero-slippage fill.