Economic order quantity (EOQ) calculator

Find the order size that keeps the combined cost of placing orders and holding stock at its lowest. Use it for SKUs with fairly steady demand that you reorder regularly from the same supplier.

Calculate economic order quantity

Enter costs in one currency. Holding cost is per unit, per year.

Result
Economic order quantity (units)
775
Orders per year
15.5
Annual ordering + holding cost
1,549.19

Calculated in your browser. Nothing you enter is sent or stored.

The formula

EOQ = √(2 × annual demand × cost per order ÷ holding cost per unit per year)

Annual demand (D)
Units you expect to sell or consume in a year. Start from the last 12 months of shipments and adjust for known changes, such as a new sales channel.
Cost per order (S)
The fixed cost of one purchase order regardless of size: raising and approving it, flat freight charges, receiving and putaway labor, and invoice handling.
Holding cost per unit per year (H)
What it costs to keep one unit in stock for a year: capital tied up, storage space, insurance, shrinkage and obsolescence. Often estimated as a percentage of unit cost.

Worked example

Say brake pad SKU BRK-220 sells 12,000 units a year, each purchase order costs $60 to place and receive, and holding one unit for a year costs $4. EOQ = √(2 × 12,000 × 60 ÷ 4) = √360,000 = 600 units. That means 12,000 ÷ 600 = 20 orders a year. Annual ordering cost is 20 × $60 = $1,200, and holding cost is (600 ÷ 2) × $4 = $1,200, for a total of $2,400. At the EOQ the two costs are equal, which is a quick way to check the result.

How to use EOQ in purchasing

Treat EOQ as a target, then round it to how your supplier sells: full cases, layers or pallets, and at least the minimum order quantity. The total cost curve is flat near the optimum. In the example, ordering 500 units costs $2,440 a year and 700 units costs about $2,429, both less than 2% above the minimum. Rounding to a convenient pack size costs little.

EOQ answers how much to order. The reorder point calculator answers when.

Common EOQ mistakes

Small input errors move the answer less than you might expect because of the square root, but these do distort it.

  • Counting only warehouse rent as holding cost and ignoring capital, shrinkage and obsolescence, which inflates the EOQ.
  • Putting per-unit costs, such as per-unit freight or duty, into cost per order.
  • Mixing units: annual demand in eaches but holding cost per case.
  • Ordering more short-dated stock than you can sell before it expires. For those items, shelf life caps the order size.

When the EOQ formula breaks down

EOQ assumes steady demand, fixed costs, one delivery per order and no price breaks. Quantity discounts are the most common exception. When a supplier drops the unit price above a threshold, compare total annual cost, including the purchase price, at the EOQ and at each break.

It also ignores storage limits and shared orders. If ten SKUs from one supplier must fill a container together, plan the order as a group. Seasonal and perishable items need order sizes set against the selling window, not a yearly average.

Getting EOQ inputs from your own data

Annual demand should come from recorded shipments, and cost per order from the real effort of raising, receiving and putting away a delivery. In NextStock, the supplier catalog stores supplier SKUs, pack sizes, costs, lead times and minimum order quantities, so the constraints you round EOQ to sit next to the SKU. Purchase orders go through approval before they are sent to the supplier.

Frequently asked questions

Short, direct answers to the questions warehouse teams ask most.

Is EOQ still useful if demand is not perfectly steady?

Yes, as a starting point. Because of the square root, a 20% error in annual demand moves EOQ by only about 10%. For SKUs with moderate swings, EOQ gives a sensible order size that you then round to pack sizes. For highly seasonal or promotional items, plan each order against the demand expected before the next delivery.

How do I estimate holding cost?

Add up the yearly cost of carrying inventory: the return you could earn on the cash, storage space and handling, insurance, shrinkage, damage and stock that becomes obsolete. Divide by average inventory value to get a percentage, then multiply by each SKU's unit cost. Revisit it when storage costs or interest rates change.

What if the supplier's minimum order is above my EOQ?

Order the minimum and accept the higher holding cost, or negotiate a lower minimum. Also check whether the item can share an order with other SKUs from the same supplier. If the minimum is far above EOQ for a slow or short-dated item, calculate how long the stock will sit before you commit.

A little more order. A lot more possibility.

Make space for a better way to run your warehouse.

Get started with NextStockFree during open beta. No card needed.