Supply Chain & Logistics Management

Inventory Models: EOQ, Newsvendor, and Safety Stock

Module 3

Inventory keeps supply chains moving when demand, supply, and lead times do not line up, and this lesson works through the classic models that decide how much and when to order: EOQ, the newsvendor, and the Q and P review systems.

1. Introduction to Inventory Management

Inventory Planning and Managing Uncertainty: module overview infographic

Inventory is a stock of goods that buffers imperfect synchronization between demand and production. It sits at the intersection of operations, marketing, and finance.

DepartmentCore InterestOperational Impact
OperationsFlow and stabilityProcess flow, service levels, disruptions
MarketingCustomer experienceProduct availability and lost sales
FinanceCapital efficiencyTies up cash; hits the balance sheet
StageDefinitionExamples
Raw Materials and Purchased ItemsInputs waiting for productionSteel coils, fabric, packaging material
Work in Process (WIP)Partially completed goods on the shop floorA smartphone or vehicle mid-assembly
Finished Goods / MerchandiseCompleted products ready for saleRetail shelves, fulfillment centers, dark stores
MRO SuppliesMaterials that support operations but do not enter the productTools, lubricants, spare parts, cleaning supplies
Pipeline Inventory / Goods in TransitCapital tied up moving between stagesGoods on a truck, ship, or between supplier and warehouse
Function of InventoryPurposeExample
Meet Anticipated DemandSatisfy steady, predictable average demandSupermarket staples like milk, bread, rice
Smooth ProductionBuild in low-demand periods for high-demand peaksStocking fans before summer
Decouple OperationsBuffer between steps to prevent system-wide shutdownsWIP buffers when a machine goes down
Reduce Stockout RiskSafety stock against demand or lead-time uncertaintyBuffers against weather delays or supplier failures
Economies of ScaleLarger batches cut per-unit ordering and transport costs (cycle inventory)Batch production, container-load shipping
Hedge Price IncreasesSpeculative early buying before price risesBuying commodity metals ahead of hikes
Permit OperationsProduction and transport are not instantaneousUnavoidable WIP and pipeline inventory
Quantity DiscountsLarger orders secure lower unit costsBulk purchasing

Average inventory equals the average demand rate times the average time a unit spends in the system.

ƒLittle's Law
I=D×TI = D \times T
Where: I is average inventory, D is the average demand or flow rate, and T is the average time a unit spends in the system.

Worked example. If units spend 10 days in the system and the demand rate is 5 units/day:

I=5×10=50 unitsI = 5 \times 10 = 50 \text{ units}

Downsides and Metrics

Excess inventory ties up capital, requires space and handling, risks shrinkage, spoilage, obsolescence, and forces markdowns. The objective is satisfactory customer service at reasonable inventory cost.

MetricCalculationInterpretation
Inventory TurnoverInventory Turnover=Annual COGSAverage Inventory Investment\text{Inventory Turnover} = \frac{\text{Annual COGS}}{\text{Average Inventory Investment}}High turns = efficient use, but pushing too high causes stockouts; low-margin groceries need high turns, high-margin items tolerate lower
Days of InventoryDays sales can continue if replenishment stopsHigh = excess stock; low = stockout risk
ƒInventory turnover
Inventory Turnover=Annual COGSAverage Inventory Investment\text{Inventory Turnover} = \frac{\text{Annual COGS}}{\text{Average Inventory Investment}}
Where: average inventory investment is the average value of stock held over the year, measured at cost.

Effective management requires a tracking system, a reliable forecast (with error), lead times and their variability, cost estimates, and a classification system.

Counting SystemDefinitionAdvantagesDisadvantages
PeriodicPhysical count at fixed intervalsSimpler, less tracking sophisticationNo continuous visibility; needs extra buffers between reviews
PerpetualContinuous electronic tracking (barcodes, POS)Excellent visibility, fast reactionHigh record-keeping cost; still needs physical verification for shrinkage

