Skip to main content
Back to research
Execution AnalyticsFill QualityOrder Execution

Fill Quality: What Your Broker Isn't Showing You

Fill quality in futures trading goes far beyond 'filled or not.' Learn how to measure arrival price deviation, mark-outs, and the hidden costs most platforms ignore.

NexTick360 Team17 min read

Every time you place a futures order, your execution platform sends back a fill confirmation. You see a price, a quantity, and a timestamp. The order is done. You move on to the next trade.

But that fill confirmation answers only one question: "Did my order execute?" It says nothing about how good the fill was. It does not tell you whether you got a fair price relative to the market at the moment of submission. It does not tell you whether the market moved in your favor or against you in the seconds after your fill. It does not tell you whether you would have been better off with a different order type, different timing, or a different approach entirely.

This information exists. It is calculable from data that your execution platform already has. But almost no platform surfaces it, because fill quality measurement has historically been the domain of institutional execution desks, not retail futures traders.

That gap between what your platform shows you and what you actually need to know is where money quietly disappears.

What Fill Quality Actually Means

Fill quality is the measurement of how well your order execution served your trading objective. A "good" fill is not simply one that executed. It is one that executed at a price that was favorable — or at least fair — relative to the market conditions at the moment you acted.

There are several dimensions to fill quality, and each answers a different question.

Arrival Price Deviation

The most fundamental fill quality metric is arrival price deviation: the difference between the market price when you submitted your order and the price at which you were actually filled.

Arrival price deviation = Fill price - Mid-price at order submission

For a buy order, a positive deviation means you paid more than the mid-market price at the time you clicked. For a sell order, a positive deviation means you received less. In both cases, positive deviation represents a cost to you.

The mid-price — halfway between the best bid and best ask — is the standard benchmark because it represents the theoretical "fair" price at any given instant. Your fill will almost always deviate from the mid-price by at least half the spread, simply because you are buying at the offer or selling at the bid. The question is how much additional deviation occurs beyond that half-spread baseline.

On ES (E-mini S&P 500), the spread is typically one tick (0.25 points, $12.50) during liquid hours. A market buy order should fill at or near the offer. If the mid-price is 5,241.125 and the offer is 5,241.25, a fill at 5,241.25 represents the minimum expected cost — half a tick of arrival price deviation. A fill at 5,241.50 represents 1.5 ticks of deviation, meaning one full tick of additional cost beyond what the spread demanded.

That extra tick costs $12.50. It does not appear on any report your platform generates.

Price Improvement

Price improvement is the opposite of slippage — it occurs when your fill price is better than the price you expected. A resting limit buy order at 5,241.25 that fills at 5,241.00 received one tick of price improvement, worth $12.50 per contract.

Price improvement is more common than most traders realize, particularly with limit orders during fast moves in your direction. But because no platform tracks it, traders have no way to know how often they receive favorable fills or how much value those fills add over time.

Tracking price improvement alongside negative deviation gives you the complete distribution of fill quality — not just the bad fills, but the full picture of how your order execution performs across all conditions.

Queue Position and Latency

For limit orders, fill quality includes the question of queue position: where your order sits in the order book relative to other resting orders at the same price level. Better queue position means a higher probability of fill when price touches your level.

Queue position is a function of when your order arrived at the exchange, which is a function of when you submitted it and how much latency your execution platform adds to the routing process. A platform that adds 50 milliseconds of routing latency may seem irrelevant on a single order, but across thousands of limit orders it measurably reduces fill rates at contested price levels.

This is not something most retail traders think about, because most retail traders cannot measure it. But the data exists in the timestamps, and the cost is real.

Mark-Outs: The Metric Your Platform Does Not Calculate

Arrival price deviation tells you how good your fill was at the moment of execution. Mark-outs tell you how good your fill was relative to what happened next.

A mark-out measures where the market trades at fixed time intervals after your fill. The standard mark-out windows are 5 seconds, 10 seconds, 30 seconds, 60 seconds, and 5 minutes after execution.

Mark-out (buy side, 30 seconds) = Mid-price 30 seconds after fill - Fill price

For a buy order, a positive 30-second mark-out means the market moved in your favor after you were filled. A negative mark-out means the market moved against you. For a sell order, the interpretation reverses.

