Skip to main content
Menu

⚠️ Risk Warning: Trading forex, CFDs, and cryptocurrencies involves substantial risk of loss and may not be suitable for all investors. This platform provides educational content only and does not constitute financial advice.

Ξ Level 2 · Beginner Spot Trading & Execution Execution Mechanics

Partial Fills

Understand crypto partial fills, remaining order quantity, queue priority, fees, average price and practical spot execution management.

Progress 0%

Reading progress — saved on this device

SPOT TRADING & EXECUTION · EXECUTION MECHANICS

A partial fill occurs when only part of an order executes. It is normal market microstructure rather than an error: available opposite-side liquidity, queue priority and time-in-force determine how much of the requested quantity can trade immediately.

Risk first. Treating a partially filled order as “done” can leave unintended exposure or a live remainder in the book. Conversely, cancelling and replacing without confirming state can create duplicate execution.
Last reviewed: 21 August 2026 · Educational content only

Executed quantity versus remaining quantity

An order begins with an original quantity. Each fill reduces the unfilled remainder. The venue reports cumulative filled quantity, remaining quantity and one or more execution prices.

Remaining quantity = original quantity − cumulative filled quantity

A partially filled resting limit can remain active for the balance, depending on its time-in-force. A marketable order can also partially fill if the venue imposes protection, liquidity disappears or a limit boundary prevents further execution.

Why partial fills occur

Insufficient immediate liquidity

Only part of the requested quantity is available at acceptable prices.

Queue priority

Other resting orders at the same price are ahead of yours.

Limit boundary

The next available price would violate your limit.

Time-in-force

IOC can fill what is immediately available and cancel the rest by design.

Partial fills are especially common when order size is large relative to displayed depth or when a passive order sits in a competitive queue.

Manage state explicitly

StateWhat to checkCommon action risk
Partially filled, remainder liveRemaining quantity and queue positionAccidentally submitting a replacement while old remainder still rests
Partially filled, remainder cancelledWhy it cancelled: IOC, manual cancel, venue ruleAssuming the whole original quantity executed
Several fill pricesCumulative weighted averageUsing simple mean rather than size-weighted average
Fees per fillMaker/taker classification and fee currencyIgnoring fee drag or mixed fee treatment
Order-state discipline: use venue order IDs and fill reports. A UI badge such as “partially filled” is not enough for automated reconciliation.

Worked example

You place a limit buy for 10 ETH at £2,500. Your order receives three fills: 2 ETH at £2,498, 3 ETH at £2,500 and then no more liquidity trades at or below your limit.

Cumulative filled quantity is 5 ETH, leaving 5 ETH unfilled. If the order is GTC, that remainder can stay live at £2,500.

Filled cost = (2×2,498) + (3×2,500) = £12,496 Average fill = £12,496 ÷ 5 = £2,499.20

If you now submit another 5 ETH buy without cancelling the original remainder, both orders can later fill and leave you with 15 ETH rather than the intended 10.

Reconcile partial fills like an execution ledger

For material orders, treat each fill as a ledger entry: order ID, trade ID, quantity, price, fee, timestamp and liquidity classification. Sum those records back to the venue's cumulative-filled figure. This is especially important when fills arrive through WebSocket/API messages that can be duplicated, delayed or delivered out of sequence.

A robust workflow uses the venue's cumulative order state as the reconciliation anchor rather than simply adding every message received. If the connection drops after a 3 ETH fill and reconnects after another 2 ETH has executed, querying the order state prevents the client from assuming only the first 3 ETH traded.

Why this matters: execution management is a state problem. The intended order size is not the same as the current live remainder, and message delivery is not the same as authoritative venue state.

Common mistakes and misunderstandings

  • Assuming “partially filled” means the order is no longer live.
  • Submitting a replacement before confirming cancellation of the remainder.
  • Calculating average fill as an unweighted mean of execution prices.
  • Ignoring that some fills can be maker and others taker under complex order changes/venue rules.
  • Reconciling requested quantity rather than cumulative executed quantity.
Execution discipline: Always reconcile order ID, cumulative filled quantity and remaining live quantity before placing a replacement or hedge.

Knowledge checkpoint

Q1. If a 10 ETH order fills 5 ETH and remains GTC, what quantity is still capable of executing?

Q2. Why can replacing an unconfirmed remainder create an oversized position?

Q3. How should several partial-fill prices be combined into one average?

Q4. Which time-in-force intentionally allows “fill what is available now, cancel the rest”?

Self-check: A strong answer should explain both the order instruction and the execution consequence, including what can happen if liquidity or venue state changes.

FAQ

❓ Is a partial fill an error?

No. It is a normal result when only some quantity can execute under the order price and priority rules.

❓ Does the unfilled remainder stay open?

It depends on time-in-force and venue rules. GTC commonly leaves it live; IOC commonly cancels it.

❓ Can one order have many trade IDs?

Yes. A single order can generate multiple individual fills/executions.

❓ Do fees apply to each partial fill?

Venues calculate fees on executed quantity, often per fill or aggregated, according to the fee schedule.

Summary

  • Partial fills are normal when only part of an order can execute.
  • The key state variables are cumulative filled quantity and live remainder.
  • A live remainder can create duplicate exposure if replaced without confirmation.
  • Average execution price must be weighted by filled quantity.

This building block explains execution mechanics and risk. It is not a recommendation, signal or instruction to trade any cryptoasset.

BUILD YOUR OWN PATH

Want this in a personalised order?

Take the crypto assessment and get a custom path of 10 modules matched to what you already know. Free, no card required.

Build my path →