These environments align with the two classic review models: continuous review (Q system) and periodic review (P system).

2. Inventory Costs and ABC Classification

Cost TypeDefinitionCharacteristicsNotation
Purchase CostAmount paid per unitLargest absolute cost, but does not drive frequency unless discounts applyC
Holding (Carrying) CostCost of storing inventory over timeInterest/cost of capital, rent, insurance, taxes, spoilage, shrinkage, obsolescenceh = I × C (I = carrying rate)
Ordering (Setup) CostCost of placing and receiving an order or preparing a runFixed per order regardless of sizeK
Shortage (Stockout) CostPenalty when demand exceeds stockLost sales, lost goodwill, backorder expediting; hardest to measureCu or penalty rates
ƒAnnual holding cost per unit
h=I×Ch = I \times C
Where: I is the annual carrying rate as a fraction of unit value and C is the purchase cost per unit.

ABC Classification

Firms with thousands of SKUs prioritize control based on annual monetary value (annual demand × unit cost).

ClassFraction of ItemsShare of Annual ValueControl Strategy
A10% to 20%60% to 70%Close attention, tight control, frequent reviews, accurate forecasting, frequent cycle counting
BMiddle group~20% to 30%Moderate control between the extremes
C50% to 60%10% to 15%Simple control, less frequent reviews, bulk ordering, larger safety margins

Cycle counting rotates physical counts: A items frequently, B moderately, C rarely.

Example: Item 8 alone is 10% of items but 52.7% of annual monetary value (Class A). Items 3, 6, and 1 are 30% of items and 40.8% of value (Class B). The remaining 6 items are 60% of items but only 6.5% of value (Class C).

3. Economic Order Quantity (EOQ)

The EOQ model (Ford Harris, 1915) analyzes cycle stock under deterministic conditions. Assumptions: single SKU; known deterministic annual demand; continuous constant demand rate; known constant lead time; instantaneous single-delivery replenishment; constant unit cost; constant holding cost; no shortages; no quantity discounts.

Inventory follows a sawtooth: jumps to Q on delivery, declines linearly to zero.

ƒTotal annual cost under EOQ
TC(Q)=C×D+K×DQ+h×Q2\mathrm{TC}(Q) = C \times D + K \times \frac{D}{Q} + h \times \frac{Q}{2}
Where: C is unit purchase cost, D is annual demand, K is the fixed cost per order, h is the annual holding cost per unit, and Q is the order quantity.

Purchase cost C × D is constant. Ordering cost K × D/Q falls as Q rises. Holding cost h × Q/2 rises linearly with Q (average cycle inventory Q/2). Setting dTC/dQ = 0:

ƒEconomic order quantity
Q=2DKhQ^* = \sqrt{\frac{2\mathrm{DK}}{h}}
Where: D is annual demand, K is the fixed ordering cost, and h is the annual holding cost per unit.

The second derivative is positive (a minimum). At Q*, annual holding cost exactly equals annual ordering cost.

Worked example. Given: D = 9,600 tires/year, K = $75 per order, h = $16 per tire per year, 288 working days.

Q=2×9,600×7516=300 tiresQ^* = \sqrt{\frac{2 \times 9{,}600 \times 75}{16}} = 300 \text{ tires}
Orders per year=9,600300=32\text{Orders per year} = \frac{9{,}600}{300} = 32
Cycle length=28832=9 workdays\text{Cycle length} = \frac{288}{32} = 9 \text{ workdays}
Calculation
Annual holding+annual ordering=2,400+2,400=4,800\text{Annual holding} + \text{annual ordering} = 2{,}400 + 2{,}400 = 4{,}800

Answer: Q* = 300 tires, 32 orders per year, a 9-workday cycle, and $4,800 total annual holding + ordering cost.

Reorder Point (ROP) with Lead Time

The inventory replenishment cycle under uncertainty
  • L = 0: ROP = 0, orders arrive instantly.
  • L < cycle time T: ROP = daily demand × L.
  • L > T: pipeline orders exist; use leftover lead time L' = L mod T.
