The Newsvendor Problem
Single-period stochastic inventory · Critical fractile
The canonical single-period stochastic-inventory model: order quantity \(Q\) before observing random demand \(D\), pay for overage and underage afterwards. The optimal order satisfies \(F(Q^{\ast}) = c_u / (c_u + c_o)\) — the critical fractile. Introduced by Edgeworth (1888), formalised by Arrow, Harris & Marschak (1951), and foundational to every retail inventory decision since. Interactive solver with closed-form Normal and empirical variants.
Why it matters
Where the newsvendor shows up in retail · scale of the problem
Where the decision sits
One-shot order · single period · demand uncertain at order time
The newsvendor problem describes a retailer who must commit to a stock quantity before demand is realised, with no opportunity to re-order within the selling season. Classic retail examples: newspapers (the origin), fashion items with a short selling window, event merchandise, perishable groceries, ski-equipment rentals, flu vaccine orders, and fresh-produce shelf stock. The model is a single-period special case of the multi-period stochastic inventory problem; in the retail operations-research literature, it underpins seasonal buying, single-period allocation across stores, and the critical-fractile intuition practitioners carry into every replenishment decision.
Problem & formulation
The critical fractile, derived from first principles
Parameters
| Symbol | Meaning | Unit |
|---|---|---|
| \(p\) | Retail price per unit sold | $ / unit |
| \(c\) | Purchase cost per unit ordered | $ / unit |
| \(v\) | Salvage value of each unsold unit (may be negative for disposal cost) | $ / unit |
| \(c_u = p - c\) | Underage cost — lost margin per stock-out | $ / unit |
| \(c_o = c - v\) | Overage cost — loss per leftover unit | $ / unit |
| \(D\) | Random demand with CDF \(F\) and PDF \(f\) | units |
Decision variable
| Symbol | Meaning | Domain |
|---|---|---|
| \(Q\) | Order quantity (committed before demand is observed) | \(\geq 0\) |
Objective (cost form)
Minimise the expected cost of ordering \(Q\): the underage penalty paid on every unit of demand above \(Q\), plus the overage penalty paid on every unit of stock above \(D\).
Equivalent profit form: \(\displaystyle \max_{Q} \mathbb{E}[\,p \cdot \min(D, Q) + v \cdot (Q - D)^+ - c \, Q\,]\).
First-order condition
Differentiating the expected-cost objective under the distribution of \(D\) and setting the derivative to zero yields the critical-fractile condition:
The optimal service level equals the critical fractile \(\alpha\). Intuition: one more unit costs \(c_o\) (if it goes unsold, probability \(1-F(Q)\)) or saves \(c_u\) (if demand materialises, probability \(F(Q)\))-the two expected effects balance exactly at \(F(Q^{\ast}) = c_u/(c_u+c_o)\).
Closed-form solution (Normal demand)
When demand is \(D \sim \mathcal{N}(\mu, \sigma^2)\), the critical fractile gives a closed-form:
\(\Phi^{-1}\) is the standard-Normal inverse CDF (quantile). For \(\alpha = 0.5\) (c_u = c_o): \(Q^{\ast} = \mu\), order exactly to mean. For \(\alpha = 0.95\): \(Q^{\ast} = \mu + 1.645\,\sigma\).
Empirical-distribution solution
When only a demand sample \(\{d_1, \ldots, d_N\}\) is available, sort ascending and pick the smallest order quantity whose empirical CDF reaches \(\alpha\):
The empirical / sample-average approximation approach — standard when demand is skewed, bounded, or simply unknown in parametric form. See Qin et al. (2011) § 3.
Expected outcomes at \(Q^{\ast}\)
Given the optimal order quantity, classical summaries are:
The service level (cycle-service level) equals \(F(Q^{\ast}) = \alpha\) by construction; the fill rate \(= \mathbb{E}[\text{sales}] / \mathbb{E}[D]\) is generally higher than \(\alpha\).
Real-world → OR mapping
How a retail buyer's vocabulary translates to the newsvendor
| In the shop | In the newsvendor |
|---|---|
| Retail price of the SKU | \(p\) |
| What the retailer pays per unit to the supplier | \(c\) |
| Markdown / clearance value of leftover stock (may be negative for disposal) | \(v\) |
| Lost contribution margin when stocked out (\(= p - c\)) | \(c_u\) |
| Per-unit loss on leftover stock (\(= c - v\)) | \(c_o\) |
| Demand forecast distribution (from history / judgement / ML) | \(F\) |
| How many units to buy before the season starts | \(Q\) |
| Target in-stock service level | \(\alpha = c_u / (c_u + c_o)\) |
Interactive solver
Dial in cost parameters and a Normal forecast; see \(Q^{\ast}\) and the demand density in real time
Under the hood
On Solve, the page computes \(c_u = p - c\), \(c_o = c - v\), and the critical fractile \(\alpha = c_u/(c_u+c_o)\). For the Normal assumption \(D \sim \mathcal{N}(\mu, \sigma^2)\) we evaluate \(\Phi^{-1}(\alpha)\) via the Beasley-Springer-Moro rational approximation (accurate to \(10^{-9}\) across \((0,1)\)) and set \(Q^{\ast} = \mu + \sigma \Phi^{-1}(\alpha)\). Expected lost sales uses the standard-Normal loss function \(L(z) = \phi(z) - z \cdot (1 - \Phi(z))\) to give \(\mathbb{E}[(D-Q^{\ast})^+] = \sigma \, L\bigl(\Phi^{-1}(\alpha)\bigr)\). Everything else (expected leftover, expected profit, fill rate) follows from leftover + sales = \(Q^{\ast}\) and sales + lost = \(D\).
Reading the solution
What a buyer actually does with the output
The two levers the buyer controls
- Margin ratio. A high-margin SKU (\(c_u\) large relative to \(c_o\)) warrants over-stocking: the critical fractile is high and \(Q^{\ast} > \mu\). A low-margin SKU with painful clearance costs (\(c_o\) large) should be under-stocked.
- Forecast uncertainty. For a fixed critical fractile > 0.5, higher \(\sigma\) means a larger safety stock above the mean. Reducing forecast uncertainty (better data, shorter lead time, quick-response buying) directly shrinks \(Q^{\ast}\) without changing the service level — the point of the Fisher-Raman “New Science of Retailing” argument.
Sanity checks the solver answers instantly
- What if the supplier raises the unit cost from $30 to $35? — update \(c\) and rerun; the critical fractile drops and so does \(Q^{\ast}\).
- What if we can negotiate a take-back agreement that raises salvage from $10 to $20? — \(c_o\) shrinks, critical fractile rises, \(Q^{\ast}\) climbs.
- What service level does my current policy imply? — inverting the formula: \(c_u / (c_u + c_o) = F(Q^{current})\). If you've been ordering to a fixed 95% service level, your implicit \(c_u/c_o\) ratio is 19:1 — almost always too aggressive for margin-sensitive SKUs.
Model extensions
From the single-period baseline to the retail-OR variants that matter
Multi-product with budget
Order \(Q_i\) for each of \(N\) SKUs under a shared budget \(\sum_i c_i Q_i \leq B\). Lagrangian relaxation gives a price-weighted critical-fractile condition per SKU; solved via marginal allocation.
OR family →Perishable (grocery) newsvendor
Salvage \(v\) replaced by a disposal cost plus freshness decay. Critical-fractile structure survives but with shrinking effective price. Grocery Perishable Ordering is this variant.
Grocery ordering →Risk-averse (CVaR) newsvendor
Replace expected cost with mean-CVaR or exponential-utility objective. The critical fractile becomes a distorted quantile \(F^{-1}(\tilde{\alpha})\) depending on risk preference. Gotoh & Takano (2007); Choi, Ruszczyński (2008).
Censored demand
Observed sales \(= \min(D, Q_{history})\), not \(D\). Naive-sample newsvendor overfits to the censored distribution; bias-correction via Kaplan-Meier or maximum likelihood restores consistency.
Distribution-free newsvendor
Only \(\mu\) and \(\sigma\) known; pick \(Q\) to minimise worst-case expected cost over all distributions with those moments. Scarf (1958); Gallego & Moon (1993).
Multi-period (s,S) policy
Many-period newsvendor becomes a dynamic-programming problem whose optimal policy is of the \((s, S)\) form. The reorder point \(s\) and order-up-to \(S\) are both newsvendor-flavoured critical-fractile quantities.
Inventory & lot-sizing family →Pricing + ordering (newsvendor with pricing)
Retail price \(p\) becomes a decision alongside \(Q\). Demand is a function of price. Joint optimal \((p^{\ast}, Q^{\ast})\) derived in Petruzzi & Dada (1999).
Markdown optimisation →Data-driven newsvendor
Replace “estimate \(F\), then solve critical fractile” with end-to-end learning (ERM, operational statistics, or neural). Oroojlooyjadid-Snyder-Takac (2020); Qi-Shen (2022).
Key references
Historical origins, textbook foundations, and recent directions
Back to the retail domain
The newsvendor sits in the Product × Operational cell of the 4P decision matrix — the baseline every retail inventory decision is measured against.
Open Retail Landing