What is a Monte Carlo simulation?

normal distribution graph with standard deviation illustrated

We want to offer a conceptual understanding here of Monte Carlo simulations so that you know why someone might use them and how you should feel about them when receiving decision making advice based on this type of model.

Why should you care about Monte Carlo simulations?

If you’re involved in finance, retirement planning, project management, cost estimation, benefit calculations, risk management, or analyzing the rules in a game it is very likely that Monte Carlo methods would benefit you and improve your decision making. Monte Carlo simulations take uncertainty into account when building a model which is often a step in the right direction if you’re not using methods that do so already.

It avoids the rather common fallacy of creating “best” and “worst” case concepts and averaging them out to get a “likely” case. Monte Carlo simulations are the best and most accurate way to calculate a “likely” case and understand how likely each scenario might be.

What is a Monte Carlo simulation? Is there an example?

Foreword: Monte Carlo simulation is a bit of a deep subject if you’re unfamiliar with some basic statistics and probability, but you’re in good hands. We’re going to treat this as simply as possible so you can understand the reasons one might use the technique and what its strengths are. We are not going to offer a rigorous mathematical treatment of the subject.

At the most simple level, a Monte Carlo simulation is a way to build a model of something that accounts for uncertainty. This may, in many cases, help measure something that otherwise could not be measured. In other cases it simply provides a more accurate picture than you get when you make a simple singular calculation.

normal distribution range

Ranges allow us to show our uncertainty where fixed numbers imply certainty we often don’t possess.

Monte Carlo simulation isn’t a tool you need to use for every decision. Let’s say you’re planning a trip to Disney World for a family of 4 and you want to compare the costs involved in driving versus flying. You can get specific costs by searching for airfare and car rental. You can reasonably estimate fuel costs by multiplying the number of miles you will drive by the miles per gallon your car gets blended between city and highway. This is an example decision or model of costs that is simple enough to calculate and just doesn’t have much uncertainty.

Now, if you had some ranges or approximate ranges for wait times on attractions at Disney World for different times of year and a specific list of attractions you know you want to see this is a place you could opt to use a Monte Carlo simulation. Monte Carlo simulations will help you understand how high your chances of completing your list of attractions is on a given day and how many days you should plan to be in Disney World to complete your full planned itinerary. With different assumptions at different times of year (Christmas and Summer are more popular than September or February) you can also see how many days you need at different dates and what the cost difference is for different choices in timing. Since we can’t know exactly what will happen or how long the actual wait times might be, Monte Carlo simulation can help us model that uncertainty and develop the best possible plan for success.

ride wait times that vary in a day

10 rides with differing wait times throughout the day that may also differ on other dates. A real modeling problem!

Monte Carlo Analysis

Indeed, besides being used as a way to approximate some complex calculations the most common application for Monte Carlo simulation is to model something really unpredictable like financial markets. If you’ve ever seen the portfolio calculator in Personal Capital then you have seen a Monte Carlo simulation in action. They run a large number of simulations of what the market might do in order to determine how often your portfolio turns out the way you would like and how often, with the given assumptions, it turns out worse than you would like.

That is a key fact about Monte Carlo simulations. It won’t tell you that oil will be $57 or $202 per barrel in a future month, but it can tell you that there’s a 45% chance that it will be between $45 and $55 per barrel with a near zero chance of climbing to $202 per barrel. We can learn the likelihood of a scenario playing out given a set of assumptions.

Put conversely, how often does a particular scenario occur, given certain assumptions and the universe of possibilities?

Let’s take the example of a personal investment portfolio. We’ll start very simple, but I will warn you that maths will begin to happen from here on out.

The portfolio has some current dollar value. Let’s say for simplicity that it’s all invested in one total stock market index like the S&P 500. We could model how much money is in the portfolio with a really simple equation:


If we wanted to account for investing more as the years pass we could add that variable:


This equation is already a little complicated, but we’re just saying we’ll buy more shares and the total value is what we had plus new shares times a rate of return. We have a pretty good idea of the historical returns for the S&P 500 so we can probably pick a pretty good range if we’re looking at 10 years or more as a horizon. If the timing is much shorter then things get a bit complicated. We can no longer assume we’ll see a predictable historic rate of return in the short run. The volatility in the short term can be quite high. We would have to change the basis of the model entirely, in fact.

This speaks to how the outcomes are distributed. Long term rates of return for the S&P 500 are in a narrow range of something like 7-12% (ignoring inflation). Short term rates might vary -250% to +250% or even more widely. The bigger swings are less likely, but ignoring them would be wrong and we know this. The stock market in that time interval isn’t distributed normally. Normal distributions are like people’s heights where most people are clustered together and there are outliers that are really tall or short. Short term returns are distributed more like earthquakes. Some are hundreds or thousands or many tens of thousands of times more powerful than others and we can anticipate the frequency of the big events, but we can’t predict when those events will happen. Distributions are obviously very important to building a good Monte Carlo simulation.

To make a good simulation you need good assumptions (but bad ones might be OK if you’re using them to model your actual uncertainty) and a good model for the distribution of the outcomes you’re modeling. Once you have that, you use a computer to model thousands of scenarios. For our example above you would sample (pick random numbers from a distribution) for the rate of return in the portfolio equation. But you don’t generate one and see what the actual number output is. You generate 10,000 possibilities and see how many times of 10,000 you are able to retire comfortably.

This is a simple example. If you wanted to model a more complex portfolio with a lot of investments, different classes and risks like real estate and commodities and use different distributions and assumptions for each we could. The model can be as complex as you think is useful to build. This type of modeling is referred to as “stochastic” (stow-CAS-tick) which means it accounts for some uncertainty. This is to contrast with a discrete model where you simply say in 50 years I’ll have X shares worth $Y and decide if that’s good enough.

You pick model complexity based on the importance of the decision. For something like your retirement, accuracy is fairly important and uncertainty is high. Monte Carlo simulation is a great tool. For planning your trip to Florida in the car…you can pick a safe enough number.

Want to get your hands dirty? Start with our simple retirement model or jump to the advanced monthly income in retirement planner built in Excel.


  1. An advanced retirement Monte Carlo model Excel template | Keepify Finance - 14 November 2017

    […] you’re looking for an explanation of Monte Carlo please take a look at our breakdown of the method before this piece. If you want a very simple […]

  2. A simple retirement Monte Carlo simulation Excel template | Keepify Finance - 1 March 2018

    […] you’re not sure what Monte Carlo is, please checkout our explanation in part one. Otherwise, please proceed after downloading the simple Excel template this article […]

Leave a Reply