ModelRisk Features: 136 Distributions | Vose Software
Risk in Excel › ModelRisk › Features

ModelRisk features

Monte Carlo simulation that lives in your Excel cells.

ModelRisk is a Monte Carlo simulation add-in for Microsoft Excel. It adds 136 probability distributions, 34 time series models and 14 copulas as ordinary Excel functions, fits them to your data, simulates with the Turbo engine, and shows the results in a Results Viewer you can share with anyone.

C4 ▾
=VoseInput("Sales volume")+VoseLognormal(120, 25)
The ModelRisk tab in Excel. Every input and output cell carries a histogram of its simulated values. Click a row to see its formula. P(NPV < 0) = 13.9% · see the results ↓
136
probability distributions
34
time series models
14
copulas for correlation
1,400+
Excel functions
9
Results Viewer chart types
~200×
median Turbo speed-up*
*Simulation phase, median across 89 internal test models, Turbo against ModelRisk's classic engine, 1,000 iterations.
Overview

What can ModelRisk do?

ModelRisk turns any Excel model into a Monte Carlo simulation. You describe uncertain inputs with its 136 distributions, fit them to data, link them with copulas and time series, run thousands of scenarios, and read the results in a Results Viewer that ranks which inputs drive the outcome. The ribbon follows those steps from left to right.

01 · Describe uncertainty

Which probability distributions does ModelRisk include?

ModelRisk includes 136 probability distributions, from everyday choices such as PERT, Normal and Lognormal to specialist families for extreme values, insurance losses and reliability. Each is an Excel function with an interactive guide to its theory and use, so you can see its shape before you commit to it.

  • Grouped by what they model, so you search by problem rather than by name.
  • Expert-estimate distributions (PERT, Modified PERT, Triangle) for when there is no data.
  • The Shaper tool lets you draw a distribution of your own.
  • Distribution Objects give exact percentiles and probabilities without simulating.
VosePERT VoseModPERT VosePercentile
Browse every ModelRisk function on riskwiki →

Try it: pick a distribution

5 of 136 shown
Expert estimate A unit cost an engineer puts at min 80, most likely 95, max 140.
P10 P90
80 95 110 125 140
Unit cost (€)
Mean
100
P10
87
P90
115
In your cell
=VosePERT(80, 95, 140)
02 · Fit to data

How does ModelRisk fit distributions to data?

ModelRisk fits distributions, time series and copulas to spreadsheet data by maximum likelihood estimation (MLE). It ranks the candidates on three information criteria (SIC, HQIC and AIC), which penalise unnecessary parameters, and overlays every fit on your data so you can judge the tails by eye as well as by score.

  • One function does the whole job: VoseOptimalFit picks the best-ranked distribution.
  • Bayesian model averaging blends close candidates instead of forcing a single winner.
  • Switch on parameter uncertainty and a small dataset shows up as wider results.
VoseOptimalFit VoseLognormalFit VoseTimeBMA

Claim sizes, n = 160

Lognormal Gamma Weibull
0306090120
Claim size (€k)
Distribution SIC rank HQIC rank AIC rank
Lognormal 1 1 1 Best fit
Gamma 2 2 2
Weibull 3 3 3
Exponential 4 4 4
Illustrative data. Ranks computed live from the likelihood of each MLE fit.
03 · Project over time

Can ModelRisk forecast how a value changes over time?

Yes. ModelRisk has 34 time series models, from geometric Brownian motion and its seasonal variant to ARMA, ARCH and GARCH families and Yule growth processes, with multivariate versions that keep related series consistent. Fit them to history, or describe a trend from expert estimates when there is no data.

  • Not only for finance: demand, failure counts, adoption curves and commodity prices.
  • Expert-input series take three-point, range, percentile or saturation estimates for each period.
  • Fit to history by MLE, or average several models with Bayesian model averaging.
VoseTimeGBM VoseTimeGARCH VoseTimeSMEThreePoint

Price index: 12 months of history, 24-month forecast

History Median 50% band 90% band Sample paths
6080100120140
P95 151 P50 93 P5 58
12 months agoToday+12 months+24 months
=VoseTimeGBM(…) fitted to the history, 1,000 simulated paths. Illustrative data.
04 · Correlate

How does ModelRisk model correlation between risks?

ModelRisk links uncertain inputs with 14 copulas. A copula controls not only how strongly two variables move together but where: some make bad outcomes cluster, others do not. Fit a copula to your data, or use the data copula, which reproduces whatever pattern the data shows. Every link stays visible in the spreadsheet.

  • Normal, Student-t, Clayton, Gumbel and Frank, in bivariate and multivariate form.
  • The data copula captures patterns no formula describes. NASA uses it for exactly that.
  • Right-click a set of cells to correlate them, plus joint-success and target-point tools on the correlation plot.
