Paritian

Work & Productivity

Newsvendor Model Calculator (How Much to Order for Uncertain Demand)

The best quantity to order for a product you can only buy once before demand is known, from the price, cost, leftover value and the average and spread of demand.

Results

Best quantity to order 214
Critical ratio (chance of not running out) 63.6 %
Extra above average demand 14
Expected sales lost 9.9
Expected units left unsold 23.9
Expected profit 1235

What this tool does

The newsvendor problem balances two mistakes: ordering too little loses the margin on every sale you miss, ordering too much loses the difference between cost and what leftovers fetch. The best order is the quantity at which the chance of not running out equals the critical ratio, margin divided by margin plus loss — so a high-margin item should be ordered above average demand and a low-margin one below it. Demand is assumed normal, and the 'extra above average' is the safety stock that pays for itself. The model works well for perishable, seasonal or one-shot goods.

Formula

critical ratio = (price − cost) ÷ (price − salvage) · best order Q* = μ + z σ, z = Φ⁻¹(critical ratio)

Variables

SymbolMeaningUnit
prSelling price per unit—
coCost per unit—
svValue of an unsold unit (salvage)—
muAverage demand—
sgStandard deviation of demand—
QBest quantity to order—
CRCritical ratio (chance of not running out)%
BFExtra above average demand—
LSExpected sales lost—
LFExpected units left unsold—
EPExpected profit—

Worked example

  • Selling price per unit12
  • Cost per unit5
  • Value of an unsold unit (salvage)1
  • Average demand200
  • Standard deviation of demand40
  • Best quantity to order214
  • Critical ratio (chance of not running out)63.6 %
  • Extra above average demand14
  • Expected sales lost9.9
  • Expected units left unsold23.9
  • Expected profit1235

Limitations

  • The result is an estimate based only on the values you type. Real situations often include factors this calculator does not know about.
  • The tool works with whatever currency you use for the inputs; it does not convert between currencies.