Monte Carlo Simulation
Executive Summary
Key Takeaways
- ✓ Monte Carlo simulation builds a distribution of possible outcomes by running many trials, each drawing its inputs from specified probability distributions, rather than producing a single point estimate.
- ✓ It differs from sensitivity analysis (one variable at a time) and scenario analysis (a small number of discrete, named cases) by varying all specified inputs simultaneously across a continuous distribution, across a large number of iterations.
- ✓ The technique is general-purpose — it applies to any model with multiple uncertain inputs, not only to DCF valuation, though DCF is one of its most common financial modelling applications.
- ✓ The output is a full distribution of possible results, typically summarized by percentiles and the probability that the outcome falls below (or above) a specified threshold.
Definition¶
Monte Carlo simulation is a quantitative technique that builds a distribution of possible outcomes by running a large number of trials, each drawing its inputs from specified probability distributions, rather than relying on a single point estimate or a small set of discrete scenarios. Each trial (or iteration) randomly samples a value for every input from its assigned distribution, calculates the resulting output, and repeats the process — typically several thousand times or more — to build up a full picture of how likely different outcomes are, not just what a single "base case" would produce.
Why It Matters¶
Most financial models are built to produce a single point estimate: one NPV, one IRR, one valuation. That single figure necessarily obscures the underlying uncertainty in the inputs that produced it. Sensitivity analysis and scenario analysis each address this partially — one variable at a time, or a handful of coherent alternative cases — but neither directly answers a genuinely probabilistic question, such as "what is the probability this outcome falls below a specific threshold." Monte Carlo simulation exists specifically to answer that class of question, by treating each uncertain input as a probability distribution rather than a single assumed value, and propagating that uncertainty all the way through to a full distribution of possible results.
How Monte Carlo Simulation Works¶
- Identify the key uncertain inputs to the model — the variables whose uncertainty is material enough to warrant explicit probabilistic treatment, rather than being held at a fixed base case assumption.
- Assign a probability distribution to each input — for example, a normal distribution around a central estimate, a triangular distribution defined by a minimum, most-likely, and maximum value, or a uniform distribution across a defined range.
- Run a large number of iterations. In each iteration, a value is randomly drawn from each input's assigned distribution, the model is recalculated using those drawn values, and the resulting output is recorded.
- Aggregate the results across all iterations into a distribution of possible outcomes, from which summary statistics — mean, median, percentiles, and threshold probabilities — are derived.
For i = 1 to N (thousands of iterations):
Draw x1 from Distribution(Input 1)
Draw x2 from Distribution(Input 2)
...
Calculate Output_i = f(x1, x2, ...)
Record the full set of Output_1 ... Output_N as the output distribution
Monte Carlo vs. Sensitivity and Scenario Analysis¶
| Technique | Variables Varied | Basis for Variation | Output |
|---|---|---|---|
| Sensitivity analysis | One at a time | A defined range | Output value at each point in that range |
| Scenario analysis | Several, simultaneously | A small number of discrete, coherent named cases | One output value per named scenario |
| Monte Carlo simulation | All specified inputs, simultaneously | A continuous probability distribution per input, sampled randomly | A full distribution of output values across many iterations |
Monte Carlo simulation differs from the other two in kind, not just degree: it does not choose a small number of specific points or cases in advance. Instead, it defines the shape of uncertainty for each input and lets the simulation itself generate the resulting range and likelihood of outcomes.
Interpreting the Output¶
The raw output of a Monte Carlo simulation is a large set of individual results, one per iteration, typically summarized as:
- Mean or median — the central tendency of the output distribution
- Percentiles (e.g., P10, P50, P90) — the value below which a given percentage of iterations fell
- Probability of exceeding or falling below a threshold — the proportion of iterations producing a result on one side of a specified reference point, such as zero, a required hurdle rate, or a target purchase price
This last statistic is what most clearly distinguishes Monte Carlo from sensitivity or scenario analysis: it can attach an actual probability to an outcome across the full range of plausible input combinations, which neither of the other two techniques can do directly on their own.
Applications in Financial Modelling¶
Monte Carlo simulation is a general-purpose technique, applicable wherever a model depends on several uncertain inputs whose combined effect is of interest. In financial modelling and investment analysis specifically, it is most commonly applied to:
- Capital budgeting and investment appraisal, where it can express the probability that a project's NPV falls below zero, or that its IRR falls below the hurdle rate, described in Risk Analysis in Investment Appraisal.
- DCF valuation, where growth, margin, discount rate, and terminal value assumptions are each modelled as distributions rather than single point estimates. This is a large enough and sufficiently distinct application — with its own considerations around correlated inputs, terminal-value distribution bounds, and practical run-time approaches — that it is addressed as its own dedicated guide: Monte Carlo Simulation for DCF Valuation.
- Project finance and infrastructure cash flow modelling, where demand, cost, and financing assumptions can each carry material, independently modellable uncertainty.
Common Errors¶
| Error | Description | Risk |
|---|---|---|
| Treating correlated inputs as fully independent | Related inputs are drawn without any linkage between them | Output distribution includes implausible input combinations, distorting both tails of the result |
| Too few iterations | Simulation run with a small number of iterations to save run time | Percentile and threshold-probability statistics are unstable and not reproducible |
| Reporting only the mean of the output distribution | The full distribution is discarded in favour of a single summary number | Defeats the purpose of running a simulation in the first place |
| Input distributions chosen without documented justification | Distribution type and parameters left implicit in a tool's default settings | The simulation's assumptions cannot be independently assessed or challenged |
Best Practices¶
Reserve Monte Carlo simulation for questions that are genuinely probabilistic in nature, rather than applying it by default to every model. Document the distribution type and parameters chosen for each simulated input, and disclose whether and how correlation between related inputs has been addressed. Report the full output distribution — not just its mean — including the specific percentiles and threshold probabilities most relevant to the decision being supported.
Continue Reading¶
Related Pillars¶
Related Glossary¶
Related Technical Guides¶
- Risk Analysis in Investment Appraisal
- Monte Carlo Simulation for DCF Valuation — the DCF-specific, applied treatment of this general technique
How OXXON tests thisRun a free structural check with FMAE
Frequently Asked Questions
What is Monte Carlo simulation?
A quantitative technique that builds a distribution of possible outcomes by running a large number of trials, each drawing its inputs from specified probability distributions, rather than relying on a single point estimate or a small set of discrete scenarios.
Where does the name "Monte Carlo simulation" come from?
The technique is named after the Monte Carlo Casino in Monaco, referencing the role of randomness and chance central to the method, a name coined by scientists working on early computational simulations in the 1940s.
How is Monte Carlo simulation different from sensitivity analysis and scenario analysis?
Sensitivity analysis changes one input at a time, holding others constant. Scenario analysis changes several inputs together but only across a small number of discrete, named cases. Monte Carlo simulation instead defines a continuous probability distribution for each key input and draws randomly from all of them simultaneously across a large number of iterations, producing a full distribution of outcomes rather than a handful of points.
Is Monte Carlo simulation specific to DCF valuation?
No, the technique is general-purpose. It applies to any model with multiple uncertain inputs whose combined effect on an output is of interest — capital budgeting decisions, project finance cash flow forecasts, portfolio risk modelling, and DCF valuation specifically among them. The DCF-specific application, including how correlated inputs are handled for that use case, is addressed on its own dedicated guide.
What tools are used to run a Monte Carlo simulation in financial modelling?
Dedicated Monte Carlo add-ins built for Excel, custom VBA or Python implementations, or, for simple illustrative builds, a large helper table of RAND()-based formulas in native Excel, though the latter approach is slow and difficult to audit at scale.
What does the output of a Monte Carlo simulation look like?
A full distribution of calculated values across all iterations, typically summarized using its mean or median, percentiles (such as the 10th and 90th percentile), and the probability that the outcome falls below or above a specified reference threshold.
Related Articles
Monte Carlo Simulation for DCF Valuation
Monte Carlo simulation extends sensitivity and scenario analysis by modelling a full probability distribution of DCF outcomes, rather than a small number of discrete cases, drawing each input from a defined probability distribution — potentially correlated with other inputs — across thousands of iterations. This guide sets out why this differs from and complements the existing sensitivity, scenario, and tornado approaches, how to define input distributions for key DCF drivers, how correlation between inputs should be handled, the practical run-time approaches available (native Excel Data Tables, add-ins, and custom VBA or Python implementations), and how to interpret the resulting output distribution — percentiles, expected value, and the probability of value falling below a given threshold.
Risk Analysis in Investment Appraisal
A single-point NPV or IRR calculation, built on one specific set of assumptions, does not on its own convey how a capital budgeting conclusion would change if those assumptions turned out to be wrong. Risk analysis in investment appraisal addresses this by layering a defined set of techniques on top of the base calculation: sensitivity analysis, which tests the effect of changing one input at a time; scenario analysis, which tests coherent alternative sets of assumptions together; and Monte Carlo simulation, which models a full probability distribution of outcomes across many simultaneously varying inputs. This guide sets out what each technique tests, how they complement rather than substitute for one another, and how they apply specifically to a capital budgeting decision.
Sensitivity Analysis
Sensitivity analysis is the quantitative assessment of how much a financial model's output changes when a single input variable is changed by a defined amount, while all other variables are held at their base case values. It measures the responsiveness — or sensitivity — of outputs to individual assumption changes. Sensitivity analysis is distinct from scenario analysis, which changes multiple assumptions simultaneously to reflect a coherent alternative state. Sensitivity analysis isolates the effect of individual variables; scenario analysis tests the combined effect of assumption sets.
Scenario Analysis
Scenario analysis is the process of recalculating a financial model's outputs under a defined set of alternative assumptions that together represent a coherent possible future state. Each scenario changes multiple assumptions simultaneously to reflect a plausible economic environment or operational outcome — for example, a scenario in which both construction costs are higher than expected and revenue is lower than expected during the ramp-up phase. Scenario analysis is distinct from sensitivity analysis, which changes one variable at a time while holding all others constant. Scenario analysis tests the model under internally consistent combinations of assumptions; sensitivity analysis tests the model's response to changes in individual variables in isolation.
Investment Analysis and Capital Budgeting
Investment analysis and capital budgeting is the discipline of deciding whether a project or investment is expected to create value, using a toolkit of quantitative techniques — net present value, internal rate of return, modified internal rate of return, payback period, and the profitability index — each applied to the same underlying forecast cash flow series but answering a subtly different question. This page is the hub for the Knowledge Centre's investment analysis content: what each technique measures, how the techniques relate to and sometimes conflict with one another, how discount rates and hurdle rates are set, how risk is layered onto the analysis through sensitivity, scenario, and Monte Carlo methods, and — distinctively — how capital-budgeting failure modes map onto FMAE's existing structural audit rule taxonomy.