Price-Time Priority: Why Your Order Does Not Fill at the Same Price
A limit order seems likely to fill as soon as the price touches it. In practice, a touch and a fill differ. A matching engine orders the queue through price priority and time priority, and your order stands somewhere in that queue.
Two rules determine the order
The matching engine takes an incoming order and compares it with opposing quotes. If they match, it executes; otherwise, it queues the order in the book. Two rules determine that queue.
① Price first
Higher bids execute first.
Lower asks execute first.
② Time second
At the same price, the earlier accepted order goes first.
─────────────
① always precedes ②.
A bid arriving later but one tick higher goes ahead.
No person intervenes in this ordering. Account size, volume or VIP status does not change it. The relevant variables are price and acceptance time. See reading an order book for the layout.
Why a price touch does not produce a fill
A common situation: you place a $59,900 buy limit, the candle's low reaches exactly $59,900, but your order remains unfilled. The issue is the queue ahead has not cleared, rather than an error.
Orders already waiting before yours:
A: 5 contracts
B: 4 contracts
C: 3 contracts
──────
Total ahead: 12 contracts
Your order: 1 contract, in the 13th position.
Price reaches $59,900.
Incoming market sells: 7 contracts.
A fills 5; B fills 2.
No more selling arrives → the price rebounds.
─────────────
Quantity ahead: 12 → 5 contracts.
Your order: unfilled.
The price touched; your turn did not arrive.
A limit fill requires more than a touch: enough opposing volume to consume the quantity ahead must arrive. This explains many unfilled orders when a candle touches its exact low and rebounds. When trading passes through your quote, the queue at that level has been consumed.
Queue position determines fill likelihood
Even with identical prices and quantities, where you stand can change the result completely. The front can fill on a brief touch; the back may require trading through the level.
$59,900 buy level; total queue 20 contracts.
Front: 1 contract ahead.
Only 2 contracts of selling are needed to fill your 1 contract.
Middle: 10 contracts ahead.
At least 11 contracts of selling needed.
Back: 19 contracts ahead.
In practice, the level may need to be traded through.
─────────────
A fill from the back can mean
the price has already fallen further,
starting your position at a loss.
The paradox is that back-of-queue orders tend to fill in less favorable conditions. Enough volume to consume everything ahead can mean continued pressure in that direction. The front captures favorable touches; the back receives unfavorable moves through the level. This mechanism explains much of the repeated experience of going negative immediately after a limit fill.
Editing an order can send it to the back
This can be an expensive lesson. At many exchanges, increasing quantity or changing price cancels the old order and submits a new one. Time priority resets.
10:00:00: Submit a 1-contract buy at $59,900.
Quantity ahead: 12 contracts.
10:04:30: Only 2 contracts remain ahead.
10:04:35: “Increase it from 1 to 2 contracts.”
→ Cancel and resubmit.
→ Another 8 contracts have joined since the original order.
─────────────
Quantity ahead: 2 → 10 contracts.
The position earned by waiting 4 minutes 30 seconds disappears.
Reducing quantity often preserves priority.
Check the exchange's specific rule.
Many exchanges preserve rank for a quantity reduction, while an increase generally loses it. To increase size while preserving the existing position, leave the original order and place an additional order separately. See order rejection reasons and tick size and minimum orders for related restrictions.
Improve by one tick or keep waiting?
This recurring practical choice is easier to assess numerically.
Assume BTC, $0.1 tick, $100 notional per contract.
Option A: Stay put.
Price: $59,900.0.
Low fill probability at the back.
A fill pays the maker fee.
Option B: Improve one tick.
Price: $59,900.1.
Additional price cost: 0.1 ÷ 59,900 = 0.00017%.
Higher fill probability.
─────────────
Maker 0.02% versus taker 0.05%:
difference 0.03%.
One-tick cost: 0.00017%.
One tick is about 1/176 of that fee difference.
Improving one tick is often cheaper than
missing the fill and chasing with a market order.
Repeatedly improving by a tick can eventually cross the spread and make you a taker. Set a limit, such as chasing no more than 2 ticks before abandoning the entry. See post-only, reduce-only and IOC for maker-only execution. Post-only rejects an order that would take liquidity, preventing an accidental spread crossing.
Partial fills also follow queue rules
If opposing flow stops partway through your order, only part fills. A 3-contract order might fill 1.2 and leave 1.8.
$59,900 buy; your order 3 contracts.
Quantity ahead: 5 contracts.
Incoming sells: 6.2 contracts.
First 5 consume the queue ahead.
Your order fills 1.2 contracts.
Flow stops.
─────────────
Filled: 1.2 contracts at $59,900.
Unfilled: 1.8 contracts, now at the front.
The remaining 1.8 has first place
and receives the next available opposing flow.
A partial fill is not inherently a loss, but recognize that the position differs from your intended size. A partly filled stop leaves the remainder exposed. See partial fills and slippage for the mechanism and urgent execution-price deterioration.
Quantity the screen does not show
Displayed depth may not represent the full queue. An iceberg order exposes only small portions of a larger order: 1 visible contract may conceal dozens. You may estimate 2 contracts ahead when the actual interest is 30.
Screen: 3 contracts at $59,900.
Actual: Only 3 of a 30-contract iceberg are exposed.
5 contracts of selling arrive.
The displayed 3 fill → another 3 appear.
Further replenishment continues as trades occur.
─────────────
A quote whose displayed size does not shrink
may be an iceberg or a continually replenished wall.
Your effective turn can be much later than estimated.
Queue calculations are therefore estimates. If visible quantity does not decline despite fills, the original guide suggests avoiding that level. TWAP execution spreads activity over time instead of confronting such a wall in one attempt.
Recap
② Account size and status do not change this sequence.
③ A price touch is insufficient if quantity ahead remains.
④ Orders often remain unfilled when a candle merely touches a low and rebounds.
⑤ Back-of-queue fills tend to arrive as the level is traded through, under less favorable conditions.
⑥ Increasing an order can send it to the back.
⑦ Add a separate order to preserve the original rank.
⑧ One tick's 0.00017% cost is much smaller than a 0.03% fee difference.
⑨ Predefine the maximum ticks you will chase.
⑩ Post-only prevents accidentally taking liquidity.
⑪ A partially filled remainder stays at the front of its queue.
⑫ Icebergs can make displayed quantity smaller than actual interest.
A limit order's outcome depends on its position at that price, not merely the price you entered. When an unfilled order is frustrating, examine the quantity ahead as well as the price.
Caution
All numbers are hypothetical examples, not observed exchange quotes or account measurements: $59,900; queues of 12, 5 and 20 contracts; selling flows of 7 and 6.2; 1.2 filled and 1.8 remaining; 10:00:00–10:04:35 with 8 new contracts; a $0.1 tick, $100 notional, 0.02% maker and 0.05% taker fees; the resulting 0.00017% and 1/176 comparison; and 3 visible contracts from a 30-contract iceberg. Detailed priority rules differ by exchange. Check whether size reductions preserve rank, price changes cancel and resubmit, how iceberg portions refresh, and how simultaneous submissions are ordered. Fees depend on tier and settlement currency, so do not apply these rates directly. Leverage can lose all principal, and front-of-queue placement does not guarantee profit. Decisions remain your responsibility.
NOONOO TRADING invites you to follow live trading in our free chat.
Start in the bot📈 OKX trading fee discount for new registrations
Register for the OKX Fee Discount →