EOQ Formula Explained (Without the Textbook)

What each part of the EOQ formula actually means in business terms, why the formula takes the shape it does, and the adjustments people usually forget to make.

6 min readBeginner

Most explanations of the EOQ formula hand you the equation and move straight to plugging in numbers. That’s fine if all you want is an answer, but it means the formula stays a black box — you don’t know why it looks the way it does, so you can’t tell when it’s giving you a number you shouldn’t trust. This is the version with the reasoning left in.

The Formula

EOQ = √((2 × D × S) / H)

Three inputs, one output. Here’s what each one means in practice, not just in notation.

D: Annual Demand

D is how many units you expect to sell or use over the year. The number itself is simple to plug in — the judgment call is whether it’s a trustworthy number. EOQ assumes demand is roughly steady across the year. If you sell a fairly constant amount month to month, your annual total divided by 12 is a reasonable stand-in for what any given month will look like, and the formula will behave well.

If your demand swings hard — a holiday product that does half its annual volume in six weeks, or a fashion item with a three-month life — an annual average hides exactly the information you need. The formula doesn’t know your December looks nothing like your July; it just sees one number. That’s the single biggest reason EOQ output looks “wrong” to people: not bad math, but a demand number that was never steady enough to average in the first place.

S: Setup (Ordering) Cost

S is what it costs you, in dollars, to place and receive a single order — independent of how many units are in it. This is often the hardest number to actually pin down, because it’s rarely a line item on any invoice. It’s an aggregate of purchasing staff time, receiving and inspection labor, freight or expediting fees, and the administrative overhead of matching a purchase order to an invoice. How to Calculate EOQ: Step-by-Step covers exactly how to build this number from what finance and procurement actually track.

The reason this cost matters at all is that it’s fixed per order, not per unit — place one order for 10 units or 10,000, and the setup cost is the same. That’s what creates the incentive to order in bigger batches: spreading a fixed cost over more units lowers the cost per unit. Push that logic too far, though, and holding cost takes over.

H: Annual Holding (Carrying) Cost per Unit

H is what it costs to keep one unit sitting in inventory for a year — storage space, insurance, obsolescence risk, and the return you’re giving up on the cash tied up in that unit instead of it earning interest or funding something else. Unlike S, this cost scales directly with how much you’re holding: hold twice as much, pay roughly twice as much to hold it (see the Carrying Cost calculator for a standalone breakdown). As a rule of thumb, holding cost typically runs 20-30% of a unit’s value per year, though that varies a lot by industry and how perishable or obsolescence-prone the item is.

Why the Square Root?

This is the part most explanations skip, and it’s worth seeing once. Total annual cost at any order size Q is the sum of two pieces: ordering cost, (D/Q) × S (number of orders times cost per order), and holding cost, (Q/2) × H (average inventory on hand times cost per unit — you average Q/2 because inventory ramps from a full order down to zero, over and over). Graph total cost against Q and you get a U-shape: too small a Q and ordering cost dominates; too large and holding cost dominates. The minimum of that curve — found with a bit of calculus, if you want to see it — lands exactly at Q = √(2DS/H).

The square root has a real consequence worth internalizing: EOQ scales sub-linearly with demand. Double your annual demand and EOQ doesn’t double — it only grows by about 41% (√2 ≈ 1.41). A bigger operation gets some economies of scale in ordering, but not in direct proportion to its size. That’s a genuinely useful intuition to carry into a conversation with finance about why order sizes don’t need to grow at the same rate revenue does.

Common Misconceptions

“A bigger EOQ means I’m being inefficient.” Not necessarily — a large EOQ usually just means your setup cost is high relative to your holding cost (imported goods with expensive customs and freight are a common example). The formula is doing its job either way; a large number isn’t a red flag by itself.

“EOQ accounts for volume discounts.” It doesn’t, in its basic form. The formula assumes one fixed unit price. If your supplier offers a lower price at higher order quantities, you need to separately compare the total cost (including the discount) at each price break against the EOQ-driven total cost — the MOQ Optimizer is built for exactly that comparison.

“Once calculated, EOQ stays valid.” Only until D, S, or H changes meaningfully — and all three drift over time. Demand shifts with the market, ordering costs change as processes or freight rates change, holding costs move with warehouse rent and interest rates. Treat EOQ as something you revisit periodically, not a number you set once.

Where This Goes Next

Once the formula makes sense conceptually, the real work is gathering trustworthy numbers for D, S, and H from your own operation — that’s the subject of How to Calculate EOQ: Step-by-Step. And once you have a number, the harder question is what to do when it collides with a supplier minimum or your actual warehouse space — see What Changed? EOQ Decision-Making in Practice. Or skip straight to the EOQ Calculator and see the formula work on your own numbers.

Put This Into Practice

Read Next