Mark-outs are the closest thing to a real-time fill quality score. They answer the question that every trader implicitly asks after every fill: "Was that a good entry?"

Why Mark-Outs Matter More Than Arrival Price

Arrival price deviation measures execution efficiency — how well the mechanics of your order worked. Mark-outs measure execution timing — whether you acted at a favorable moment in the price action.

Consider two scenarios on ES:

Scenario A: You buy at the offer during a quiet market. Zero arrival price deviation. The market drifts lower over the next 30 seconds, and your 30-second mark-out is -2 ticks ($25.00 per contract).

Scenario B: You buy with a market order during a fast move. One tick of arrival price deviation. The market continues higher, and your 30-second mark-out is +4 ticks ($50.00 per contract).

Scenario A had perfect execution mechanics but poor timing. Scenario B had slightly worse execution mechanics but significantly better timing. If you only measured arrival price deviation, you would conclude that Scenario A was the better fill. The mark-out data tells the real story.

Over hundreds of trades, your average mark-outs reveal systematic patterns about your entry timing. Consistently negative 30-second mark-outs mean you are, on average, entering at local tops (for longs) or bottoms (for shorts). This is actionable information that no other metric provides.

Mark-Outs by Order Type

Mark-out patterns differ significantly by order type, and the differences reveal important truths about when each order type serves you best.

Market orders tend to produce worse short-term mark-outs during low-volatility conditions and better mark-outs during trending conditions. In a range, a market buy hits the offer and price drifts back. In a trend, a market buy hits the offer and price continues.

Limit orders that fill immediately (priced at or better than the current market) behave similarly to market orders in terms of mark-outs.

Resting limit orders that fill when price trades to their level tend to produce the most polarized mark-out distributions. When they fill during a mean-reversion move, the mark-outs are strongly positive. When they fill during a trend continuation, the mark-outs are strongly negative because price traded through the level and kept going.

Stop orders (both stop-market and stop-limit) tend to produce the worst average mark-outs, because they activate when price has already moved to a specific level. A buy stop triggers after price has risen to the stop price, and the market frequently pulls back in the seconds following a stop-level activation.

Understanding these patterns does not mean avoiding certain order types. It means knowing the fill quality profile of each type so you can select the right tool for each situation.

Market Orders vs. Limit Orders: Different Fill Quality Profiles

The fill quality conversation fundamentally changes depending on your order type. Market orders and limit orders are not just different execution mechanisms — they produce entirely different cost structures that most traders never quantify.

Market Order Fill Quality

Market orders guarantee execution but not price. Their fill quality is measured primarily by arrival price deviation: how far your fill deviates from the market at submission.

During normal liquidity conditions on ES, a single-lot market order should fill at or within one tick of the displayed BBO. The arrival price deviation is typically 0 to 1 tick ($0 to $12.50).

During fast markets — economic releases, session opens, volatility events — the deviation can expand to 2-4 ticks or more. The order book thins, resting liquidity disappears, and your market order walks up (or down) multiple price levels to find a counterparty.

The key fill quality metric for market orders is the distribution of deviation across market conditions. If your average deviation is 0.3 ticks during normal markets but 2.1 ticks during fast markets, and 15% of your trades occur during fast markets, your blended average is approximately 0.57 ticks. That single number obscures important detail. You do not have a 0.57-tick problem. You have a fast-market problem.

Limit Order Fill Quality

Limit orders guarantee price but not execution. Their fill quality is measured by a completely different set of metrics: fill rate, fill latency, and opportunity cost.

Fill rate is the percentage of limit orders that actually execute. A trader who places limit buy orders at the bid will see a fill rate well below 100%, because price must trade through the bid for the order to fill. During strong buying, the bid may hold without being hit.

Fill latency is how long the limit order rests before filling. Shorter latency means the market came to your price quickly. Longer latency may indicate that your price level was only touched briefly and you filled near the end of a move — potentially a worse entry.

Opportunity cost is the hidden cost of limit orders that never fill. If your strategy generates 10 signals per day but your limit orders only fill on 7 of them, the 3 missed trades had a theoretical expected value. That lost expected value is a real cost of using limit orders, even though it never appears as a loss on your statement.

