Market order slippage: why you got a worse price
A market order is an instruction to buy or sell an asset immediately at the best available price. When you submit one, you are not guaranteed a specific price - only a filled trade. Slippage is the difference between the price you expected to get and the price you actually got. If that difference is worse than the last quoted price you saw, slippage just happened.
Here is the short version: you got a worse price because the market moved between the moment you looked and the moment your order reached the exchange, or because your order consumed available liquidity at prices further from the best bid or ask than you anticipated. Both are common, and both are inherent to how market orders work.
What a market order actually does
A market order is a demand for immediate execution. It does not care about the "fair" price, the recent average, or your entry strategy. It tells the exchange: "Fill me now, at whatever is available."
When you place a market buy order, the exchange matches it against the lowest-priced sell orders first. If you are buying a liquid asset like BTC/USD, there is usually a tight cluster of sell orders near the current price. Your order eats through those, then moves to the next sell order, and the next, until your entire order is filled.
The weighted average of all those prices is your execution price. If there are not enough sell orders near the quoted price to fill your order completely, the exchange has to reach further up the order book. That reaching is where slippage comes from.
The two main causes of slippage
1. Market Movement (Price Drift)
The price of a cryptocurrency is never static. Between the second you glance at the chart and the millisecond your order hits the matching engine, the price can move. This is not a flaw in the exchange; it is the market doing its job.
On a volatile day, a 0.5% move in the few seconds it takes to click "buy" and have the order execute is not unusual. That move is baked into your fill price. You asked for a market order, and the market obliged - just at a price that had already changed.
2. Liquidity Consumption (Depth Slippage)
This is the bigger and more controllable cause. Every order book has a limited number of orders at each price level. Suppose the current best ask for a token is $10.00, with 100 tokens offered at that price. If you place a market buy for 1,000 tokens, you will not pay $10.00 for all of them.
The exchange fills you:
- 100 tokens at $10.00
- 200 tokens at $10.01
- 300 tokens at $10.03
- 400 tokens at $10.05
Your average fill price is around $10.033, not $10.00. That extra $0.033 per token is slippage caused by your own order size. The larger your order relative to the liquidity at the top of the book, the more price levels you cross, and the more slippage you eat.
Why "I Saw the Price at $X" Doesn't Mean You Get $X
This is the most common source of confusion, especially for newer traders. You look at a chart, see the price, and assume that is the price you will get. It is not. The price you see on a chart is typically the last traded price or the current best bid/ask. Neither one is a promise of execution at that level.
Worse, many exchanges and brokers display a "quote" that updates faster than your screen can render. By the time your order arrives, the best ask may have moved a few cents or a few dollars. This is not malice; it is the natural lag between your interface and the exchange's matching engine.
How much slippage is normal?
There is no universal number. It depends on three things:
- The asset's liquidity: Major pairs like BTC/USDT have deep order books and tight spreads. Slippage on a $1,000 order might be a few basis points. A low-cap altcoin with thin volume can easily have 1-5% slippage on the same size.
- Order size relative to volume: A $50 order in a thin order book will move the price more than a $50 order in a liquid one. As a rule of thumb, the more your order size exceeds the volume available at the top few levels, the more slippage you should expect.
- Market conditions: During high volatility (news events, large dumps, or pumps), the order book thins out. Spreads widen. A price that was firm a second ago can gap, and your market order fills at whatever is left.
How to See Slippage After the Fact
Most exchanges give you an "average fill price" on your trade history. Compare that to the "mark price" or "last traded price" at the moment you submitted the order. The difference is your slippage. Some exchanges also show you a "projected" or "estimated" price before you confirm a market order - though that estimate is itself just a snapshot and can be stale by the time you click confirm.
If you want to quantify it after the trade, you can use the formula:
Slippage % = (Your execution price - Mid-market price at submission) / Mid-market price × 100
A positive result for a buy (negative for a sell) means you paid more than the midpoint. A negative result means you got a marginally better price, which happens when the market moves in your favor between submission and execution - though it is rarely something to rely on.
What you can do about it
You cannot eliminate slippage, but you can reduce it.
-
Use limit orders instead of market orders. A limit order sets a maximum price you are willing to pay (or a minimum you will accept). You will never fill at a worse price. The trade-off is that you might not fill at all if the market runs away from your limit. For a full comparison of the two, see our article on trading order types.
-
Check the order book before you trade. Do not just look at the last price. Look at the depth: how many tokens are offered at the next few price levels. If the first few levels are thin, your order will move the market. Adjust your size accordingly.
-
Split large orders. Instead of placing one massive market order, break it into smaller pieces and place them over time. This reduces the immediate pressure on the order book. It does not protect you from price drift, but it avoids the worst of the depth slippage.
-
Trade during active hours. Liquidity is not constant. Trading when the market is most active (usually when major exchanges see the highest volume) means a thicker order book and tighter spreads. Low-volume hours, like weekends for some pairs, are slippage magnets.
-
Use a "post-only" or "maker" order if your exchange offers it. These are limit orders that add liquidity rather than remove it. They often get a fee discount, and they guarantee you never cross the spread. The catch is that they are not guaranteed to fill.
When slippage is not your fault
Sometimes you do everything right and still get a bad fill. This happens when the market gaps. A gap is a sudden jump in price where the last trade was at one level and the next trade is at a significantly different level. Gaps happen in volatile markets, after major news, or when an exchange has a technical issue. In a gap, there is no order book in between - your market order fills at whatever the new price is, which can be far worse than anything you saw on a chart.
The Bottom Line
Slippage is not a hidden fee. It is a structural feature of how market orders work: you are paying for immediacy, and the price of immediacy is accepting whatever the market offers at that instant. The smaller and more liquid the market, the smaller that cost. The larger and more illiquid the market, the more you pay.
If you care about the exact price you pay, use a limit order. If you care about getting filled at all costs, use a market order and accept that the price you see is not the price you will get. That is not a flaw in the system - that is the system working exactly as designed.
Not financial advice. munchcoin.xyz publishes market data and general information about digital assets. Crypto assets are volatile and you can lose everything you put in. Nothing here is a recommendation to buy, sell or hold, and we make no price predictions.
Prices are sourced from third parties and may be delayed or wrong. Verify anything you intend to act on against a primary source.