What Is Slippage in Trading?
Slippage is the difference between the price you asked for and the price your order actually filled at. It is usually small, occasionally large, and — unlike the spread — invisible until after the trade is done. What follows explains where slippage comes from, why it can work for you as well as against you, how market, limit and stop orders behave when prices move fast, and how to measure slippage from your own MetaTrader trade history.
Key takeaways
- Slippage is the difference between the requested price and the executed price. It can be negative (a worse fill) or positive (a better one).
- Its main causes are price movement while the order is in transit, thin liquidity, volatility spikes and news events.
- Limit orders fill at their price or better; stop orders convert to market orders when triggered and can fill far beyond their level in a gap.
- Slippage clusters around news releases and session opens, when liquidity providers widen or withdraw their quotes.
- Backtests typically fill orders at exact recorded prices, so live results often carry execution costs the simulation never showed.
- Comparing order levels with actual fill prices in your own trade history shows where your slippage really concentrates.
The price you click is a request, not a guarantee
When you press Buy in MetaTrader, nothing is executed on your screen. The platform sends a request to the broker’s server, the request travels, waits its turn, and is then matched against whatever prices are available at that moment. If the market moved while all of that happened, the fill differs from the quote you clicked. That difference is slippage.
Requested price
You click Buy EUR/USD at 1.08500 — the quote on screen when the order is sent.
Transit & queue
The order travels to the broker server and waits to be processed — tens of milliseconds or more.
Matching
The server fills the order at the best price available when it arrives.
Executed price
Fill at 1.08520 — 2 pips of slippage against you.
Slippage = executed price − requested price
- requested price
- the quote shown when the order was sent
- executed price
- the price the order actually filled at
Whether a given difference helps or hurts depends on direction: for a buy, a higher fill is worse; for a sell, a lower one is. Trade reports therefore usually describe slippage as adverse or favourable rather than by sign.
Negative and positive slippage
Slippage is not a fee, and it is not always against you. It is the market moving during the gap between request and fill — and the market can move either way.
Negative slippage (adverse)
The fill is worse than requested. A buy sent at 1.08500 that fills at 1.08530 slipped 3 pips against you — on one standard lot of EUR/USD, $30 of extra cost on entry.
Positive slippage (price improvement)
The fill is better than requested. The same buy filling at 1.08490 is 1 pip in your favour — $10 on one lot. How improvement is passed on depends on the broker's execution model.
In quiet conditions, market-order slippage tends to be small and roughly two-sided. In fast markets it skews adverse, because your order arrives together with everyone else’s reaction to the same move — and the prices that would have improved your fill are taken first.
Where slippage comes from
Every cause of slippage reduces to one thing: the best available price changed between the moment you decided and the moment the server matched your order.
Slippage
Latency
The market keeps ticking while your order is in transit — even 100 ms is enough during a fast move.
Thin liquidity
Few resting orders near the current price, so a fill has to reach deeper, worse price levels.
Volatility
Larger jumps between consecutive ticks mean the best price moves further during the same delay.
News events
Quotes are pulled or widened seconds before a release, then reprice violently after it.
Order size
Bigger orders consume more of the order book and may fill across several levels at a worse average.
Price gaps
When price jumps over levels — weekend opens, surprise headlines — no fill exists at the skipped prices.
Market, limit and stop orders behave differently
The order type you use decides which kind of slippage you are exposed to. None of the three avoids the trade-off entirely; they just place it differently.
| Order type | How it fills | Slippage exposure |
|---|---|---|
| Market order | At the best price available when it reaches the server. | Both directions — usually small in calm markets, adverse in fast ones. |
| Limit order | Only at the limit price or better. | No adverse price slippage; the risk shifts to not being filled at all. |
| Stop order (incl. stop loss) | Becomes a market order once the stop level trades. | Can fill far beyond the level when price gaps — the classic source of large slippage. |
The stop order deserves the most attention, because its name suggests a guarantee it does not provide. The stop level is a trigger: when price reaches it, a market order is sent — and that market order fills wherever the market actually is.
A sell stop gapping through its level
- Position: long 1.00 lot EUR/USD, stop loss set at 1.08000.
- A surprise headline hits. The last quote above the level is 1.08010; the next quote is 1.07700.
- The stop triggers on the first price at or below 1.08000 — but the best available price is now 1.07700.
- Fill: 1.07700 → 30 pips beyond the stop level.
- Extra loss vs the intended exit: 30 pips × $10 per pip = $300 on top of the planned risk.
Why slippage clusters around news
Scheduled releases concentrate every cause of slippage into a few seconds. Liquidity providers widen their quotes or withdraw them just before the print, so the book is thinnest exactly when the most orders arrive. The first prices after the number are discrete jumps rather than a smooth sequence of ticks, so the “next available price” for a market or stop order can be several pips away.
The same mechanics widen the spread at the same moment, so a trade around a release often pays twice: a wider spread on entry and slippage on the fill. This is why two accounts running the same strategy can show very different costs depending on which hours and events the strategy trades through.
Why backtests usually understate slippage
A strategy tester fills orders at the exact price recorded in its historical data. That quietly assumes the recorded price was available with zero latency, in your full size, with no queue — assumptions that are least true precisely where many strategies concentrate their trades: breakouts, stop entries and news moves.
The effect scales with how small the per-trade edge is. A scalping system that averages 1.5 pips per trade in a simulation loses half of that edge to 0.75 pips of average adverse slippage — a margin the backtest never modelled. The broader failure modes are covered in why backtests can be misleading; slippage is one of the most common.
Measuring slippage in your own trade history
Published slippage figures describe someone else’s account. Your own executed trades are the only sample that reflects your broker, account type, latency and order sizes — and MetaTrader history contains most of what you need.
- For stop and pending orders, compare the order’s set level with the actual fill price recorded in history. The difference is your slippage on that trade.
- For market orders, compare the quote at send time with the fill — harder by hand, but EA logs and journal entries usually record both.
- Group the results by symbol, hour of day and proximity to scheduled news to see where the cost concentrates.
A simple slippage audit
- Sample: last 200 stop-loss exits on EUR/USD.
- Average fill vs stop level: −0.4 pips (adverse). Median: −0.1 pips.
- Worst single fill: −12 pips, during a rate decision.
- Exits in the hour around scheduled news (20 trades): −2.8 pips average.
- All other exits (180 trades): −0.1 pips average.
- Reading: the slippage cost is concentrated in news-hour exits, not spread evenly across the account.
One bad fill says little; a consistent skew per symbol or per hour says a lot. If you run EAs, the same comparison between live fills and simulated ones shows how much of a backtested edge survives real execution — the free MetaTrader Backtest Analyzer reads the tester’s own report as a starting point for that comparison.
Frequently asked
Is slippage always bad?
No. Slippage measures any difference between the requested and executed price, in either direction. In calm markets, market-order slippage is often small and roughly two-sided, including price improvement. It skews adverse in fast markets, because your order competes with everyone reacting to the same move.
Why did my stop loss fill below its level?
A stop order is a trigger, not a price guarantee. Once the stop level trades, the order becomes a market order and fills at the best price then available. If price gaps over the level — after news or a weekend — the first available price can be many pips beyond it.
Do limit orders eliminate slippage?
They eliminate adverse price slippage: a limit order fills at its price or better, never worse. The cost moves elsewhere — in a fast move the limit may not fill at all, so you trade price certainty for fill certainty.
Do MetaTrader backtests include slippage?
Not realistically. Strategy testers usually fill orders at the exact recorded historical price, with no latency, no queue and unlimited size at that price. Live fills include slippage and spread widening, which matters most for strategies with small per-trade targets or entries around news.
Related guides
What Is Spread in Forex?
The bid/ask gap as a per-trade cost: fixed vs variable spreads, why they widen, and what frequent trading adds up to.
How Broker Choice Affects Trade Execution
Dealing desk vs STP/ECN mechanics, where execution differences hide, and what your own trade history can measure.
Why Backtests Can Be Misleading
Curve fitting, optimistic cost assumptions and bad data — the main reasons a great backtest fails on a live account.
Related free tools
Free, no login required.
Related NuvoraSync features
Sources & further reading
- MetaTrader 5 Help — General concepts: order types and execution — official description of market, limit and stop orders and MT5 execution modes.
- CME Group — Education — exchange education hub covering order types, liquidity and market mechanics.
Want to analyze your own MetaTrader account data automatically?
NuvoraSync is a read-only MetaTrader journal and analytics workspace. Connect MT4 or MT5 once and your trades, drawdown and performance update on their own — no manual entry, no signals, just your own data.
This article is for educational purposes only. It does not provide trading signals, investment advice, financial recommendations, broker recommendations or trade execution. Backtest results are historical simulations and do not predict future performance.