Economic Order Quantity: Calculate It, Then Test It Against MOQ
Economic order quantity is the order size that minimises yearly ordering plus holding cost, found as the square root of 2DS divided by H. Compare it with the supplier's minimum order quantity.
By Praveen Nune, Co-Founder & CEO · Updated 24 Oct 2026

Key takeaways
- The EOQ for an item is √(2 × annual demand × cost per order ÷ holding cost per unit per year). In our worked example it is 849 units, with yearly ordering and holding costs of about ₹25,456 each.
- Ordering anywhere from 0.8 to 1.3 times the EOQ adds at most 3.5% to yearly cost. An ordering or holding cost estimate that is wrong by a factor of two adds only 6.1%, so measure roughly and move on.
- The MOQ is what hurts. In the example, a 1,500-unit minimum costs ₹8,488 (16.7%) more per year than the EOQ, and a discount of about 0.28% on annual purchases pays for it.
- The EOQ assumes steady demand and one item per order. For erratic demand, expiry dates or price breaks, use a forecast for D, cap the order at what you sell before expiry, and cost each break quantity in the sheet.
In this article
- 1What is the economic order quantity formula, and how do you calculate it in Excel?
- 2How do you work out economic order quantity for one item in rupees?
- 3How do you measure ordering cost and holding cost without guessing?
- 4How wrong can your EOQ inputs be before it costs you?
- 5What should you order when the supplier's MOQ is above your EOQ?
- 6When does economic order quantity stop working?
- 7How do we turn order sizes into purchase orders in Arka Inventory?
- 8Frequently asked questions
The quantity a formula gives you is seldom the quantity you can order. Suppliers sell in minimums, cartons come in fixed counts and a truck carries what it carries. A buyer who calculates 849 units may end up ordering 1,000 or 1,500.
That gap is the real question behind an economic order quantity (EOQ) calculation. The formula takes a minute in Excel. Deciding what to do when the supplier's minimum order quantity (MOQ) is higher than the answer is where money is won or lost.
This page gives you a one-item sheet that does both steps and a worked example in rupees. It also gives you a test we ran on how wrong your inputs can be. The test shows that rough cost estimates are good enough, while an MOQ well above the EOQ is expensive. The sheet's break-even discount tells you whether a supplier's terms are worth accepting. You will also see why a 1,000-unit minimum costs about 1.4% extra while a 1,500-unit minimum costs 16.7%.
What is the economic order quantity formula, and how do you calculate it in Excel?
The economic order quantity formula is Q = √(2DS ÷ H). 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. In Excel, =SQRT(2*D*S/H) returns the order size that minimises yearly ordering plus holding cost.
Ford W. Harris developed the model in 1913 (Wikipedia: Economic order quantity). It assumes demand is constant, each order arrives in full when stock reaches zero, the cost per order is fixed whatever the quantity, and each order covers one item.
The logic is simple. Ordering cost per year is D ÷ Q × S, which falls as orders get bigger. Holding cost per year is Q ÷ 2 × H, because stock falls from Q to zero and averages half of Q. The total is lowest where the two are equal.
How do you work out economic order quantity for one item in rupees?
Fill in five inputs and the sheet returns the EOQ, how often to order and what the order costs you per year. The example below uses a stock-keeping unit (SKU), meaning one distinct item you stock, with illustrative inputs of ours.
Our example: demand D is 12,000 units a year, landed unit cost is ₹250, the holding rate is 24% of unit cost, and the cost per order S is ₹1,800.
| Cell | Label | Value or formula | Result |
|---|---|---|---|
| B1 | Annual demand D (units) | input | 12,000 |
| B2 | Landed unit cost (₹) | input | 250 |
| B3 | Holding rate per year | input | 24% |
| B4 | Holding cost per unit H (₹) |
| 60 |
| B5 | Cost per order S (₹) | input | 1,800 |
| B6 | EOQ (units) |
| 848.5, order 849 |
| B7 | Orders per year |
| 14.1 |
| B8 | Days between orders |
| 25.8 |
| B9 | Yearly cost at EOQ (₹) |
| 50,912 |
| B10 | Supplier MOQ (units) | input | 1,500 |
| B11 | Quantity you would order |
| 1,500 |
| B12 | Yearly cost at that quantity (₹) |
| 59,400 |
| B13 | Extra cost versus EOQ (₹) |
| 8,488 |
| B14 | Break-even discount |
| 0.28% |
At the EOQ, ordering cost is 14.14 × ₹1,800 and holding cost is 424.3 × ₹60. Both come to about ₹25,456, which is why the total is ₹50,912. Rows B10 to B14 are the MOQ test. A 1,500-unit minimum raises yearly cost from ₹50,912 to ₹59,400, an extra ₹8,488 (16.7%), which a discount of 0.28% on ₹30 lakh of purchases would cover.
How do you measure ordering cost and holding cost without guessing?
Cost per order is everything that happens once per purchase order, whatever its size. Holding cost per unit is unit cost times a yearly rate covering capital, storage and losses. Estimate each from your own books, because the formula only repeats back what you feed it.
Cost per order (S). List the steps of one purchase and cost each. Our illustrative ₹1,800 is: buyer time ₹350, approval ₹150, the fixed part of freight and unloading per delivery ₹800, receiving and the goods receipt note (the record that confirms what arrived) ₹300, and invoice matching and payment ₹200. Freight that rises with quantity does not belong in S, and the landed unit cost (price plus duty, freight and handling) belongs in B2. Our landed cost calculation page shows how to build it.
Holding rate (H ÷ unit cost). Our illustrative 24% is capital 10% (₹25), storage 8% (₹20) and insurance, shrinkage and obsolescence 6% (₹15), which sums to ₹60 per unit. Take the capital rate from your own cash credit or working capital limit, as stated in the sanction letter (the bank's written approval of your limit and rate). A cash credit limit is a bank facility you draw on as needed. For context, the Reserve Bank of India raised its policy repo rate by 25 basis points to 5.50% on 7 October 2026, and the rate you actually pay is set by your bank.
To check storage, multiply rent by the floor area each unit occupies, including its share of aisles. Weighted average transacted warehouse rents in 2025 ran from ₹18.6 per sq ft per month in Ahmedabad to ₹28.0 in Pune, with Bangalore at ₹23.2 and Hyderabad at ₹21.5 (Knight Frank, India Warehousing Market Report 2025). These are weighted averages of transactions Knight Frank recorded in 2025, so your godown may differ. At Hyderabad's ₹21.5, a year costs ₹258 per sq ft (21.5 × 12). A unit that takes 0.08 sq ft costs about ₹20.6 a year to store, which matches the ₹20 above.
Demand (D). Use the units you expect to buy over the next twelve months. If the item is growing or fading, a forecast is better than last year's consumption. Use history only when demand has been steady.

How wrong can your EOQ inputs be before it costs you?
Not very. Total cost at any order size Q, relative to the minimum, is ½ × (EOQ ÷ Q + Q ÷ EOQ). This is an algebraic identity, so you can verify our table with a calculator.
| Order size as a multiple of EOQ | Extra yearly cost |
|---|---|
| 0.5× | +25.0% |
| 0.7× | +6.4% |
| 0.8× | +2.5% |
| 1.2× | +1.7% |
| 1.3× | +3.5% |
| 1.5× | +8.3% |
| 2× | +25.0% |
| 3× | +66.7% |
The EOQ moves with the square root of S and H. If you misjudge either one by a factor of two, the order size is off by about 1.41 times and total cost rises by only 6.1%. A factor of four wrong adds 25.0%.
We also recalculated the example with different inputs. Holding rates of 15%, 24% and 35% give EOQs of 1,073, 849 and 703 units. A cost per order anywhere from ₹600 to ₹5,000 gives an EOQ between 490 and 1,414 units. An eight-fold range in ordering cost moves the answer by less than three times.
Our recommendation is to measure S and H to within a factor of two and stop refining them. The flat curve is a property of the formula. NC State's tutorial makes a related point (2011): EOQ gives a good indication of whether current order quantities are reasonable even when its assumptions hold only roughly. Recalculate when demand, supplier terms or your borrowing rate change by a lot. A 20% shift in order size costs under 2%.
What should you order when the supplier's MOQ is above your EOQ?
Our rule of thumb: order the MOQ if it is within about 1.3 times the EOQ, because the penalty is then about 3.5% or less (see the table of order sizes above). Beyond that, the extra holding cost grows quickly, so compare it with the discount you are being offered. In our example, 1.3 × 849 is about 1,104 units, where the penalty is still under 4%.
The table below holds the example's inputs fixed: 12,000 units, ₹250 landed unit cost, ₹60 holding cost, ₹1,800 per order, and ₹30 lakh (₹30,00,000) of yearly purchases. The last column is the discount on all 12,000 units that would pay for the extra stock.
| Order quantity | Yearly cost (₹) | Extra versus EOQ (₹) | Extra % | Break-even discount |
|---|---|---|---|---|
| 849 (EOQ) | 50,912 | none | none | none |
| 1,000 | 51,600 | 688 | 1.4% | 0.02% |
| 1,500 | 59,400 | 8,488 | 16.7% | 0.28% |
| 2,000 | 70,800 | 19,888 | 39.1% | 0.66% |
| 3,000 | 97,200 | 46,288 | 90.9% | 1.54% |
The break-even is the extra cost divided by yearly purchases. It is approximate, because cheaper stock also costs a little less to hold. If the supplier offers more than the break-even and you have the cash, shelf space and shelf life for the extra stock, take it. If not, negotiate. Options are a smaller minimum, or a blanket purchase order, where one agreement covers deliveries released over time, if the supplier agrees.
Round the final quantity to the carton, pallet or truck. If cartons hold 50 units, order 850 (17 cartons), not 849.
Real orders face limits the formula ignores, such as the supplier's production run, your credit limit, a design revision mid-run and truck capacity. Treat each as a constraint on Q, then cost the nearest feasible quantity in the sheet.
When does economic order quantity stop working?
The EOQ stops working when its assumptions fail: demand is not steady, the price changes with quantity, several items share one order or truck, or stock can expire. The model assumes constant demand, full-lot delivery and one item per order (Wikipedia).
Our approach in each case:
- Erratic or seasonal demand: use a forecast for D and recalculate each season.
- Expiry dates: cap the order at what you sell before the date, even if the EOQ is higher.
- Price breaks: cost each break quantity in the sheet, as in the MOQ table above.
- Timing: the EOQ says how much, not when. Use the reorder point formula, which includes safety stock (extra stock held against delays or demand spikes), for when.

How do we turn order sizes into purchase orders in Arka Inventory?
We handle the step after the sheet: raising the right orders without double-ordering. In Arka Inventory you can plan purchases from real orders, forecasts and stock, and schedule purchase requisitions or purchase orders, with stock across locations and inventory on order in view.
Low-stock and back-order alerts come from our Basic plan upwards. Landed cost tracking, which gives the landed unit cost your sheet needs, is on our Enterprise plan. Arka Inventory is cloud software built natively on Salesforce. As of October 2026, Basic costs $199 a month and Advance $499 a month, billed yearly, and Enterprise pricing is flexible; see Arka Inventory pricing.
To see your purchasing in Arka Inventory, request a demo on our contact sales page and ask which plan fits.
See your purchasing in Arka Inventory
Frequently asked questions
Yes, in the sheet on this page. The textbook formula takes holding cost H as a fixed amount, so a price change alone does not move it (Wikipedia). When you set H as a percentage of unit cost, as the sheet does (H = unit cost × holding rate), a higher price raises H and lowers the EOQ. At ₹250 and 24% the EOQ is 849 units; at ₹300 it is about 775.
Sources
- 1.Wikipedia: Economic order quantity: formula, 1913 origin, assumptions, price independence of the basic model
- 2.Reserve Bank of India, Monetary Policy Statement 2026-27, Resolution of the Monetary Policy Committee, 5 to 7 October 2026: policy repo rate raised by 25 basis points to 5.50%
- 3.Knight Frank, India Warehousing Market Report 2025: weighted average transacted warehouse rents, 2025 (page 10)
- 4.NC State Supply Chain Resource Cooperative: EOQ tutorial (28 January 2011): usefulness of the model when assumptions hold only roughly
- 5.Our own calculations: the worked example, flat-curve table, input-sensitivity figures and MOQ table use the inputs stated on this page (illustrative, not benchmarks) and the formulas shown.



