How do you calculate EOQ?
The economic order quantity is the order size at which the yearly cost of placing orders plus the yearly cost of holding inventory is lowest. Order small and often, and ordering costs pile up; order large and rarely, and holding costs do. The formula balances the two:
EOQ = sqrt(2 x Co x D / Ch)
Co is the cost of placing one order, D is annual demand in units and Ch is the cost of holding one unit for a year. Set out as a written answer, the default figures read:
- Co = $25, D = 40,000 units, Ch = $2 per unit per year.
- EOQ = sqrt(2 x 25 x 40,000 / 2) = sqrt(1,000,000) = 1,000 units.
- Orders a year = 40,000 / 1,000 = 40, so one order every 9.1 days on a 365-day year.
- Annual ordering cost = 40 x $25 = $1,000.
- Annual holding cost = average inventory x Ch = 1,000 / 2 x $2 = $1,000.
- Purchase cost = 40,000 x $5 = $200,000, so total annual cost = $202,000.
Average inventory is half the order, 500 units, because stock falls from 1,000 to zero between deliveries. That assumption is why the holding cost uses Q / 2.
EOQ example in pounds with holding cost as a percentage of price
Questions often give the holding cost as a percentage of the purchase price rather than an amount. Convert it first. A UK retailer sells 12,000 units a year of a product it buys for £20, each order costs £150 to place, and holding costs 15% of the price a year:
- Ch = 15% x £20 = £3 per unit per year.
- EOQ = sqrt(2 x 150 x 12,000 / 3) = sqrt(1,200,000) = 1,095.45 units.
- Orders a year = 12,000 / 1,095.45 = 10.95, about one every 33 days.
- Ordering cost = 10.95 x £150 = £1,643.17, and holding cost = 1,095.45 / 2 x £3 = £1,643.17.
- Ordering plus holding = £3,286.34, on top of purchases of £240,000.
Rounding to an order of 1,095 units changes almost nothing: ordering becomes £1,643.84 and holding £1,642.50, still £3,286.34 in total to the penny. Choose A percentage of the unit price per year above to enter a rate instead of an amount.
Why are ordering and holding costs equal at the EOQ?
Annual ordering cost, D / Q x Co, falls as orders get bigger, while annual holding cost, Q / 2 x Ch, rises in a straight line. Their total is lowest exactly where the two meet, which is why a correct answer always shows them equal at the unrounded EOQ. Setting D / Q x Co equal to Q / 2 x Ch and solving for Q gives the formula itself.
The total also has a short form: ordering plus holding at the EOQ = sqrt(2 x Co x D x Ch). For the default figures that is sqrt(2 x 25 x 40,000 x 2) = $2,000. The curve is flat near its lowest point:
| Order size | Orders a year | Ordering cost | Holding cost | Total |
|---|---|---|---|---|
| 500 | 80 | $2,000 | $500 | $2,500 |
| 800 | 50 | $1,250 | $800 | $2,050 |
| 1,000 (EOQ) | 40 | $1,000 | $1,000 | $2,000 |
| 1,250 | 32 | $800 | $1,250 | $2,050 |
| 2,000 | 20 | $500 | $2,000 | $2,500 |
Ordering 20% below or 25% above the EOQ costs only 2.5% more. Halving or doubling it costs 25% more. So a supplier's pack size near the EOQ is usually close enough, and the cost of a moderately wrong estimate is small.
How do you calculate EOQ with quantity discounts?
A supplier may cut the price for bigger orders. A larger order earns a cheaper price on every unit but costs more to hold, so the EOQ is no longer automatically the cheapest choice. The exam method is to compare total annual cost, purchases included, at the EOQ and at each discount threshold above it:
Total cost = D x price + D / Q x Co + Q / 2 x Ch
Suppose the default supplier offers 1% off orders of 2,000 units or more and 2% off orders of 5,000 or more, with Ch fixed at $2:
| Order size | Price | Purchases | Ordering | Holding | Total |
|---|---|---|---|---|---|
| 1,000 (EOQ) | $5.00 | $200,000 | $1,000 | $1,000 | $202,000 |
| 2,000 | $4.95 | $198,000 | $500 | $2,000 | $200,500 |
| 5,000 | $4.90 | $196,000 | $200 | $5,000 | $201,200 |
Orders of 2,000 give the lowest total, $1,500 a year below the EOQ. The bigger 2% discount saves another $2,000 on purchases, but holding 5,000-unit orders adds $3,000 of holding cost against a $300 drop in ordering cost, so it loses. Thresholds below the EOQ need no test: the EOQ already earns that price.
Bulk discount example in AED when holding cost moves with price
When the holding cost is a percentage of price, a discount lowers Ch as well, so each price band has its own EOQ. A distributor in the UAE uses 24,000 units a year, pays AED 300 per order and AED 40 a unit, and holding costs 10% of price a year. Discounts are 2% from 2,000 units and 3% from 4,000.
- At list price Ch = AED 4.00 and EOQ = sqrt(2 x 300 x 24,000 / 4) = 1,897.37 units. Total = AED 960,000 + 3,794.73 + 3,794.73 = AED 967,589.47.
- At 2,000 units the price is AED 39.20 and Ch = AED 3.92. That band's own EOQ, 1,916.63, is below 2,000, so test the threshold: AED 940,800 + 3,600 + 3,920 = AED 948,320.
- At 4,000 units the price is AED 38.80 and Ch = AED 3.88. Total = AED 931,200 + 1,800 + 7,760 = AED 940,760.
Here the largest discount wins, saving AED 26,829.47 a year against the plain EOQ, because purchases are big next to ordering and holding costs. The calculator runs the same band-by-band test on any list of discounts, and the table under the result shows each line.
How do you calculate EOQ in Excel?
Excel has no EOQ function, but the formula is one line. Put annual demand in B1, the cost per order in B2 and the holding cost per unit per year in B3, then enter:
=SQRT(2*B2*B1/B3)
With 40,000, 25 and 2 it returns 1,000. Add =B1/B4 for orders a year (with the EOQ in B4), =B1/B4*B2 for annual ordering cost and =B4/2*B3 for annual holding cost. If the holding cost is a percentage, write B3 as =15%*B5 with the price in B5. For a discount test, put each candidate order size in its own row and compute =B1*price+B1/Q*B2+Q/2*B3 beside it, then pick the smallest with =MIN(). Google Sheets accepts the same formulas.
How do demand, ordering cost and holding cost change the EOQ?
Because of the square root, the EOQ moves less than its inputs. Doubling annual demand raises it by about 41%, not 100%:
| Annual demand | EOQ (Co $25, Ch $2) |
|---|---|
| 20,000 | 707.11 |
| 40,000 | 1,000.00 |
| 80,000 | 1,414.21 |
| 160,000 | 2,000.00 |
Ordering cost. A higher Co pushes toward fewer, bigger orders: at $100 an order the default EOQ doubles to 2,000. Holding cost. A higher Ch pushes the other way: at $4 a unit the EOQ falls to 707.11, and at $1 it rises to 1,414.21. Price. With Ch as an amount, price has no effect on the EOQ itself, only on total cost; with Ch as a percentage, a dearer unit is costlier to hold, so the EOQ falls. Total cost. Ordering plus holding grows with the square root of demand too: at 80,000 units it is $2,828.43, not $4,000.
Common EOQ mistakes in exams and in practice
- Mixing time periods. Annual demand needs an annual holding cost. A monthly demand figure with a yearly Ch gives an EOQ that is far too small.
- Using the full order as the inventory held. Holding cost is charged on average inventory, Q / 2, not on Q.
- Forgetting purchase cost in a discount question. The discount only shows up in purchases, so leaving them out means a discount can never win.
- Keeping Ch fixed when it is a percentage. A cheaper unit is cheaper to hold, so recompute Ch at each discounted price.
- Counting fixed costs as ordering costs. A buyer's salary is paid whatever the number of orders, so it does not belong in Co.
- Testing thresholds below the EOQ. The EOQ already qualifies for those prices; test only the thresholds above it.
What the EOQ calculator leaves out, and a glossary
The model assumes steady, known demand, a constant price apart from the discounts you enter, delivery of the whole order at once and no stock-outs. It does not set a reorder level, add buffer stock or handle a batch produced gradually rather than delivered in one go; that last case uses the economic batch quantity, which adds a production-rate term. Real demand is seldom so even, so treat the EOQ as a reference point. For the cash that inventory ties up, the working capital calculator turns inventory into days of cost of sales.
EOQ: the order size with the lowest yearly ordering plus holding cost. Ordering cost (Co): the cost of placing and receiving one order. Holding cost (Ch): the cost of keeping one unit in stock for a year. Average inventory: half the order size when stock runs down evenly. Lead time: the gap between placing an order and receiving it. Reorder level: the stock level that triggers the next order. Buffer stock: extra inventory kept against late deliveries or demand spikes. Bulk discount: a lower unit price for orders above a set size.
Frequently asked questions
What is the EOQ formula?
EOQ = sqrt(2 x Co x D / Ch), where Co is the cost of one order, D is annual demand in units and Ch is the cost of holding one unit for a year. With Co of $25, demand of 40,000 and Ch of $2, the EOQ is 1,000 units.
How do you find the number of orders per year from the EOQ?
Divide annual demand by the EOQ. With 40,000 units a year and an EOQ of 1,000, the business places 40 orders a year. Dividing 365 by the number of orders gives the days between orders, here about 9.1.
What is the total cost at the EOQ?
Annual ordering cost plus annual holding cost, which are equal at the EOQ, plus the purchase cost of the year's units. For the default figures that is $1,000 + $1,000 + $200,000 = $202,000. Ordering plus holding alone can also be found as sqrt(2 x Co x D x Ch).
How do you include a quantity discount in an EOQ calculation?
Work out total annual cost, purchases included, at the EOQ and at each discount threshold above it, then choose the lowest. Bigger orders earn a cheaper price but cost more to hold, so the answer depends on the size of the discount against the extra holding cost.
Why is holding cost based on half the order quantity?
Stock arrives as a full order and is used up evenly until the next delivery, so on average half an order is held. Holding cost is therefore Q / 2 x Ch. If a buffer stock is kept as well, its full holding cost is added on top.
What costs go into the cost of placing an order?
Only costs that rise with the number of orders: processing the purchase order, delivery charges per order, receiving and inspection. Fixed costs, such as a purchasing department's salaries, stay the same whatever the order pattern and are left out.
What happens to the EOQ if demand doubles?
It rises by the square root of 2, about 41%. The default EOQ of 1,000 units becomes 1,414.21 when demand goes from 40,000 to 80,000. The number of orders a year rises too, from 40 to about 57.
Should the EOQ be rounded to a whole number?
In practice orders are whole units or whole packs, and rounding barely changes the cost because the curve is flat near its lowest point. In an answer, show the unrounded figure first, then round, and state which one the cost figures use.
How do you calculate EOQ in Excel?
Enter =SQRT(2*B2*B1/B3) with annual demand in B1, the cost per order in B2 and the holding cost per unit per year in B3. There is no built-in EOQ function. Google Sheets uses the same formula.
What are the limitations of the EOQ model?
It assumes steady, known demand, a fixed price, a whole order delivered at once and no stock-outs. Real demand varies, so businesses add buffer stock and set a reorder level, and they adjust for supplier pack sizes and storage limits.
Courses where inventory cost decisions come up
ACCA KL Management Accounting-MA Online Course for Exam Preparation
Exam-focused preparation for the ACCA Management Accounting paper, covering costing, budgeting, variance analysis, performance measurement, and investment appraisal techniques.
See what the course coversACCA SL Financial Management-FM Online Course for Exam Preparation
Exam-focused preparation for the ACCA Financial Management paper, covering investment appraisal, cost of capital, risk management, working capital, and valuations.
See what the course coversACCA SL Performance Management-PM Online Course for Exam Preparation
Exam-focused preparation for the ACCA Performance Management paper, covering costing techniques, budgeting systems, variance analysis, performance measurement, and decision-making.
See what the course coversSources and review
Last reviewed 13 November 2026 by the NIFM Academy editorial team. Next review by 13 November 2027.