Monte Carlo DCF

For informational and educational purposes only • Not investment advice.

Compare Monte Carlo DCF values across companies

Nvidia
Median Fair Value$252.33
Current Stock Price$229.28
Valuation Range$159.23 – $406.72
Probability Above Price59.4%
Valuation UncertaintyHigh
Base WACC15.2%
Apple
Median Fair Value$179.89
Current Stock Price$336.64
Valuation Range$150.28 – $218.54
Probability Above Price0.0%
Valuation UncertaintyLow
Base WACC10.4%
Alphabet
Median Fair Value$527.06
Current Stock Price$351.66
Valuation Range$342.82 – $786.91
Probability Above Price87.8%
Valuation UncertaintyHigh
Base WACC10.7%
Microsoft
Median Fair Value$280.85
Current Stock Price$535.07
Valuation Range$228.19 – $348.41
Probability Above Price0.0%
Valuation UncertaintyModerate
Base WACC10.2%
Time Horizon
Simulations
Equity Risk Premium
%
Range: 2–10%

What is a Monte Carlo DCF Valuation?

A Monte Carlo Discounted Cash Flow valuation estimates a company's intrinsic value by running many complete DCF valuations instead of relying on one fixed forecast.

Each simulation uses a different combination of Revenue Growth, WACC and Terminal Growth assumptions, producing one possible Fair Value per Share. Repeating this process creates a distribution of possible valuation outcomes.

The distribution shows the range and frequency of possible Fair Values and can be summarized using the Median Fair Value, percentile values and the probability that Fair Value exceeds the current market price.

Monte Carlo DCF Formulas

The following formulas are applied within each Monte Carlo simulation to calculate one possible Fair Value per Share.

Present Value of Enterprise Value
Enterprise Value=∑t=1nFCFt(1+WACC)t+TV(1+WACC)n \text{Enterprise Value} = \sum_{t=1}^{n} \frac{FCF_t}{(1+WACC)^t} + \frac{TV}{(1+WACC)^n}
Terminal Value
Terminal Value=FCFn+1WACC−g \text{Terminal Value} = \frac{FCF_{n+1}} {WACC-g}
Fair Value per Share
Fair Value Per Share=Enterprise Value−Net DebtShares Outstanding \text{Fair Value Per Share} = \frac{ \text{Enterprise Value} - \text{Net Debt} }{ \text{Shares Outstanding} }
Monte Carlo Simulation
FVi=DCF(gi,  WACCi,  TGi) FV_i = DCF (g_i,\;WACC_i,\;TG_i)
Median Fair Value
Median Fair Value=Median⁡(FV1,…,FVN) \text{Median Fair Value} = \operatorname{Median} (FV_1,\ldots,FV_N)

How Monte Carlo DCF Works

Monte Carlo DCF starts with a standard DCF framework, randomly varies key assumptions such as Revenue Growth, WACC and Terminal Growth, runs many complete DCF valuations, and summarizes the resulting distribution of possible Fair Values.

Set Base Assumptions
→
Randomize Key Inputs
→
Run One DCF
→
Repeat Many Simulations
→
Build Value Distribution
→
Calculate Percentiles
→
Interpret Probability

Key Model Assumptions

• Revenue and Free Cash Flow are projected over the selected forecast period.
• Revenue Growth gradually moves toward the Terminal Growth Rate.
• The Free Cash Flow Margin gradually moves toward a normalized target based on the median of up to the five most recent valid historical Free Cash Flow Margins.
• Revenue Growth, WACC and Terminal Growth vary across simulations within model-defined ranges around their Base assumptions.
• The Risk-Free Rate is based on the U.S. 10-Year Treasury yield published by the Federal Reserve Board.
• Each simulation performs one complete DCF valuation.
• Enterprise Value is adjusted for Net Debt or Net Cash to estimate Equity Value.
• The resulting Fair Values form the Simulation Distribution.

Step 1 — Generate Random Simulation Assumptions

