Practical warehouse decisions

EOQ with MOQ and pack-size constraints

Translate a theoretical quantity into an order a supplier can accept.

WarehouseOps editorial · Updated 20 September 2026

What EOQ balances

Annual ordering cost is annual demand ÷ order quantity × cost per order. Annual holding cost is order quantity ÷ 2 × annual holding cost per unit. The basic model assumes steady demand, constant unit price and no quantity discounts or shelf-life constraints.

Worked example

Annual demand 1,200, order cost ₹100 and annual holding cost ₹24 per unit give EOQ = √(2 × 1,200 × 100 ÷ 24) = 100 units. With MOQ 25 and packs of 12, compare 96 and 108. Their relevant annual costs are ₹2,402 and approximately ₹2,407.11. Under these assumptions, choose 96.

A constraint can dominate

If the MOQ becomes 110, the smallest feasible pack multiple is 120. Simply replacing EOQ with MOQ would return 110, which is not a multiple of 12. The calculator respects both constraints.

Before placing the order

Check shelf life, storage, cash, open orders, discounts and supplier calendar. Use the cost comparison as a planning input, not an automatic purchase instruction.

Calculation conventions and corrections · All guides