Potenz

Reorder Points and Safety Stock, With the Arithmetic

The reorder point formula, where safety stock comes from, a worked example with real numbers, and the three situations where the standard formula quietly misleads you.

6 October 2026 · 9 min read

The question a reorder point answers

Not how much to order — that is a separate calculation. A reorder point answers when: at what on-hand quantity do you place the next order, so that stock arrives before you run out?

Everything else follows from one observation. Between placing an order and receiving it, you keep selling. The stock you have when you order has to cover demand across that whole gap.

The formula

The first term is demand during lead time: what you expect to sell while waiting. If you sold exactly the average every day and the supplier delivered in exactly the promised time, that term alone would be the right answer and you would hit zero on the morning the delivery arrived.

Neither of those is true, which is what the second term is for. Safety stock is the buffer against the two things that vary: demand being higher than average, and the lead time being longer than promised.

Why average demand is not enough

The trap is that demand during lead time is an average, and roughly half of all lead-time windows will exceed it. Sizing to the average means stocking out about half the time you reorder — which is nobody's intended service level.

Safety stock buys down that probability. How far you buy it down is a commercial decision, expressed as a service level: the proportion of replenishment cycles in which you do not run out. 95% is a common default. 99% costs considerably more stock for the last four points, which is the trade-off being made.

Service levelZMeaning
90%1.28Stock out in roughly 1 cycle in 10
95%1.65Stock out in roughly 1 cycle in 20
98%2.05Stock out in roughly 1 cycle in 50
99%2.33Stock out in roughly 1 cycle in 100

The standard formula, where demand varies and lead time is fixed, is: safety stock = Z × standard deviation of daily demand × square root of lead time. The square root is not arbitrary — variance adds across independent days, so standard deviation grows with the root of the number of days, not with the days themselves.

A worked example

A component with the following history:

  • Average daily demand: 40 units
  • Standard deviation of daily demand: 12 units
  • Supplier lead time: 9 days
  • Target service level: 95%, so Z = 1.65

Demand during lead time is 40 × 9 = 360 units.

Safety stock is 1.65 × 12 × √9 = 1.65 × 12 × 3 = 59.4, so 60 units rounded up.

The reorder point is 360 + 60 = 420 units. When on-hand falls to 420, you order. On an average run you receive the delivery with about 60 units left; on a bad run the buffer absorbs it.

Note what moving the service level does. At 99%, safety stock becomes 2.33 × 12 × 3 = 84 units. Four points of service level cost 24 units of permanent stock — carried, insured, and at risk of obsolescence all year.

When lead time varies too

Usually the bigger source of variability, and the one the simple formula ignores. A supplier quoting 9 days who actually delivers between 7 and 20 will hurt you far more than demand noise does.

With both varying, safety stock = Z × √[(lead time × variance of demand) + (average demand² × variance of lead time)].

Take the same component, with lead time averaging 9 days and a standard deviation of 3 days. The first term is 9 × 144 = 1,296. The second is 1,600 × 9 = 14,400. The total is 15,696, whose square root is about 125. Safety stock is 1.65 × 125 = 207 units.

The other half: how much to order

The reorder point fires. Now how many? Ordering the reorder point itself is a common and expensive confusion — they answer different questions.

The textbook answer is the economic order quantity, the batch size where the cost of ordering and the cost of carrying balance: EOQ = √(2 × annual demand × cost per order ÷ annual carrying cost per unit).

Take the same component. Annual demand of 40 a day over 250 working days is 10,000 units. Say 45 to raise and receive an order, and carrying cost of 2.40 a unit a year. EOQ = √(2 × 10,000 × 45 ÷ 2.40) = √375,000, about 612 units.

So the policy reads: when stock falls to 420, order about 600. Roughly sixteen orders a year.

Where EOQ genuinely misleads is when its assumptions fail: steady demand, a fixed ordering cost, and no quantity breaks. If the supplier discounts at 1,000 units, compare total annual cost at the break against total at the EOQ rather than trusting the formula — the discount frequently wins.

Continuous review versus min/max

Everything above assumes continuous review: the system watches on-hand and fires the moment it crosses the point. That needs accurate perpetual inventory, which not every operation has.

The common alternatives:

PolicyTriggerSuits
Continuous (reorder point)On-hand crosses the pointAccurate perpetual stock; important items
Min/maxOn-hand hits min; order up to maxSimple to operate; a good default for C items
Periodic reviewA fixed day; order up to a targetConsolidated supplier deliveries; manual counts

Periodic review carries one trap worth naming. Because you can only order on review days, the buffer must cover demand across the review interval plus the lead time, not the lead time alone. Reviewing fortnightly on a 9-day lead time means sizing for 23 days, not 9 — and a policy converted from continuous review without that adjustment will stock out roughly every other cycle.

Most operations end up with a mix, assigned by value. Continuous review with calculated safety stock for the items that matter, min/max for the long tail, and periodic review wherever deliveries are consolidated by supplier rather than by item.

Where the formula quietly misleads

Three cases. All are common, and in each the arithmetic still produces a confident number that is wrong.

Lumpy demand. The formula assumes demand is roughly normally distributed. For an item that sells nothing for three weeks and then 400 units when one customer orders, the mean and standard deviation describe a pattern that does not exist. Such items need a different treatment — order against the actual order book, or hold a buffer sized to a single customer order rather than to statistics.

Seasonality and trend. Average daily demand computed over twelve months is wrong in both directions for a seasonal item: too high going into the quiet period, too low going into the peak. Either recompute on a rolling window short enough to track the season, or set reorder points by season explicitly.

Correlated failures. The maths assumes demand spikes and supplier delays are independent. They often are not — the event that raises everyone's demand is frequently the same event that stretches every supplier's lead time. Formula-derived safety stock is sized for ordinary noise, not for the correlated case, which is a question about dual sourcing rather than about buffer size.

Reviewing them

A reorder point is not a constant. It is derived from demand and lead time, both of which drift. Recompute at least quarterly, and immediately after any change of supplier or any sustained shift in demand.

The common failure is not a wrong formula. It is a correct reorder point computed in 2023 and never revisited, quietly sized for a demand pattern and a supplier that no longer exist.

Written against the modules on this site. Every figure in the demonstrations is sample data.

All guides