01The idea in one paragraph
Many quantities in a supply chain are uncertain: how long a shipment takes, what freight will cost next quarter, whether a supplier delivers on time, how much customers will order. A deterministic model plugs in one value for each and returns one answer. A Monte Carlo model describes each uncertain input as a range with probabilities, draws one value from each range, computes the outcome, and repeats this thousands of times. The collection of outcomes shows not only what is likely but how bad things can get and how often.
The method was developed in the 1940s by Stanislaw Ulam and John von Neumann at Los Alamos, and named after the casino in Monaco because it relies on random draws. Today it is standard in finance, engineering and insurance, and increasingly in supply chain planning, because computers can run millions of scenarios in seconds.
02Why averages mislead
Supply chains are full of asymmetries. A shipment can arrive a few days early, but it can arrive weeks late. A supplier can deliver all the parts or none. When outcomes are asymmetric, the outcome you get from plugging in average inputs is not the average outcome.
Consider a product that needs two components, each arriving on time 90% of the time. Planning with "on time" for each looks reasonable. But production can start only when both arrive, and the chance that both are on time is 0.9 × 0.9 = 81%. With five components at 90% each, it falls to 59%. A deterministic plan based on typical values for each input misses this completely; a simulation captures it automatically.
03Try it: lead time with disruption risk
The simulator below models a lead time with normal day-to-day variability plus a small chance of a disruption that adds a long delay. Change the chance of disruption and watch how little the median moves while P95 jumps.
Each run draws a normal lead time and, with the chosen probability, adds a disruption delay of 50 to 150% of the value you set.
04Choosing distributions
The distribution is the shape you give to each uncertain input. Choosing it well matters more than the number of runs.
| Input | Typical shape | Why |
|---|---|---|
| Transit and lead times | Right-skewed (lognormal, gamma) | Cannot be much shorter than normal, can be much longer |
| Disruption events | Bernoulli or Poisson occurrence × size | Rare, but large when they happen |
| Commodity and freight prices | Lognormal, often with jumps | Prices are positive and move in percentages |
| Demand | Normal for high volumes, Poisson or negative binomial for low volumes | Depends on the number of orders |
| Exchange rates | Normal on log changes over short horizons | Moves in percentages around the current rate |
| Supplier on-time rate | Beta | Bounded between 0 and 1 |
Where do the parameters come from? First from your own data: delivery records, invoices, order history. Then from public data: freight indices, commodity prices, port statistics, the history of past disruptions. When data is thin, a simple triangular distribution (minimum, most likely, maximum) agreed with the people who know the supplier is far better than a single number.
05Correlation: the part most models skip
Shocks travel together. When a strait closes, freight rates rise, transit times lengthen and insurance premiums go up at the same time. When energy prices spike, the prices of steel, glass, fertilisers and plastics follow. If your simulation draws these inputs independently, it will understate the bad cases, because it rarely draws them all bad together.
Two practical ways to handle it:
- Drive correlated inputs from a common scenario. Simulate "the route is closed for N weeks" and derive freight, transit time and insurance from N.
- Use a correlation matrix estimated from historical data, and draw the inputs jointly.
At the economy level, input-output models provide the structure: they describe how a price shock in one sector raises costs in the sectors that buy from it.
06How many runs are enough
The error of a Monte Carlo estimate shrinks with the square root of the number of runs. Going from 1,000 to 100,000 runs makes the estimate about ten times more precise. Tail percentiles need more runs than the median, because fewer runs land in the tail.
In practice, the uncertainty in your input assumptions is usually much larger than the sampling noise at 10,000 runs. Spend effort on the inputs, not on more runs.
07Reading the results
A Monte Carlo result is a distribution. Summarise it with a few numbers and one chart:
- P50 (median): half of the runs are better, half worse. Use it for budgets and plans.
- P90 / P95: only 10% or 5% of runs are worse. Use it for buffers: safety stock, credit lines, contract clauses.
- Probability of a threshold: for example, the probability that gross margin falls below 20%, or that a line stops for more than five days. Often the clearest number for management.
- The histogram or fan chart: shows whether the risk is a wide spread of moderate outcomes or a long tail of rare, severe ones. The responses are different.
| If the result shows… | It suggests… |
|---|---|
| Narrow distribution, median slightly worse | Adjust prices and budgets; little structural risk |
| Wide distribution, symmetric | Variability problem: work on lead-time reliability and buffers |
| Long right tail (rare severe cases) | Disruption problem: dual sourcing, alternative routes, insurance |
08A worked example
A distributor imports a product with a 30-day normal lead time (±4 days), a 15% chance that a shipment is hit by a route disruption, and a disruption delay averaging 14 days. Simulating 10,000 shipments gives a median of about 30 days, but a P95 of about 46 days. If safety stock covers only normal variability, roughly one shipment in seven, the disrupted ones, arrives a week or more after the buffer has run out. Sizing stock on P95 costs about 16 extra days of demand; dual-sourcing 30% of the volume from a closer supplier may cost less and removes most of the tail. The simulation lets you compare the two on the same footing. Our safety stock guide shows how to turn these numbers into stock levels.
FAQFrequently asked questions
What is Monte Carlo simulation in supply chain management?
It is a technique that runs a supply chain model thousands of times with uncertain inputs, such as lead times, prices and disruptions, drawn from realistic ranges, to produce a distribution of outcomes instead of a single forecast.
How many iterations does a Monte Carlo simulation need?
For most business decisions, 10,000 runs give stable medians and P90/P95 values. Rare-event percentiles such as P99.9 need 100,000 or more.
What does P90 mean?
P90 is the value that 90% of simulated outcomes do not exceed. For a lead time, a P90 of 41 days means nine shipments in ten arrive within 41 days.
Is Monte Carlo simulation accurate?
It is as good as the model and the input distributions. Its strength is that it shows the range and probability of outcomes; its main risk is ignoring correlations between inputs, which understates bad cases.
Can I run Monte Carlo simulation in Excel?
Yes, using random functions and data tables, but it becomes slow and hard to maintain with many inputs and correlated shocks. Dedicated tools run tens of thousands of scenarios in seconds and keep the model readable.