Business and Freelancing

Monte Carlo Project Duration Simulator

List the tasks with three estimates each and what they wait for to see how long the whole project is likely to take.

Your numbers

Tasks
Task 1
Task 2
Task 3
Task 4
Task 5

From 100 to 100,000.

The same seed always gives the same result.

Result

Duration with 80% confidence (P80)

28.8

In the same unit as your estimates. 10,000 simulated projects, seed 1.

P50 (median)
25.6
P80
28.8
P90
30.6
Mean
25.91
Standard deviation
3.43
Shortest and longest run
16.9 and 37.9
Critical path with most likely values
23.0
Critical path with mean values
25.83

How the simulated durations spread

Duration rangeRunsShareBar
16.9 to 19.0620.6%
19.0 to 21.16036.0%###
21.1 to 23.21,59315.9%########
23.2 to 25.32,40024.0%############
25.3 to 27.42,21722.2%###########
27.4 to 29.51,55215.5%########
29.5 to 31.69419.4%#####
31.6 to 33.74524.5%##
33.7 to 35.81581.6%#
35.8 to 37.9220.2%
How this was calculated
  1. For each simulated project, every task gets a random duration from its best, most likely and worst case using a beta-PERT curve with shape 4 (mean = (best + 4 x likely + worst) / 6).
  2. The project length is the longest chain of tasks through the "waits for" links, so tasks that can run side by side do not add up.
  3. Percentiles come from sorting all simulated lengths and interpolating at position (n - 1) x p. P80 means 80 percent of simulated projects finished in that time or less.
  4. A seeded generator makes the result repeatable. A different seed gives a slightly different sample of the same question.
  • The result is only as good as the three estimates, and tasks are assumed independent. Real delays are often linked, which makes true spread wider than shown.

Calculated using SumPanda.com · https://sumpanda.com/monte-carlo-project-duration-simulator/

Results are estimates for general information. Verify important figures before relying on them.

Next step

How to use the monte carlo project duration simulator

  1. Add each task with a best case, a most likely and a worst case estimate in any one unit, such as days.
  2. In the last column, name the tasks it waits for, separated by commas. Leave it empty for tasks that can start at once.
  3. Choose beta-PERT or triangular, the number of simulated projects and a seed.
  4. Read P50, P80 and P90 and look at the histogram table.

Formula

task duration drawn from beta-PERT (shape 4) or a triangular curve between best and worst

project length = longest chain through the "waits for" links

P(p) = sorted simulated lengths, interpolated at position (n - 1) x p

Beta-PERT has the mean (best + 4 x likely + worst) / 6 and triangular has (best + likely + worst) / 3. A seeded generator makes every run repeat exactly.

A five task project

Design (3, 5, 10) is followed by Build (8, 12, 25) and Content (4, 6, 14), which can run side by side, then Test (3, 4, 9) after both, then Launch (1, 2, 4). The longest path using the most likely values is 5 + 12 + 4 + 2 = 23, and using the mean values it is 25.83.

Simulating 10,000 projects with seed 1 gives a median of 25.6, a P80 of 28.8 and a P90 of 30.6, with a mean of 25.91 and a standard deviation of 3.43. The most likely path of 23 is shorter than even the median, because each task’s worst case is further from its likely value than its best case, and because Test waits for the slower of two tasks.

Why a single date misleads

Adding most likely values ignores that tasks run late more often than early and that a task waiting on two others waits for the slower one. The simulation draws many possible projects and reads the spread directly.

P80 means that 80 percent of the simulated projects finished in that time or less. Many teams quote P80 as a date they can commit to.

Reading the setup

Tasks are assumed to be independent, so a problem in one does not slow the others. In real projects delays are often linked, which makes the true spread wider than shown here. The estimates also matter more than the number of runs: wide estimates give wide results.

The links must not form a loop, and each name must match a task. For a single-path plan with fixed durations use the Critical Path Method Calculator.

Assumptions and limits

  • Each task has best <= likely <= worst in the same unit.
  • Tasks are independent, and a task starts when all the tasks it waits for have finished.
  • There is no resource limit, so tasks that can run side by side do.
  • The same seed always gives the same answer. A different seed gives a slightly different sample.
  • Up to 30 tasks and 100,000 simulated projects are allowed.

Formulas reviewed October 10, 2026. See the calculation methodology for how SumPanda rounds, tests and sources its formulas.

Frequently asked questions

What is beta-PERT?

It is a smooth curve between the best and worst case that peaks near the most likely value and gives the likely value four times the weight of the extremes in its mean. It is often preferred to the triangular curve.

How many simulated projects do I need?

Ten thousand is plenty for P50 and P80 to a few percent. P90 and the extremes need more runs to settle, and the histogram looks smoother with 50,000 or more.

Why does the result change with the seed?

A simulation is a random sample. The seed fixes the sample so the result repeats. Trying another seed shows how much the numbers move by chance alone.

Can tasks start at the same time?

Yes. Any tasks that do not wait on each other run side by side, and only the longest chain counts toward the project length.