The total cost of a limit order strategy is: (slippage on filled orders x fill rate) + (opportunity cost x miss rate). Many traders assume limit orders are "free" because they eliminate slippage on the orders that fill. But when you account for the opportunity cost of missed fills, limit orders are not always cheaper than market orders. It depends on the strategy, the market, and the conditions.

The Hidden Cost: How Small Deviations Compound

Fill quality costs are small on any single trade. That is precisely why traders ignore them. But futures trading is a game of small edges repeated thousands of times, and small per-trade costs compound into significant annual figures.

Worked Example: 0.3 Ticks Per Fill

Consider a trader who scalps ES with the following profile:

  • Round-trip trades per day: 20
  • Contracts per trade: 2
  • Average fill quality deviation: 0.3 ticks per fill (combined, both entry and exit fills)
  • Trading days per month: 21

Each round-trip involves two fills (entry and exit), so the per-trade fill quality cost is:

Per round-trip cost: 0.3 ticks x 2 fills x $12.50/tick x 2 contracts = $15.00

Daily cost: $15.00 x 20 trades = $300.00

Monthly cost: $300.00 x 21 days = $6,300.00

Annual cost: $6,300.00 x 12 months = $75,600.00

This is not a hypothetical horror story. This is what 0.3 ticks of average deviation looks like for an active scalper. And 0.3 ticks is not a large number — it is well within normal range for a trader who uses a mix of market and limit orders.

Now consider what happens if this trader improves their fill quality from 0.3 ticks average to 0.15 ticks average. The cost drops to $37,800 per year. That improvement — 0.15 ticks per fill — is worth nearly $38,000 annually. No strategy change. No new indicator. Just better execution.

The question is not whether fill quality matters. It is whether you can afford not to measure it.

Time-of-Day Patterns in Fill Quality

Fill quality is not constant throughout the trading session. It varies predictably with liquidity, volume, and the order book dynamics that change as different market participants enter and exit.

The RTH Open (9:30 ET)

The first 15 minutes of the regular trading hours session consistently produce the worst fill quality of the day for market orders. The order book is rebuilding after the overnight session transition, institutional orders are being worked, and price volatility is elevated. Average arrival price deviation during this window is typically 2-3x the session mean.

Paradoxically, this is when many retail traders are most active, because "the open has the best moves." The moves may be real, but the cost of participating in them via market orders is materially higher.

The Mid-Morning Window (10:00 - 11:30 ET)

This period typically offers the best fill quality of the day. The opening volatility has settled, liquidity is at its peak, and the order book is deep. Economic data releases (most scheduled for 10:00 ET) have already been absorbed. A trader who can shift their activity toward this window will see measurably better fill quality without changing anything about their strategy.

The Afternoon Lull (12:00 - 2:00 ET)

Volume drops. Spreads occasionally widen on NQ and CL (ES typically maintains a one-tick spread). Fill quality on limit orders improves slightly because there is less competition for queue position, but market order quality degrades because the order book is thinner.

The Close (3:30 - 4:00 ET)

Similar to the open: elevated volatility, institutional position squaring, and order book thinning. Fill quality deteriorates, particularly in the final 5 minutes.

These patterns are consistent and measurable. A trader who knows their fill quality by time-of-day can make informed decisions about when to trade aggressively (market orders during high-liquidity windows) and when to trade passively (limit orders during low-liquidity periods).

Order Type Selection and Fill Quality

The order type you choose for each trade has a direct, measurable impact on fill quality. Most traders select order types by habit rather than analysis. This is a mistake, because the cost difference between order types is significant and varies by market condition.

Market Orders

Best for: Momentum entries where getting filled matters more than price. Exiting losing trades where speed of exit prevents further loss.

Fill quality profile: Immediate fill, variable deviation. Deviation increases with volatility and order size. Average deviation on ES during normal RTH conditions: 0.0 to 0.5 ticks.

Limit Orders

Best for: Mean-reversion entries where you expect price to come to you. Taking profit at predetermined levels where queue position matters.

Fill quality profile: Zero deviation when filled. Fill rate typically 60-85% depending on placement relative to current price. Opportunity cost on missed fills must be factored in.

Stop-Market Orders

Best for: Protective stops where guaranteed execution matters more than fill price.

