What the Economic Order Quantity Calculator does
The economic order quantity (EOQ) is the order size that minimises the combined yearly cost of placing orders and holding stock. This calculator works it out from annual demand, the fixed cost of one order and the cost of holding a unit for a year, then shows how often you would order, the average stock that creates, the total cost curve, and how much more the quantities you actually order cost you.
That last comparison is usually the useful part. The EOQ cost curve is flat near the bottom, so ordering a round pallet instead of the exact EOQ often costs almost nothing - while ordering a year's supply at once, or a few units every week, can cost a great deal.
How to use it
- Enter annual demand in units per year. If you know monthly demand, multiply by 12; the formula needs a year because holding cost is quoted per year.
- Enter the cost per order: the fixed cost of raising, receiving and paying for one order, whatever its size - purchasing time, delivery charge, goods-in handling. Do not include the price of the goods.
- Enter holding cost either as a percentage of unit cost per year (capital, storage, insurance, shrinkage and obsolescence together) or as an amount per unit per year.
- Type the order quantities you use today, separated by commas, to see their yearly cost against the EOQ.
- Tick the purchase cost box if you want the total to include what the goods themselves cost; it does not change the EOQ, because every option buys the same units in a year.
Reading the results
At the EOQ, annual ordering cost equals annual holding cost - you can check this in the tiles. If your current quantity has ordering cost far above holding cost, you order too often in small amounts; if holding is far above ordering, you order too much at once.
Cycle stock is half the order quantity: the average stock you carry because of ordering in batches. Safety stock comes on top of it and is not part of the EOQ calculation.
The Extra vs EOQ column is the honest measure of whether to change anything. A few per cent may not be worth disrupting a supplier arrangement for; tens of per cent usually is.
Worked example: a retailer paying for storage as a rate
A retailer sells 4,800 units a year of an item that costs 12.50 to buy. Placing and receiving one order costs 60, and holding stock costs 24% of its value a year, so H = 0.24 x 12.50 = 3.00 per unit per year.
EOQ = sqrt(2 x 4,800 x 60 / 3) = sqrt(192,000) = 438 units. That means 4,800 / 438.2 = 11.0 orders a year, one about every 33 days, with an average cycle stock of 219 units. Ordering and holding each cost 657.27, a total of 1,314.53 a year.
The retailer currently orders 200 at a time: 24 orders cost 1,440 and holding 100 units on average costs 300, a total of 1,740 - 32% more than at the EOQ. Ordering 400 costs 720 + 600 = 1,320, only 0.4% above the minimum, so a round 400 is a perfectly good choice. A 1,200-unit bulk order costs 240 + 1,800 = 2,040, 55% more.
Formulas and scoring rules
- Economic order quantity
EOQ = sqrt(2 x D x S / H)D annual demand (units/year), S cost per order, H holding cost per unit per year. The headline shows whole units; the exact value is shown alongside.- Holding cost from a rate
H = i x Ci is the annual holding rate (24% = 0.24), C the unit cost.- Annual cost of an order quantity
TC(Q) = (D / Q) x S + (Q / 2) x H [+ D x C if purchase cost is included]- Orders, spacing and cycle stock
orders/year = D / Q; days between orders = days_per_year x Q / D; cycle stock = Q / 2- Minimum cost
TC(EOQ) = sqrt(2 x D x S x H)At the EOQ, ordering cost = holding cost = TC / 2. Costs are rounded to cents only for display.
What the EOQ model assumes
The classic Harris-Wilson model assumes steady demand through the year, a fixed cost per order regardless of size, a holding cost proportional to the stock held, no quantity discounts, and the whole order arriving at once. Real purchasing rarely matches all five, which is why the flat bottom of the cost curve matters: small departures from those assumptions barely move the cost.
Quantity discounts are the most common reason to order more than the EOQ. To assess one, include the purchase cost and compare the total at the EOQ price with the total at the discount quantity and its lower price - the tick box adds D x unit cost for exactly this.
Limitations: what the result does not prove
- It assumes demand is steady. Strongly seasonal items need a quantity per season, not one EOQ for the year.
- Quantity discounts, minimum order quantities, pack sizes, truck capacity and shelf life are not modelled; use the comparison table to price the quantities they force on you.
- The result is only as good as the order and holding costs you enter. Holding cost is often underestimated because obsolescence and space are not charged to the item.
- EOQ says how much to order, not when. Pair it with a reorder point that covers lead-time demand and safety stock.
Privacy: where your data goes
Everything you paste, type or drop is processed in this browser tab. It is not uploaded, logged, stored or sent to analytics. Session recording and tag-manager scripts are switched off on this page.
Standards and sources
Frequently asked questions
What should I include in the cost per order for EOQ?
Only costs that happen once per order whatever its size: the time to raise and approve the purchase order, the delivery charge if it is per shipment, receiving and inspection, and invoice processing. The unit price of the goods belongs elsewhere.
What is a typical holding cost percentage?
It depends on your cost of capital, storage and how quickly the item goes out of date, so work it out from your own figures rather than borrowing one. Add up capital cost, warehouse space, insurance, shrinkage and obsolescence per year and divide by average inventory value.
Why does the EOQ not change when I include the purchase cost?
Because every order quantity buys the same number of units in a year, so D x unit cost is the same constant for all of them. It raises the total but not the position of the minimum. It only matters when a quantity discount changes the unit price.
Is ordering a bit more or less than the EOQ a problem?
Usually not. The total cost curve is shallow near the EOQ: ordering 20% more or less typically adds only about 2% to the combined ordering and holding cost. The comparison table shows the exact figure for your quantities.
Does EOQ include safety stock?
No. EOQ sets the batch size, and the average stock it creates is half the batch. Safety stock is a separate buffer against uncertainty that sits underneath the cycle stock, set with a service-level calculation and triggered through the reorder point.
Last reviewed by the A2Z.Tools team against the sources listed above.