ƒReorder point under certainty
ROP=d×L\mathrm{ROP} = d \times L
Where: d is average demand per day and L is the lead time in days, replaced by the leftover lead time L' = L mod T when the lead time exceeds one order cycle.

Worked example (L < T). With L = 5 days:

d=9,600288=33.33 tires/dayd = \frac{9{,}600}{288} = 33.33 \text{ tires/day}
ROP=33.33×5=166.67167 tires\mathrm{ROP} = 33.33 \times 5 = 166.67 \approx 167 \text{ tires}

Worked example (L > T). For L = 15 days:

L=15mod9=6L' = 15 \bmod 9 = 6
ROP=33.33×6=199.98200 tires\mathrm{ROP} = 33.33 \times 6 = 199.98 \approx 200 \text{ tires}

4. Newsvendor Model

When unsold products become obsolete or heavily marked down at period end, inventory cannot carry forward: each period is a one-shot decision.

CostDefinitionFormula
Overage Cost (Co)Net loss from one extra unsold unitCo=CSC_o = C - S (C = purchase cost, S = salvage value)
Underage Cost (Cu)Lost margin from being one unit shortCu=PCC_u = P - C (P = retail price)
ƒOverage cost
Co=CSC_o = C - S
Where: C is the purchase cost per unit and S is the salvage value of an unsold unit.
ƒUnderage cost
Cu=PCC_u = P - C
Where: P is the retail price, so C_u is the margin lost on each unit of unmet demand, becoming P - C + g when a goodwill penalty g applies.

Worked example. Given: C = 30 rupees, P = 40, S = 10; demand equally likely 6, 7, 8, 9, or 10 (probability 0.2 each).

Co=3010=20C_o = 30 - 10 = 20
Cu=4030=10C_u = 40 - 30 = 10

Since Co > Cu, overstocking mistakes cost twice as much as understocking, biasing the order below the demand mean of 8. Building the profit matrix over all demand-quantity pairs, expected profit peaks at Q* = 7 copies with expected profit 64 rupees (Q = 6 gives 60, Q = 8 gives 62, Q = 9 gives 54, Q = 10 gives 40).

Answer: Q* = 7 copies, expected profit 64 rupees.

Derivation and the Critical Fractile

The (Q+1)-th unit sells if D > Q (gain Cu) and stays unsold if D ≤ Q (loss Co). Setting the expected payoff to zero using F(Q) = P(D ≤ Q):

ƒCritical fractile (newsvendor optimum)
F(Q)=CuCu+CoF(Q^*) = \frac{C_u}{C_u + C_o}
Where: F is the cumulative distribution of demand, so Q* is the smallest quantity whose probability of covering demand reaches the critical ratio.

This is the optimal Cycle Service Level: the probability of not stocking out. With a goodwill penalty g, Cu becomes P - C + g.

Discrete application (Hemant)
Critical ratio=1030=0.33\text{Critical ratio} = \frac{10}{30} = 0.33

F(6) = 0.2, F(7) = 0.4; the smallest Q with F(Q) ≥ 0.33 is Q* = 7.

Worked example. Given: C = $0.25, P = $0.75, S = $0.10; weekly demand normal with μ = 11.73, σ = 4.74.

Co=0.15C_o = 0.15
Cu=0.50C_u = 0.50
Critical ratio=0.500.65=0.77\text{Critical ratio} = \frac{0.50}{0.65} = 0.77

Z for 0.77 ≈ 0.74.

Q=μ+Z×σ=11.73+0.74×4.74=15.24Q^* = \mu + Z \times \sigma = 11.73 + 0.74 \times 4.74 = 15.24

Answer: Q* = 15.24, rounded up to 16 copies to meet the target service level.

5. The Q Model (Continuous Review)

Manages longer shelf-life products in multi-period replenishment with demand uncertainty.

