A single value per share hides how fragile it is. Three tools on the page make the uncertainty explicit.
Sensitivity tables
Re-run the full model across a grid of two assumptions, typically WACC against terminal growth or initial growth against target margin. The table shows how much value moves per step. If a half-point of WACC swings value by 20%, your precision on WACC is what matters, not the third decimal of growth.
Monte Carlo on assumptions
Instead of one number per assumption, give it a distribution. Growth might be normal around 8% with a 3% standard deviation. Target margin might be triangular between 22% and 32% with a mode of 28%. The engine draws thousands of combinations, runs the whole DCF on each and reports the distribution of values: percentiles, a histogram, and the probability that value exceeds price.
The distributions are sampled independently, which understates joint risk when assumptions move together, as growth and margin often do. Read the probability as an order of magnitude, not a precise figure.
Price-path simulation (SDK)
For questions about the path of the stock rather than its value, the SDK simulates daily prices. Geometric Brownian motion assumes log-returns are normal with constant drift and volatility :
Block bootstrap instead resamples the stock's own historical daily returns in blocks of five days, which preserves fat tails and short-run autocorrelation that the normal assumption discards. From the simulated terminal returns the SDK reports Value at Risk, the loss at the 5th percentile, and Conditional VaR, the average loss beyond it.