Economic Order Quantity
The order size that minimises the combined cost of ordering and holding stock.
Order 500 units at a time, about 20 times a year — roughly every 18 days.
Ordering 1000 + holding 1000. At the optimum these two are equal — that is what the formula solves for.
Place the next order when stock falls to this level, so it arrives as the last unit is used. No safety stock included.
EOQ assumes steady demand, a fixed lead time, and no bulk discounts. Its practical value is that the total-cost curve is flat near the optimum — ordering somewhat more or less than the exact figure costs very little, so round to a convenient pack size.
EOQ is the square root of twice annual demand times the order cost, divided by the holding cost. At 10,000 units a year, 50 per order, and 4 to hold a unit for a year, EOQ is √(2 × 10,000 × 50 ÷ 4) = 500 units, ordered 20 times a year.
A trade-off with a exact answer
Inventory pulls in two directions. Ordering in large batches means fewer orders and lower ordering costs, but more stock sitting in a warehouse tying up cash and space. Ordering in small batches keeps holding costs down but multiplies the fixed cost of placing orders.
These two costs move in opposite directions as order size changes, so their sum has a minimum. The economic order quantity is that minimum, and it is one of the few operations problems with a clean closed-form solution rather than a simulation.
The elegant property
At the optimum, total ordering cost exactly equals total holding cost. In the worked example each is 1,000, for a total of 2,000. This is not a coincidence — it falls out of the calculus, and it gives you a fast way to sanity-check any EOQ answer. If the two halves are wildly unequal, the arithmetic went wrong somewhere.
D is annual demand in units, S the fixed cost of placing one order, and H the cost of holding one unit for a year. The reorder point carries no safety stock.
Worked example: 10,000 units a year
Apply the formula, then check the two cost halves match:
- 1 Gather the three inputs. Annual demand 10,000 units, 50 to place an order, 4 to hold a unit for a year.
- 2 Work the numerator. 2 × 10,000 × 50 = 1,000,000.
- 3 Divide by holding cost. 1,000,000 ÷ 4 = 250,000.
- 4 Take the square root. √250,000 = 500 units per order.
- 5 Check the cost halves. 20 orders × 50 = 1,000 ordering; (500 ÷ 2) × 4 = 1,000 holding. Equal, as they must be at the optimum.
- 6 Set the reorder point. Daily demand 10,000 ÷ 365 = 27.4 units; over a 7-day lead time that is about 192 units.
Total cost near the optimum
Annual ordering plus holding cost at different order sizes, for the example above. Note how flat the curve is around 500.
| Order size | Ordering cost | Holding cost | Total |
|---|---|---|---|
| 250 | 2,000 | 500 | 2,500 |
| 400 | 1,250 | 800 | 2,050 |
| 500 | 1,000 | 1,000 | 2,000 |
| 600 | 833 | 1,200 | 2,033 |
| 800 | 625 | 1,600 | 2,225 |
Why being slightly wrong barely costs anything
The table shows the most practically useful fact about EOQ: the total-cost curve is very flat near its minimum. Ordering 400 instead of 500 — a 20% error — raises annual cost from 2,000 to 2,050, a penalty of 2.5%. Ordering 600 costs 1.7% more.
This matters because the inputs are estimates. Holding cost in particular is hard to pin down: it includes warehousing, insurance, obsolescence, and the opportunity cost of capital, and reasonable people disagree by a wide margin. The flatness of the curve means those disagreements barely affect the answer, so you should round EOQ to whatever pack size, pallet, or container the supplier actually ships.
The model does assume steady demand, a fixed lead time, no bulk discounts, and no stockouts. Where suppliers offer quantity discounts, the right approach is to compute total cost at EOQ and at each discount threshold and compare — the discount often wins even though it pushes order size above EOQ. Variable demand calls for safety stock on top of the reorder point calculated here.