ƒInventory position
Inventory Position=On-Hand+On-Order (Pipeline)Backorders\text{Inventory Position} = \text{On-Hand} + \text{On-Order (Pipeline)} - \text{Backorders}
Where: on-order is stock already ordered but still in the pipeline, and backorders are unfilled customer demand.

Monitoring inventory position instead of on-hand prevents duplicate ordering while pipeline deliveries are in transit.

Safety stock is the buffer above expected demand that reduces stockout risk. In continuous review it protects only during the lead time L (the vulnerable protection period).

Q* comes from the EOQ formula using expected annual demand.

ƒReorder point under demand uncertainty
ROP=Expected Demand During Lead Time (DDLT)+Safety Stock\mathrm{ROP} = \text{Expected Demand During Lead Time (DDLT)} + \text{Safety Stock}
Where: DDLT is the mean demand over the lead time and safety stock is the buffer covering variability during that protection period.
ƒSafety stock (continuous review)
Safety Stock=Z×σDDLT\text{Safety Stock} = Z \times \sigma_{\mathrm{DDLT}}
Where: Z is the service-level factor from the standard normal table and sigma DDLT is the standard deviation of demand over the lead time.
ƒStandard deviation of lead time demand
σDDLT=σweekly×L\sigma_{\mathrm{DDLT}} = \sigma_{\text{weekly}} \times \sqrt{L}
Where: L is the lead time in weeks, assuming independent weekly demand.

Worked example. Given: weekly demand normal (μ = 10, σ = 8), K = $45, h = $12/unit/year, L = 3 weeks, 70% service level.

D=10×52=520 units/yearD = 10 \times 52 = 520 \text{ units/year}
Q=2×520×451262.5, so 63 unitsQ^* = \sqrt{\frac{2 \times 520 \times 45}{12}} \approx 62.5, \text{ so } 63 \text{ units}
DDLT=10×3=30\mathrm{DDLT} = 10 \times 3 = 30
σDDLT=8×313.86\sigma_{\mathrm{DDLT}} = 8 \times \sqrt{3} \approx 13.86

With Z(70%) = 0.55:

Safety Stock=0.55×13.86=7.62\text{Safety Stock} = 0.55 \times 13.86 = 7.62
ROP=30+7.62=37.6238 units\mathrm{ROP} = 30 + 7.62 = 37.62 \approx 38 \text{ units}

Answer: order 63 units whenever the inventory position falls to 38 units.

6. The P Model (Periodic Review)

The P model is triggered by a fixed time interval T rather than an inventory threshold. The order-up-to level S is fixed, and the order quantity varies each review.

ƒP model order quantity
q=SInventory Positionq = S - \text{Inventory Position}
Where: S is the order-up-to level and the inventory position is measured at the moment of review.

Because inventory is not monitored continuously, a stockout can go unnoticed until the next review, so the system must be protected for the entire T + L window. Since T + L > L, periodic review requires higher safety stock than continuous review for the same service level.

ƒProtection period (periodic review)
Protection Period=T+L\text{Protection Period} = T + L
Where: T is the fixed review interval and L is the replenishment lead time.
ƒSafety stock (periodic review)
Safety Stock=Z×σD×T+L\text{Safety Stock} = Z \times \sigma_D \times \sqrt{T + L}
Where: sigma D is the standard deviation of demand per period and Z is the service-level factor.
ƒOrder-up-to level
S=μD×(T+L)+Z×σD×T+LS = \mu_D \times (T + L) + Z \times \sigma_D \times \sqrt{T + L}
Where: mu D is mean demand per period, so S covers expected demand over the whole protection period plus the safety buffer.

Worked example. Given: daily demand normal (μ = 60, σ = 7), L = 6 days, K = 10 INR, h = 0.5 INR/unit/year, 365 days; the current policy orders 1,200 units at IP = 360.

DDLT=360\mathrm{DDLT} = 360
σDDLT=7×6=17.46\sigma_{\mathrm{DDLT}} = 7 \times \sqrt{6} = 17.46

The current ROP of 360 gives