VoseCopulaBiClayton VoseCopulaMultiT VoseCopulaData

Same correlation, different tails

All three copulas have the same rank correlation (Kendall's τ = 0.45).
Risk A lowRisk A high
Clayton copula: bad outcomes cluster. The link is strongest when both risks go wrong.
Chance both risks land in their worst 10%
Independent1.0%
Frank3.3%
Normal4.3%
Clayton6.6%
=VoseCopulaBiClayton(1.64)
600 simulated pairs, plotted as percentiles; orange = both in their worst 10%. Bar values are exact.
Advanced modelling

How does ModelRisk keep large models small?

Distribution Objects and aggregate functions do in one cell what would otherwise take a row per event. A frequency–severity model, for example, becomes one formula that adds up a random number of random losses, by Monte Carlo, Panjer, FFT or de Pril methods. Fewer cells mean faster simulation and fewer places for errors to hide.

  • Deductibles and insurance layers applied to a whole distribution.
  • Splice a body distribution onto a heavy tail.
  • Combine several experts' estimates into one distribution.
VoseAggregateFFT VoseDeductObject VoseSplice VoseCombined
Without Objects
ClaimSeverity
1=IF(1<=N, VoseLognormal(…), 0)
2=IF(2<=N, VoseLognormal(…), 0)
3=IF(3<=N, VoseLognormal(…), 0)
⋮⋮
100=IF(100<=N, VoseLognormal(…), 0)
Total=SUM(…)
A row per possible claim, and a guess at the maximum count.
With ModelRisk: 1 cell
=VoseAggregateMC(
  VosePoisson(48),
  VoseLognormalObject(
    25000, 40000))
Total annual loss: a random number of claims (average 48), each with a random size. Swap MC for Panjer or FFT to get the exact distribution with no simulation noise.
=VosePercentile(
  VoseLognormalObject(25000, 40000),
  0.99)
06 · Simulate fast

How fast is ModelRisk?

ModelRisk's Turbo engine gives you the fastest Monte Carlo simulation in Excel. Switch Turbo on for a workbook and ModelRisk analyses the model once, compiles only the cells that change between iterations, and runs them on every processor core without Excel recalculating. Across 89 test models, the simulation phase ran a median of roughly 200× faster.

  • Two thirds of those models ran more than 100× faster than ModelRisk's classic in-Excel engine.
  • Large workbooks take a few seconds to prepare the first time, then run at full speed.
  • Results are statistically equivalent to the classic engine, with a consistency check built into the first Turbo run.
Simulation phase only: 89 models from our internal test library, same workbook, 1,000 iterations, Turbo against ModelRisk's classic engine. Excludes the one-time model analysis and opening the workbook.
~200×
median speed-up, simulation phase
2 in 3
test models more than 100× faster

Where the time goes

Classic engineExcel recalculates the workbook every iteration
One block = one full recalculation of the workbook, repeated for every iteration
TurboAnalyse once, then run only what changes
Analyse the
workbook once
Compile the cells
that can change
Iterations run on every processor core at once, outside Excel
06 · Read the results

How do you read and share ModelRisk results?

When a simulation finishes, the Results Viewer opens with every input and output listed. Nine chart types, including tornado, spider and scatter plots, show which inputs drive the result, next to full statistics tables. Compare several runs side by side, export to Excel, Word, PowerPoint or PDF, or send the results file to colleagues who use the free viewer. Our sensitivity analysis in Excel guide shows what a tornado chart tells you.

  • Go To Sample jumps to the exact scenario behind any outlier.
  • A histogram sparkline inside every input and output cell.
  • Save results as a .vmrs file and reopen them without the model, or export to SIPMath 3.0.
Results — Plant expansion.xlsx 2 simulations · 5,000 iterations each ? NPV (€m) NPV cumulative NPV drivers Volume vs NPV ✕✕✕✕ + Add chart SIMULATIONS Select all 2 simulations Spot market 5,000 iterations Offtake contract 5,000 iterations VARIABLES Outputs (2) Inputs (5) All (7) Search by name or cell NPV (€m) Model!C9 IRR Model!C11 1 of 7 variables STATISTICS Spot market Units: €m Offtake Units: €m LOCATION SPREAD SHAPE PERCENTILES Mean37.71114.33 Median34.09113.34 Mode37.31118.48 Minimum-53.9930.55 Maximum238.18231.53 Samples5,0005,000 # of Errors00 Std. deviation36.2425.33 Variance1,313.1641.7 Coeff. of variation0.96100.2216 Skewness0.74050.2423 Kurtosis4.10393.0323 1%-29.5360.77 5%-14.2674.71 10%-4.9882.10 25%12.2396.58 50%34.09113.34 75%58.41130.79 90%86.10147.29 95%102.67158.03 99%138.59176.05 NPV (€m) Close 5,000 iterations · ModelRisk by Vose NPV (€m) Below 13.9% Between 80.5% Above 5.6% 13.9% 0.00 94.4% 100.00 Spot market Offtake contract Mean 37.7 Mean 114.3 Probability -80-4004080120160200 NPV (€m) NPV (€m) · cumulative ascending 100%75%50%25%0% 13.9% below 0 0.0% below 0 Spot market Offtake contract Cumulative probability -80-4004080120160200 NPV (€m) NPV (€m) · Spot market 1) Sales volume-4.095.9 2) Price10.665.0 3) Opex16.360.0 4) Capex22.247.2 5) Start-up delay29.543.8 Mean NPV when each input is in its lowest vs highest 10% -20020406080100 Conditional mean of NPV (€m) Sales volume vs NPV (€m) · Spot market 20016012080400-40-80 42.9% 44.1% 12.3% 0.7% NPV (€m) 6090120150180 Sales volume (kt/yr)
Try the chart tabs:
Two simulations of the same NPV output. The offtake contract shifts the whole distribution to the right and narrows it. The sliders read the probability between any two values: here, a 13.9% chance that the spot-market case loses money.
07 · Optimize

Can ModelRisk optimize decisions under uncertainty?

Yes. The ModelRisk Optimizer searches for the decision with the best simulated result: the highest mean profit, the highest 5th percentile, or the lowest chance of a loss. Each candidate is scored by running a simulation, so it compares distributions rather than single numbers. Constraints can apply to a statistic or to any worksheet formula.

  • Adjustable cells can be continuous, integer, binary or a list of allowed values, with bounds that are themselves worksheet cells.
  • Groups for budgets, recipes, orderings and schedules; hard or penalised constraints.
  • The same answer on any machine: one core, six cores or automatic gave an identical objective, trial count and search trace.
  • Coming from RISKOptimizer or Crystal Ball? The converter brings the optimization model across: objectives, adjustable cells, constraints and groups.
See the Optimizer at work →

An optimization model, in plain terms

Objective
Maximise the 5th percentile of NPV (€m)
Decisions it may change
Plant capacity80 to 200 kt/yr · integer
Share sold on contract0 to 100% · continuous
Build in two phasesyes / no · binary
Constraints
Chance that NPV < 0at most 10% · hard
Capexat most €140m · hard
An example set-up. Turbo speeds up optimizations whose simulations are slow, because every trial is a simulation.
Built to be checked

How do I check that a ModelRisk model is right?

Select any ModelRisk cell and click View Function to see exactly what it does. An invalid input returns a plain explanation instead of a bare error, the help file covers more than 1,000 topics, and Excel's own auditing tools work on every ModelRisk function, alongside Excel Tables, Power Query and modern Excel functions.

View Function
Select a cell and see a live picture of exactly what its function does.
Readable errors
An invalid parameter returns an explanation of what is wrong, not just #VALUE!.
Help and examples
Over 1,000 help topics, tutorials on good practice, and a library of example models.
Model Tool
Manage inputs and outputs in bulk and list every ModelRisk function in the model.
NewAI-ready

Can AI assistants build ModelRisk models?

Yes. The open-source ModelRisk MCP server lets AI assistants such as Claude Desktop, Claude Code, Cursor and Zed read, build and run ModelRisk models in your workbook through conversation. Every change is a dry-run preview until you approve it, writes are logged, and Excel's undo still works. Tamara and ModelChoice have servers of their own.

  • More than 50 tools for reading, building, simulating, analysing and reporting.
  • Never overwrites your own formulas; bulk writes need explicit confirmation.
  • MIT licensed. Windows, Excel 2019 or later.
Set up the ModelRisk MCP server →
AI assistant ModelRisk MCP connected
Fit a distribution to the claim amounts in C2:C161 and tell me the 1-in-200 claim size.
I fitted 4 candidates by maximum likelihood. Lognormal ranks first on SIC, HQIC and AIC. Its 99.5th percentile, the 1-in-200 claim, is about €142k.
Dry run · nothing written yet
D2  =VoseLognormalFit(C2:C161)
Illustrative conversation, using the same data as the fitting example above.
08 · Share and switch

Can I switch from @RISK or Crystal Ball?

Yes. ModelRisk's built-in converter translates @RISK models one at a time or a whole folder at once, leaves the originals untouched, and lists every converted formula in a report. @RISK does not need to be installed. A free Crystal Ball converter is also available, and an optional @RISK-style ribbon layout makes the move easier.

Convert an @RISK model free
Conversion report · Plant expansion.xlsx 4 of 4 functions converted
Cell @RISK ModelRisk
C4=RiskLognorm(120, 25)→=VoseLognormal(120, 25)
C5=RiskPert(420, 480, 560)→=VosePERT(420, 480, 560)
C7=RiskNormal(260, 20)→=VoseNormal(260, 20)
C10=RiskOutput("NPV")+…→=VoseOutput("NPV")+…
Original workbook untouched · converted copy saved alongside it
SWAP tool
Send a copy where every ModelRisk function becomes a fixed, annotated value, so anyone can open it in plain Excel.
Free Results Viewer
Colleagues open your .vmrs results files and explore every chart without a licence.
Crystal Ball converter
Free conversion of Oracle Crystal Ball models into ModelRisk.
ModelRisk vs Crystal Ball →
Pelican integration
Pull risk data from Pelican, push results back, and run ModelRisk models for a whole team inside the platform.

ModelRisk features at a glance

Everything on this page is included in every ModelRisk licence.

Area What's included Example functions
Distributions 136 distributions, expert-estimate tools, the Shaper for custom shapes, and an interactive guide to each one. VosePERT, VoseLognormal, VoseWeibull
Fitting MLE fitting of distributions, time series and copulas; ranking by SIC, HQIC and AIC; Bayesian model averaging; parameter uncertainty. VoseOptimalFit, VoseLognormalFit
Time series 34 models including GBM, seasonal GBM, ARMA, ARCH/GARCH and Yule, multivariate versions and expert-input series. VoseTimeGBM, VoseTimeGARCH, VoseTimeSMEThreePoint
Correlation 14 copulas including Normal, Student-t, Clayton, Gumbel, Frank and the data copula; bivariate and multivariate; fitted to data. VoseCopulaBiClayton, VoseCopulaData
Aggregate and Objects Frequency–severity totals by Monte Carlo, Panjer, FFT or de Pril; deductibles and layers; splicing; combining expert opinions. VoseAggregateMC, VoseAggregateFFT, VoseDeductObject
Turbo simulation Optional high-speed engine, switched on per workbook: analyses the model once, compiles only the cells that change and runs on every core. Simulation phase a median of roughly 200× faster across 89 test models. —
Results Results Viewer with 9 chart types, statistics, multi-run comparison, target-point scatter and Go To Sample; export to Excel, Word, PowerPoint, PDF and SIPMath 3.0. VoseInput, VoseOutput
Reporting Reports on summary and detailed statistics, inputs, outputs, sensitivity, scenarios and simulation data; SID library for storing and reusing simulation data. —
Optimizer Optimization under uncertainty: objectives on any simulated statistic; continuous, integer, binary or list decisions; hard or penalised constraints; groups. Reads RISKOptimizer and Crystal Ball optimization models. —
Decision analysis Goal Seek on simulated results (find the input value that makes a statistic such as the mean hit a target), Impact Analysis one input at a time, and Extreme Scenario Analysis. —
Model checking View Function, plain-language error messages, 1,000+ help topics, Model Tool for bulk input and output management, full Excel auditing. —
Sharing and migration @RISK converter (single or bulk), Crystal Ball converter, @RISK-style ribbon, SWAP tool, free Results Viewer, Pelican integration. —
Automation and AI Control ModelRisk from Excel VBA, or let AI assistants such as Claude, Cursor and Zed read, build and run models through the open-source MCP server. —

Frequently asked questions

How much does ModelRisk cost?

ModelRisk offers a strong cost-benefit for a professional Monte Carlo add-in for Excel: every feature on this page comes in one licence, with no premium edition to upgrade to, and the 15-day trial is fully functional. Current prices, and volume and multi-year discounts, are on the pricing page.

Can someone without ModelRisk open my model?

Yes, in two ways. The SWAP tool saves a copy in which every ModelRisk function is replaced by a fixed value and annotated, so it works as a normal Excel file. Simulation results saved as a .vmrs file open in the free Results Viewer.

Which Excel versions does ModelRisk support?

ModelRisk runs on Windows 10 and 11 with Microsoft Excel 2016, 2019 or Microsoft 365, in 32-bit or 64-bit, and needs .NET Framework 4.8. Full details are on the system requirements page. ModelRisk functions work inside Excel Tables, alongside Power Query and with modern Excel functions.

Do I need to be a statistician to use ModelRisk?

No. Start from one of the example models, use expert-estimate distributions such as PERT where you have no data, and use View Function and the help file to check what each function does. The fitting and copula tools are there when you need them.

Try every feature free for 15 days

The full product, with example models to start from. See prices and discounts