Monte Carlo Simulation Calculator
Run Monte Carlo simulations directly in your browser. Choose a probability distribution, define the number of runs, and obtain an empirical distribution of outcomes with summary statistics, percentiles and the probability of exceeding a threshold.
This tool is suitable for statistics students, engineers, analysts and decision-makers who need a quick way to explore uncertainty and risk without installing any software.
1. Choose distribution and parameters
Start with a simple distribution. For more complex models you can approximate the outcome as a single random variable and simulate it here.
σ must be positive. Many finance and engineering models are approximated with a normal distribution.
2. Simulation settings
Up to 200,000 runs per execution.
If set, the tool will estimate P(X ≥ threshold).
Controls rounding in the statistics table.
What is a Monte Carlo simulation?
A Monte Carlo simulation is a numerical method that uses repeated random sampling to estimate the behavior of a system with uncertainty. Instead of solving a problem analytically, you model the uncertain inputs as random variables and simulate many possible scenarios.
After many runs, you get an empirical approximation of the distribution of outcomes: averages, percentiles, and probabilities. This is extremely useful when the model is too complex for closed-form formulas, or when you want to visualize risk in a way that stakeholders can understand.
Basic Monte Carlo procedure
- Define a model \( Y = g(X_1, X_2, \dots, X_k) \) where \( X_i \) are random inputs.
- Choose probability distributions for each \( X_i \) (e.g. normal, uniform, triangular).
- For each simulation run \( j = 1, \dots, N \):
- Sample \( x_1^{(j)}, x_2^{(j)}, \dots, x_k^{(j)} \) from their distributions.
- Compute the outcome \( y^{(j)} = g(x_1^{(j)}, \dots, x_k^{(j)}) \).
- Use the simulated outcomes \( y^{(1)}, \dots, y^{(N)} \) to estimate:
- Mean and standard deviation.
- Percentiles (e.g. 5th, 50th, 95th).
- Probabilities of events, e.g. \( \mathbb{P}(Y \geq y_0) \).
Supported distributions in this calculator
Normal (Gaussian) distribution
Defined by a mean \( \mu \) and standard deviation \( \sigma \), with density
This is widely used for modelling measurement errors, aggregated effects and approximate returns.
Uniform distribution
All values in \([a,b]\) are equally likely. This is useful when you only know a range, not a shape.
Triangular distribution
Defined by minimum \( a \), most-likely value \( m \) and maximum \( b \). It approximates expert estimates of “optimistic–most likely–pessimistic” scenarios and is common in project management and cost estimation.
Custom discrete distribution
You specify a finite set of values \( x_i \) and probabilities \( p_i \) such that \( p_i \ge 0 \) and \( \sum_i p_i = 1 \). This covers scenarios like demand levels, failure modes, or aggregated outcomes from more complex models.