Z=36036017.46=0Z = \frac{360 - 360}{17.46} = 0

a 50% cycle service level. For 95% (Z = 1.65):

D=21,900D = 21{,}900
Q=2×21,900×100.5=936 unitsQ^* = \sqrt{\frac{2 \times 21{,}900 \times 10}{0.5}} = 936 \text{ units}
Safety Stock=1.65×17.46=28.8\text{Safety Stock} = 1.65 \times 17.46 = 28.8
ROP=388.8388 units\mathrm{ROP} = 388.8 \approx 388 \text{ units}

Answer: Q* = 936 units with ROP = 388 units for a 95% service level.

Worked example. Given: daily demand (μ = 10, σ = 3), T = 30 days, L = 14 days, 98% service (Z = 2.05), current inventory 150.

S=10×44+2.05×3×44=440+6.15×6.63481 unitsS = 10 \times 44 + 2.05 \times 3 \times \sqrt{44} = 440 + 6.15 \times 6.63 \approx 481 \text{ units}
q=481150=331 unitsq = 481 - 150 = 331 \text{ units}

Answer: order 331 units this period.

7. Pooling Strategies

Pooling combines demand streams, product variants, or delays commitment so statistical variability partially cancels, reducing safety stock for the same service level.

StrategyDefinitionExamplesTrade-offs
Location PoolingConsolidate N decentralized sites into centralized hubsCentral warehouse serving multiple regionsComplexity, higher transport costs, slower response
Product PoolingConsolidate variants into a universal designO'Neill wetsuits merged surfer and diver SKUsReduced differentiation, lost price segmentation
Lead-Time Pooling (Postponement)Delay final differentiation until demand is realizedPaint tinting at retail, Benetton dyeing after knittingNeeds modular designs, higher up-front costs
ƒDecentralized safety stock
Decentralized safety stock=N×Z×σ\text{Decentralized safety stock} = N \times Z \times \sigma
Where: N is the number of separate stocking locations, Z the service-level factor, and sigma the demand standard deviation at one location.
ƒSquare root law (centralized safety stock)
Centralized safety stock=N×Z×σ\text{Centralized safety stock} = \sqrt{N} \times Z \times \sigma

Centralization cuts safety stock by a factor of √N (independent demands).

Correlation effect: for two locations the pooled variability depends on how their demands move together.

ƒPooled standard deviation with correlation
σtotal=σ×2×(1+ρ)\sigma_{\text{total}} = \sigma \times \sqrt{2 \times (1 + \rho)}
Where: rho is the correlation between the two locations' demands, so rho = 0 recovers the square root law and rho = 1 removes the pooling benefit entirely.

Positive correlation (demands move together) increases variance and erodes pooling benefits; negative correlation offsets demand and maximizes benefits.

Memory hook: Pooling mnemonic "LPL": Location, Product, Lead-time. Benefits shrink as correlation ρ rises; √N is the ceiling with independent demands.

8. Exam Essentials

FeatureContinuous Review (Q)Periodic Review (P)
TriggerInventory hits ROPTime interval T elapses
Order QuantityFixed (Q)Variable (q = S - IP)
Protection PeriodLT + L
Safety StockLowerHigher (longer protection)
Tracking CostHigher (perpetual system)Lower (review-time checks)
FeatureNewsvendorEOQ
Time HorizonSingle period, one-shotMulti-period cycle
PerishabilityHigh (obsolete after period)Low (carries forward)
Core Trade-offOverage (Co) vs. Underage (Cu)Ordering (K) vs. Holding (h)
Safety Stock LogicEmbedded in critical fractileAdded explicitly to ROP

Must-know: SKU; Inventory Position=On-Hand+On-OrderBackorders\text{Inventory Position} = \text{On-Hand} + \text{On-Order} - \text{Backorders}; Co=CSC_o = C - S; Cu=PCC_u = P - C; critical fractile CuCu+Co\frac{C_u}{C_u + C_o}; cycle service level; postponement; square root law.