Base Revenue Growth = Historical Revenue CAGR
Base WACC = Equity Weight × Cost of Equity + Debt Weight × After-Tax Cost of Debt
Base Terminal Growth = Sustainable Long-Term Growth Rate
Each simulation randomly selects:
Revenue Growth Range
Base Revenue Growth ± max(3.0 percentage points, 30% relative range)
WACC Range
Base WACC ± 1.0 percentage point
Terminal Growth Range
Up to ±1.0 percentage point around Base Terminal Growth, while remaining between 0% and 3.5%

The model first determines central assumptions for Revenue Growth, WACC and Terminal Growth. These Base values serve as the midpoint for the Monte Carlo simulations.

For each simulation, Revenue Growth, WACC and Terminal Growth are randomly selected from their respective ranges. This allows the model to test many different combinations of assumptions rather than relying on one fixed forecast.

Each randomly selected combination is then used to perform one complete DCF valuation.

Step 2 — Run One Complete DCF

Random Revenue Growth
+ Random WACC
+ Random Terminal Growth
↓
Run Complete DCF Valuation
↓
Fair Value per Share

Each simulation uses one randomly selected Revenue Growth Rate, WACC and Terminal Growth Rate from the ranges defined in Step 1.

These assumptions are used to perform one complete Discounted Cash Flow valuation. The model projects Revenue and Free Cash Flow, discounts the forecast cash flows, calculates Terminal Value, converts Enterprise Value into Equity Value and determines one Fair Value per Share.

The Free Cash Flow Margin gradually moves toward a normalized target based on the median of up to the five most recent valid historical Free Cash Flow Margins.

The DCF calculation is the same as in the Standard DCF and Scenario DCF models. The difference is that Monte Carlo DCF uses a new combination of assumptions in every simulation.

Step 3 — Repeat the DCF Simulation

Simulation 1 → Fair Value per Share
Simulation 2 → Fair Value per Share
Simulation 3 → Fair Value per Share
...
Simulation N → Fair Value per Share

The complete DCF valuation is repeated hundreds or thousands of times, with each simulation using a different combination of Revenue Growth, WACC and Terminal Growth assumptions.

Each simulation produces one Fair Value per Share, creating a large set of possible valuation outcomes.

Step 4 — Build the Valuation Distribution

All Simulated Fair Values
↓
Sort from Lowest to Highest
↓
P10 • Median (P50) • P90

The simulated Fair Values are collected and sorted from lowest to highest, forming the valuation distribution.

This distribution shows the range and frequency of possible outcomes and is used to determine percentile values such as P10, the Median and P90.

Step 5 — Calculate Valuation Statistics

Median Fair Value = 50th Percentile (P50)
P10 = 10% of Simulated Fair Values Are Lower
P50 = 50% Lower • 50% Higher
P90 = 90% of Simulated Fair Values Are Lower
Probability Fair Value > Current Price = Simulations Above Current Price / Total Simulations

Once the valuation distribution has been created, the model calculates summary statistics that describe the simulated valuation outcomes.

The Median Fair Value represents the 50th percentile of the simulated Fair Values, with half of the results below it and half above it.

The P10 and P90 values describe the lower and upper parts of the simulated valuation range, while the probability above the current stock price measures how often the simulated Fair Value exceeds today's market price.

Step 6 — Interpret the Results

P10 → Lower Valuation Outcome
Median Fair Value → Central Valuation Estimate
P90 → Upper Valuation Outcome
Wider P10–P90 Range → Greater Valuation Uncertainty
Higher Probability Fair Value > Current Price
→ More Simulations Produce Fair Values Above the Current Stock Price

Monte Carlo DCF does not attempt to identify one exact intrinsic value. Instead, it presents a distribution of possible Fair Values generated from many different combinations of assumptions.

P10 represents the lower part of the simulated valuation distribution, while P90 represents the upper part. The Median Fair Value provides the central estimate of the distribution.

The distance between P10 and P90 indicates how sensitive the valuation is to changes in Revenue Growth, WACC and Terminal Growth. A wider range means greater valuation uncertainty.

The probability that Fair Value exceeds the current stock price shows how frequently the simulated Fair Value is above today's market price. This probability should be interpreted together with the valuation range and the assumptions used by the model.