Economic order quantity (EOQ) is the order size that minimizes the total yearly cost of ordering and holding a product. The EOQ formula is EOQ = √(2DS / H), where D is annual demand in units, S is the cost of placing one order and H is the cost of holding one unit for a year. EOQ sets how much to order; the reorder point sets when. Together they form one rule: when stock falls to the reorder point, place an order for the economic order quantity.
- EOQ is the order size where annual ordering cost and annual holding cost come out equal, so their combined cost is as low as possible.
- EOQ = √(2DS / H): D is annual demand in units, S the cost per order and H the yearly holding cost per unit. Keep units and time periods consistent.
- In the worked example, 14,600 units a year, Rs 1,500 per order and Rs 100 holding cost give an EOQ of about 662 units; with 63 units of safety stock the reorder point is 463. When stock falls to 463, order 662.
- eCommerce breaks EOQ's assumptions: demand spikes with sale events and splits across channels, suppliers set minimums and price breaks, and space and shelf life cap the order.
- In the example, a 1,000-unit minimum costs roughly Rs 5,700 a year more than EOQ, while a 2% price break at 1,500 units saves about Rs 95,000 a year.
- Recalculate EOQ when demand, costs or supplier terms change, and before every peak season.
SECTION 01EOQ in one paragraph
In brief: Economic order quantity (EOQ) is the order size that minimizes the total yearly cost of ordering and holding a product. Order too often and you pay more in ordering costs; order too much at once and you pay more to store it. EOQ is the balance point, where the two costs are equal.
Every purchase order has a fixed cost: raising and approving it, booking freight, receiving and checking the goods. Every unit held in stock has a running cost: storage, insurance, the cash tied up and the risk it never sells. Small, frequent orders keep stock low but multiply ordering costs. Large, rare orders cut ordering costs but fill the warehouse. EOQ finds the order size between the two that costs least in total.
SECTION 02The EOQ formula, term by term
In brief: The EOQ formula is EOQ = √(2DS / H), where D is annual demand in units, S is the cost of placing one order and H is the cost of holding one unit for a year. Keep the units consistent: annual demand with annual holding cost, both in the same currency.
EOQ = √( 2 × D × S ÷ H )
| Term | What it means | Units | Where to find it |
|---|---|---|---|
| D | Annual demand | Units per year | Your demand forecast for the SKU |
| S | Cost to place and receive one order | Currency per order | Purchasing time, freight booking, receiving and quality checks |
| H | Cost to hold one unit for a year | Currency per unit per year | Usually a percentage of unit cost: storage, capital, insurance, shrinkage and obsolescence |
The most common mistake is mixing time periods: using monthly demand with an annual holding cost gives an EOQ that is far too small. The second is underestimating S, the full cost of an order, which also makes EOQ too small.
SECTION 03A worked example: one SKU, from EOQ to reorder point
In brief: A SKU selling 40 units a day has annual demand of 14,600 units. With an ordering cost of Rs 1,500 and a holding cost of Rs 100 per unit per year, EOQ is about 662 units, ordered roughly every 17 days. Add 63 units of safety stock, and the reorder point is 463 units.
Take the same SKU used in our safety stock guide: it sells an average of 40 units a day, and the supplier takes 10 days to deliver.
| Step | Calculation | Result |
|---|---|---|
| Annual demand (D) | 40 units a day × 365 days | 14,600 units a year |
| Ordering cost (S) | Purchasing, freight booking, receiving and checks | Rs 1,500 per order |
| Holding cost (H) | 25% of a Rs 400 unit cost | Rs 100 per unit per year |
| EOQ | √(2 × 14,600 × 1,500 ÷ 100) = √438,000 | About 662 units |
| Orders a year | 14,600 ÷ 662 | About 22 orders, one every 17 days or so |
| Annual ordering cost | 22 orders × Rs 1,500 | About Rs 33,100 |
| Annual holding cost | (662 ÷ 2) × Rs 100 | About Rs 33,100 |
| Safety stock | From the safety stock guide, at 95% service | 63 units |
| Reorder point | (40 × 10) + 63 | 463 units |
| Average stock held | (662 ÷ 2) + 63 | About 394 units |
Two things to notice. At the EOQ, annual ordering cost and annual holding cost come out equal, about Rs 33,100 each: that is the check that the math is right. And together the three numbers give a complete rule: when stock falls to 463, order 662.
Note: The numbers are illustrative. The math works the same in any currency.
SECTION 04Reorder point and safety stock, briefly
In brief: EOQ sets how much to order; the reorder point sets when. The reorder point is average daily demand times lead time, plus safety stock, the buffer that covers demand and delivery surprises. Together with EOQ they form one rule: when stock falls to the reorder point, order the economic order quantity.
Reorder point = (average daily demand × lead time in days) + safety stock
Safety stock can be set with a simple worst-case formula or a statistical one based on your target service level. Both, with worked examples and guidance on which to use, are covered in our safety stock guide. In India the reorder point is often called the reorder level; the formula is the same.
SECTION 05When EOQ breaks in eCommerce
In brief: EOQ assumes steady demand, a fixed lead time, unlimited storage, no shelf life and one price at any quantity. eCommerce breaks most of these: demand spikes with sale events and shifts between channels, suppliers set minimum order quantities and price breaks, warehouses fill up and products expire. Treat EOQ as a starting point, then adjust.
- Demand is not steady. Festive seasons, marketplace sale events and launches make annual demand a poor guide for any single order. Recalculate EOQ with the demand forecast for the coming period, not last year's average. Our guide to inventory forecasting covers how.
- Demand is split across channels. EOQ works on total demand for the SKU, so add up every marketplace, your site and quick commerce before calculating.
- Suppliers set minimums. A minimum order quantity above your EOQ overrides it.
- Price breaks change the math. A discount for larger orders can make a bigger order cheaper overall.
- Space and shelf life cap the order. An order bigger than your storage, or bigger than you can sell before expiry, is not economic at any price.
- Packs and cases. Suppliers ship in cases or cartons; round EOQ to the nearest pack size.
SECTION 06Adjusting for MOQs and price breaks
In brief: If the supplier's minimum order quantity is above your EOQ, order the minimum and accept a slightly higher total cost. If a larger order unlocks a lower unit price, compare total yearly cost, including the purchase price, at the EOQ and at the break quantity, and choose the lower. Then cap the result by storage and shelf life.
A minimum order quantity above EOQ
If the supplier insists on 1,000 units, you order 1,000. Yearly ordering cost falls to about Rs 21,900 (14.6 orders), but holding cost rises to Rs 50,000 (500 units on average), a total of about Rs 71,900 against Rs 66,200 at the EOQ. The minimum costs you roughly Rs 5,700 a year, which is worth knowing before you negotiate.
A price break
Now suppose the supplier offers 2% off, Rs 392 instead of Rs 400, for orders of 1,500 units. Compare the full yearly cost, purchase price included:
| Order 662 at Rs 400 | Order 1,500 at Rs 392 | |
|---|---|---|
| Purchase cost (14,600 units) | Rs 58,40,000 | Rs 57,23,200 |
| Ordering cost | Rs 33,100 | Rs 14,600 |
| Holding cost (25% of unit cost) | Rs 33,100 | Rs 73,500 |
| Total yearly cost | About Rs 59,06,200 | About Rs 58,11,300 |
The bigger order saves about Rs 95,000 a year, so the break is worth taking, provided you have the space for 1,500 units and can sell them well within their shelf life.
SECTION 07Formulas cheat sheet
In brief: The core inventory formulas are economic order quantity for how much to order, the reorder point and safety stock for when, annual ordering and holding cost to check the trade-off, and inventory turnover and days of inventory to measure how fast stock moves. Keep units and time periods consistent across all of them.
| Formula | Calculation | Answers |
|---|---|---|
| Economic order quantity | √(2 × annual demand × cost per order ÷ holding cost per unit per year) | How much to order |
| Reorder point | (Average daily demand × lead time) + safety stock | When to order |
| Safety stock (basic) | (Maximum daily sales × maximum lead time) − (average daily sales × average lead time) | How big a buffer to hold |
| Annual ordering cost | (Annual demand ÷ order quantity) × cost per order | What ordering costs a year |
| Annual holding cost | (Order quantity ÷ 2) × holding cost per unit per year | What holding costs a year |
| Number of orders a year | Annual demand ÷ order quantity | How often you order |
| Inventory turnover | Cost of goods sold ÷ average inventory value | How fast stock moves |
| Days of inventory | 365 ÷ inventory turnover | How long stock sits |
For the bigger picture of how these fit into running stock across channels and warehouses, see our guide to eCommerce inventory management.
SECTION 08How to calculate EOQ, step by step
In brief: Forecast annual demand for the SKU across every channel, work out the full cost of placing one order, set the yearly holding cost per unit, apply the formula, check that ordering and holding costs come out equal, then adjust for minimum order quantities, price breaks, pack sizes, storage and shelf life.
- Forecast annual demand for the SKU, adding up every channel.
- Work out the cost per order: purchasing time, freight booking, receiving and checks.
- Set the holding cost per unit per year, usually 20 to 30% of unit cost.
- Apply the formula: √(2 × demand × cost per order ÷ holding cost).
- Check the result: yearly ordering cost and holding cost should be roughly equal.
- Adjust for minimum order quantities, price breaks, pack sizes, storage and shelf life.
- Recalculate when demand, costs or supplier terms change, and before every peak season.
SECTION 09Where EasyEcom fits
In brief: EOQ is only as good as the demand figure behind it. EasyEcom brings sales from every marketplace, storefront and quick-commerce channel into one stock record, so annual and seasonal demand per SKU is complete, and low-stock alerts tell buyers when a SKU reaches its reorder point.
Most EOQ errors come from the inputs: demand counted on one channel and not the others, or stock figures that do not match the shelf. EasyEcom's order management system keeps one stock pool across every channel and warehouse, synced in 60 seconds, so the demand and stock that feed EOQ, safety stock and the reorder point come from one reliable record.
Want your reorder points and order quantities to rest on real multichannel demand? Book a demo.
Frequently asked questions
What is economic order quantity?
Economic order quantity (EOQ) is the order size that minimizes the total yearly cost of ordering and holding a product. Ordering often raises ordering costs; ordering a lot at once raises holding costs. EOQ is the quantity where the two are balanced, so the combined cost is as low as possible.
What is the EOQ formula?
EOQ = √(2DS / H), where D is annual demand in units, S is the cost of placing one order and H is the cost of holding one unit for a year. For example, with 14,600 units a year, Rs 1,500 per order and Rs 100 holding cost per unit, EOQ is about 662 units.
How do you calculate EOQ?
Multiply annual demand by the cost per order, double it, divide by the yearly holding cost per unit, and take the square root. Then check that yearly ordering and holding costs come out roughly equal, and adjust the result for minimum order quantities, price breaks, pack sizes, storage and shelf life.
When does EOQ not work?
EOQ struggles when its assumptions fail: demand that swings with seasons and sale events, suppliers with minimum order quantities or price breaks, limited storage, short shelf life or demand split across many channels. In those cases, use EOQ as a starting point, recalculate with forecast demand and adjust for the constraints.
How do EOQ, reorder point and safety stock work together?
Safety stock is the buffer against surprises. The reorder point, average daily demand times lead time plus safety stock, tells you when to order. EOQ tells you how much. Together they form one rule: when stock falls to the reorder point, place an order for the economic order quantity.
What are the assumptions of the EOQ model?
The classic EOQ model assumes demand is known and steady, lead time is fixed, each order arrives in full at once, ordering and holding costs are constant, there are no quantity discounts and stockouts do not happen. Real eCommerce breaks several of these, which is why EOQ needs adjusting in practice.
What is the difference between EOQ and MOQ?
EOQ is the order size that is cheapest for you, based on your demand and costs. MOQ, the minimum order quantity, is the smallest order your supplier will accept. If the MOQ is above your EOQ, you must order the MOQ; knowing the extra cost helps you negotiate.