Pro-rata matching shares executions among eligible resting orders in proportion to their size. Compare an exact 30/60-share allocation with FIFO and see where venue rules change the result.
Pro-rata matching
Pro-rata matching allocates a trade among eligible resting orders in proportion to their quantities, typically within a price level. For a passive trader, the practical consequence is that size in the eligible pool can matter more than arriving first: a trade at your price need not fill your whole order.
The word eligible matters. A matching engine first determines which prices and orders can participate, then applies its allocation rules. Pro-rata does not mean dividing an incoming order across every order in the order book, regardless of price or priority class.
One price, two sellers
Consider a frozen, synthetic share market with price priority: lower asks execute before higher asks. The best eligible ask price is USD 101 per share. At that price, A offers 60 shares and B offers 120 shares. They are the entire eligible pool. There is no earlier priority allocation, hidden quantity, minimum allocation or competing book update.
An incoming buy can execute 90 shares at this price. Under an ideal exact pro-rata rule, let qi be resting order i's eligible shares, Q=∑iqi>0 the pool, and M the shares to match at this level, with 0≤M≤Q. Its allocation is
xi=MQqi.
Resting order
Eligible shares
Fraction of pool
Shares executed
Shares remaining
A
60
1/3
90×60/180=30
30
B
120
2/3
90×120/180=60
60
Total
180
1
90
90
Both sellers receive a 50% fill of their own resting size. B executes twice as many shares because it contributes twice as many eligible shares. This is proportional allocation, not an equal number of shares per order. Both executions use the same price; the rule changes who supplies the shares.
At the same synthetic USD 101 ask price, A offers 60 shares and B 120, totalling 180. A 90-share buy fills A by 30 and B by 60, leaving 30 and 60. Both orders receive a 50 percent fill.
Original frozen-book illustration. Quantities are shares and the common ask is USD 101 per share. The eligible pool contains only A and B; ideal exact proportional allocation applies after price priority. No fees, hidden size, special priority or rounding residue.
The allocation conserves quantity: the fills sum to the incoming 90 shares and neither exceeds the corresponding resting order. If the quantity reaching this price equalled the entire 180-share pool, both orders would fill completely. Any further buy quantity would need liquidity elsewhere or remain unfilled under the order's instructions; the formula must not allocate more than the pool contains.
Compare FIFO only after specifying who arrived first
Under price-time priority, equal-price orders fill in time order—first in, first out, or FIFO. For the same resting quantities and incoming buy, the answer depends on arrival priority:
Allocation rule at USD 101/share
A executes, shares
B executes, shares
Ideal exact pro-rata
30
60
FIFO, A has time priority
60
30
FIFO, B has time priority
0
90
Thus the same 90-share trade at the same price can generate different partial fills for the resting sellers. Price-level traded volume alone cannot identify your allocation without the matching rule, your eligible size and any relevant priority information.
The Order Books lesson develops this distinction alongside cancellation ambiguity and passive-fill simulation. The full lesson requires membership; its public page provides a preview.
The proportional formula is a component, not a venue specification
The example divides exactly into whole shares. Real instruments trade in permitted quantity increments, so theoretical fractions may require rounding and a separate rule for leftover units. Other stages may reserve quantity for particular orders before the proportional pool is formed.
CME Group's Supported Matching Algorithms, for example, documents pro-rata variants with minimum allocations, rounding, top-order priority and FIFO allocation of residual quantity. Its Configurable algorithm can split quantity between FIFO and pro-rata stages. These are distinct contracts; the simple formula above is not a claim that every CME product—or every trading venue—uses pure proportional matching. Check the current specification and parameters for the particular product and session.
Pro-rata also changes the incentive to quote size. Holding other eligible quantity fixed, a larger order can increase its proportional share of a limited incoming trade. But every additional share offered can actually execute. Increasing size to chase allocations therefore increases potential inventory exposure; a larger allocation is not a free improvement in execution quality. Subsequent price moves and adverse selection still matter.
Sources
Rishi K. Narang, Inside the Black Box: A Simple Guide to Quantitative and High-Frequency Trading, 2nd edition, John Wiley & Sons, 2013, Chapter 7, “Aggressive versus Passive,” pp. 121–122. Same-price allocation and the trade-off between quoted size and unwanted execution.
CME Group, Supported Matching Algorithms. Checked 27 October 2026; see the Pro-Rata, Configurable and Threshold Pro-Rata sections for venue-specific stages and residual handling.