Fill quality profile: Fills at or near the stop price during normal conditions. During fast markets, deviation can be significant — a stop-market at 5,240.00 might fill at 5,239.50 or worse during a sharp move. Average deviation on ES stop-market orders: 0.3 to 1.0 ticks during normal conditions, 1.0 to 4.0 ticks during volatility events.

Stop-Limit Orders

Best for: Breakout entries or protective stops where you want to cap your worst-case fill price.

Fill quality profile: Zero deviation when filled (you get your limit price or better). But stop-limit orders can fail to fill entirely if price gaps through your limit — leaving you unprotected during exactly the conditions where protection matters most. This makes stop-limit orders risky for protective stops in volatile markets.

The optimal approach for most traders is a conditional strategy: use limit orders when the setup gives you time, market orders when the setup demands speed, and evaluate the total cost (deviation plus opportunity cost) of your order type mix across sessions.

How to Actually Measure Fill Quality

Measuring fill quality requires capturing data that most platforms do not make available in a usable form. Specifically, you need three things for every single fill:

  1. The mid-price at order submission — the midpoint of the best bid and best ask at the exact moment you submitted the order
  2. The fill price — the actual execution price
  3. The mid-price at multiple intervals after the fill — for mark-out calculation at 5, 10, 30, and 60 seconds post-fill

The first two give you arrival price deviation. Adding the third gives you mark-outs. Together, they produce a complete fill quality profile for every trade.

Manual capture is impractical. You would need to record the bid and ask at the moment of each order submission, note the fill price, and then watch the market for 60 seconds afterward while recording prices at each interval. If you are trading 20 round-trips per day, that is 40 fills requiring manual data capture and 160 post-fill price recordings. This is not realistic.

Automated capture — reading the execution platform's data feed in real-time, timestamping each order event, and recording the surrounding market data — is the only viable approach. Once you have the raw data, the analysis is straightforward:

  • Average arrival price deviation per fill, segmented by order type, time of day, contract, and market volatility
  • Mark-out distribution at each time horizon, revealing whether your entries are consistently well-timed or poorly-timed
  • Fill quality score per trade, combining deviation and mark-outs into a single measure of execution effectiveness
  • Trend analysis over weeks and months, showing whether your execution is improving, degrading, or stable
  • Cost attribution breaking down how much of your fill quality cost comes from which conditions, so you know where to focus improvement

Improving Fill Quality With Data

Once you can measure fill quality, improvement becomes systematic rather than guesswork.

Identify your worst conditions. If 80% of your negative fill quality comes from market orders placed during the first 10 minutes of RTH, you have a specific, actionable problem. You can shift those entries to limit orders, delay your start time by 15 minutes, or reduce size during that window.

Evaluate your order type mix. If your limit orders have zero deviation but a 65% fill rate, and your market orders have 0.5 ticks of deviation but 100% fill rate, you can calculate the breakeven point. At what fill rate do the opportunity costs of missed limit orders exceed the deviation costs of market orders? The answer depends on your strategy's expected value per trade, and it is almost certainly different from what your intuition tells you.

Track mark-outs to improve timing. Consistently negative short-term mark-outs indicate that you are entering at inflection points — buying just before a pullback or selling just before a bounce. This pattern often reflects a tendency to chase price or enter on the wrong side of a micro-rotation. The data reveals the pattern; you can then adjust your entry logic or timing.

Monitor fill quality over time. As you make changes, the data shows whether they are working. Did switching from market orders to limit orders during the opening window actually improve your fill quality, or did the missed fills cost more than the saved deviation? The answer is in the numbers.

Fill quality improvement is not glamorous. It does not involve new indicators, new setups, or new markets. It involves measuring a dimension of your trading that has been invisible, finding the specific points where money is leaking, and making targeted adjustments. It is the kind of work that separates traders who sustainably extract edge from those who give it back through execution costs they never knew existed.


Ready to measure your fill quality? NexTick360 captures every fill, calculates mark-outs at multiple time horizons, and scores your execution quality per trade — so you can see exactly where your fills are costing you. Start your free trial — no credit card required.

Measure your execution. Improve your edge.

NexTick360 shows you exactly where ticks are leaking — and how to stop it.

14-day free trial. No credit card required.