EOQ Calculator
How many units to order at a time so that ordering and holding costs are lowest.
Cost a year by order size
Other order sizes
How this was calculated
To add safety stock and a service level to the reorder level, use the reorder point calculator.
About the EOQ Calculator
The economic order quantity (EOQ) is the order size that keeps the yearly cost of ordering and of holding stock as low as possible. Order small lots often and you pay the fixed cost of an order many times; order big lots rarely and cash, space and insurance are tied up in stock. Enter your demand, what one order costs and what it costs to keep one unit in stock for a year, and the calculator gives the EOQ, the number of orders a year and the days between them, the annual cost, a chart of the cost curve and a table of other order sizes.
Two variants cover real purchasing: Quantity discounts finds the cheapest order when a supplier lowers the price of every unit from a certain quantity (all-units discounts), and Production (EPQ) sizes a production run for an item you make at a finite rate while it sells. Nothing you enter leaves your browser.
How to use it
- Choose EOQ, Quantity discounts or Production (EPQ).
- Enter the demand and the period it covers (a year, a quarter, a month, a week or a day); it is converted to a year.
- Enter the cost per order — what one order costs whatever its size: raising and approving it, delivery charged per order, receiving and checking it. For the EPQ it is the setup cost of one production run.
- Enter the holding cost: a % of the unit cost a year, or an amount per unit a year. For quantity discounts, enter each price break: the quantity the price starts at and the unit price. For the EPQ, enter the production rate.
- Open More options for working days, the lead time, the quantity you order today or the pack size you must order in. Then read the result, copy the summary or download the table as CSV.
Examples
H = 20% × 20 = 4 a unit a year EOQ = √(2 × 10,000 × 50 ÷ 4) = 500 units 20 orders a year, one every 18.25 days Ordering 1,000 + holding 1,000 = 2,000 a year
5.00 a unit · 4.80 from 1,000 units · 4.75 from 2,000 units
700 at 5.00: 25,700 a year 1,000 at 4.80: 24,725 a year ← lowest 2,000 at 4.75: 24,822.50 a year
At 4.80 the EOQ is 714, below the break, so the best order at that price is 1,000. The discount on 5,000 units saves more than the extra stock costs to hold.
P = 8 × 250 = 2,000 a year EPQ = √(2 × 1,000 × 10 ÷ (0.50 × (1 − 1,000 ÷ 2,000))) = 282.8 units Each run takes about 35 days; stock peaks at about 141 units
Common uses
- Set the order size for a product you buy regularly from one supplier.
- Check whether a supplier’s volume discount is worth the extra stock.
- Size production batches for an item you make in-house.
- Show what ordering a year’s stock at once, or a little every week, really costs.
The EOQ formula
EOQ = √(2DS ÷ H)
- D is the demand a year in units.
- S is the cost of placing and receiving one order.
- H is the cost of holding one unit for a year: an amount, or the holding rate × the unit cost.
The yearly cost of an order size Q is (D ÷ Q) × S + (Q ÷ 2) × H: orders a year times the cost of an order, plus the average stock (half an order, when stock runs down evenly) times the holding cost. The two parts are equal at the EOQ. The cost of the goods themselves, D × unit cost, does not depend on Q, so it does not change the EOQ — until a quantity discount makes the price depend on Q.
The model is the square-root formula of Ford W. Harris’s “How Many Parts to Make at Once” (also known as the Wilson formula); Silver, Pyke and Thomas’s Inventory and Production Management in Supply Chains builds its lot-sizing methods on it.
Why the exact number matters less than you think
Near its lowest point the cost curve is flat. Ordering Q instead of the EOQ costs ½ × (Q ÷ EOQ + EOQ ÷ Q) times the lowest cost:
- 25% more than the EOQ costs 2.5% more a year; 25% less costs 4.2% more;
- twice or half the EOQ costs 25% more.
So rounding the EOQ to a case, a pallet or a supplier minimum costs little — the table shows exactly how much — while ordering far from it (a year’s stock at once, or a delivery every day) costs a lot. Enter a pack size under More options to round to whole packs, and your current order size to see what it costs you.
Quantity discounts
With an all-units discount the lower price applies to every unit in the order once it reaches the break. The cost a year then includes the goods, D × price + (D ÷ Q) × S + (Q ÷ 2) × H, and the calculator checks every price:
- work out the EOQ at that price (with a holding rate, a lower price means a lower H and a slightly larger EOQ);
- if the EOQ is below the break, the best order at that price is the break quantity itself; if it is above the range, the top of the range;
- compare the total cost of these orders: the lowest wins.
This is the standard procedure for all-units discounts in inventory textbooks. Incremental discounts (the lower price only on the units above the break) are a different calculation and are not covered here.
Production runs (EPQ)
When you make the item yourself, stock does not arrive all at once: during a run it builds up at the production rate P minus the demand rate D, and after the run it sells down. The peak stock is Q × (1 − D ÷ P) rather than Q, so holding costs less and the best run is longer:
EPQ = √(2DS ÷ (H × (1 − D ÷ P)))
S is the setup cost of one run: changeover labour, cleaning, scrap from the first pieces, lost machine time if it is a bottleneck. P must be higher than D, or the stock never builds up. Enter both rates for the same days: with production per day and 250 working days a year, set Days in a year to 250.
Estimating the costs
- Cost per order: the cost that comes with each order rather than each unit — the time to raise, approve and pay a purchase order, a fixed delivery or freight charge, receiving, checking and putting away. Divide what these cost in a year by the number of orders placed.
- Holding cost: the return the cash in stock could earn elsewhere (your cost of capital or the interest on the money borrowed to buy it), plus storage, handling, insurance, damage, shrinkage and obsolescence. Most businesses state it as a % of the unit cost a year; perishable, fragile or fast-dated goods carry a higher rate.
- Use costs that really change with the number of orders or the stock held: the rent of a warehouse you pay for anyway is not a holding cost of one more unit.
Limitations
- The EOQ assumes steady demand through the year, a fixed cost per order and a holding cost proportional to the stock held. For seasonal or lumpy demand, plan lot sizes period by period.
- It says how much to order, not when: add safety stock and the lead time with the reorder point calculator.
- Stock-outs, backorders, shelf life, warehouse space, budget limits and supplier minimum orders are not modelled: check the answer against them.
- Only all-units quantity discounts are covered, not incremental ones.
Privacy
Everything happens in your browser. What you enter or open here is not uploaded or stored by MySmartCoPilot.
Frequently asked questions
What is the EOQ formula?
EOQ = √(2 × D × S ÷ H), where D is the yearly demand in units, S the cost of one order and H the cost of holding one unit for a year. With 10,000 units a year, 50 an order and 4 a unit a year, the EOQ is √(2 × 10,000 × 50 ÷ 4) = 500 units.
What holding cost percentage should I use?
Your own: the return you give up on the cash tied up in stock, plus storage, handling, insurance, damage, shrinkage and obsolescence, each as a share of the unit cost a year. Add the parts that apply to your goods. If you are unsure, try two rates — the table and chart show how much the EOQ and the cost move.
Does the lead time change the EOQ?
No. The lead time decides when to order (the reorder point), not how much. Enter it under More options to see the stock level at which to reorder without safety stock, or use the reorder point calculator for safety stock and service levels.
My supplier sells only in cases. What should I order?
Enter the case size as the pack size under More options. The calculator compares the whole number of cases just below and just above the EOQ and picks the cheaper one, and shows how little extra it costs a year — the cost curve is flat near the EOQ.
When should I use the EPQ instead of the EOQ?
When the item is produced in-house, so a batch arrives over the length of the production run instead of all at once, and it sells while it is being made. If a whole order arrives in one delivery, use the EOQ.
Is a quantity discount always worth taking?
Not always. A lower price saves on every unit, but the larger order raises the average stock and the holding cost. The Quantity discounts mode compares the best order at every price, goods included, and shows the cheapest — sometimes it is the smaller order at the higher price.