The plan says 96 days. What date can you actually commit to?

A plan adds durations along its longest path and returns one date. Every one of those durations is an estimate, and along a chain of dependencies the tasks that come in early do not pay for the ones that run late, because nothing starts until the last of its predecessors is done. Schedule risk analysis simulates the same network thousands of times and turns that single date into a confidence ladder.

Method guide for Google Sheets Schedule Risk (Monte Carlo CPM) Pro engine

What schedule risk analysis is

You give every activity an optimistic, likely and pessimistic duration and list what it waits on. Each trial draws a duration for every activity, runs the forward pass to get a finish, then runs the backward pass to see which activities had no float on that particular trial. Ten thousand trials give you a distribution of finish dates, and for every activity the share of trials in which it sat on the driving path.

That second number, the criticality index, is the one a deterministic plan cannot give you. A plan has one critical path. A real project has several candidates, and which one drives the finish depends on how the durations land.

The questions it answers

  • How likely is the date already in the plan?
  • What date can I hold eight times out of ten?
  • How much schedule contingency is that, in days?
  • Which activities really drive the finish, and which am I chasing for no reason?

When you do not need to simulate

Skip it when the work is short, mostly sequential and well understood. Three tasks you have run twenty times do not need ten thousand trials. Skip it when nothing hinges on the date, and skip it when your durations are not estimates at all but fixed contractual windows.

Be careful what you conclude from it, too. The tool samples durations on the network you gave it, so it does not level resources or reroute logic. If one team is committed to two parallel paths, the model will happily run them at the same time, and spotting that is still your job.

A worked example

Fourteen activities of an enterprise system cutover, in working days. Two workstreams run in parallel after the requirements freeze and converge on integration test, then acceptance, rehearsal and go-live.

Activities14, with predecessors
Estimatesoptimistic, likely and pessimistic days on each
Longest chain of likely durations96 working days
SamplingPERT
Simulation10,000 trials, seed 7

The answer

Ten thousand runs of the same network:

Plan on paper
96 working days
P50 finish
104 days, the coin-flip date
P80 finish
109 days, the date to commit
Data migration drives it
75% of runs

The 96-day plan is beaten in fewer than one run in ten, so it was never a commitment, it was a best case. The date you can hold eight times out of ten is 109 working days, and the 13-day gap between the two is schedule contingency, better held openly than hidden a day at a time inside individual tasks. Criticality then says where attention pays: data migration drives the finish in 75% of runs, the interface build in 25%, and business readiness in none of them. That is one workstream to protect and one to stop chasing in the status meeting.

The same seed makes a before-and-after comparison mean something. In the extension of time template, one disputed activity is on the driving path in 96% of trials, so it cannot be waved away as having float. But rerunning with that one activity back at its planned duration, and nothing else changed, moves the P80 finish by about 10 working days against a claim of eight weeks, because a competing path takes over as the driver. Both runs share a seed, so the difference is the change rather than the sampling.

Figures from the shipped What Finish Date Can I Commit To? template, reproduced by running the same code the add-on runs, at 10,000 trials with PERT sampling and seed 7.

What you get back in the sheet

  • A task table on the sheet: id, name, predecessors, optimistic, likely, pessimistic.
  • PERT or triangular sampling from the three-point columns, whichever you prefer to defend, or any of the 36 distribution families when a task deserves its own shape.
  • Completion percentiles at 10, 25, 50, 75, 80, 90 and 95 percent, with mean, standard deviation, minimum and maximum.
  • A criticality index for every activity: the share of trials in which it sat on the driving path.
  • Schedule drivers: how strongly each task's sampled duration moved the finish, so you know which estimates are worth tightening first.
  • A path-convergence note, in the run's own numbers: wherever parallel paths meet, the latest one sets everything after the join, so an overrun on any path pushes the finish out while an underrun on one is absorbed by the others. A plan built on one number per task cannot see that.
  • A seed, so two runs differ only by the thing you changed. That is what turns a comparison into evidence.
  • A SIPmath 3.0 export of the finish trials, so another SIPmath tool can carry this schedule's uncertainty into its own model.
  • A written reading of the result. Every run ends with a card titled “What this means”: the probability that matters, the biggest driver, and what to tighten first. On the free tier the tool writes it from its own figures. On Pro you also get an AI reading of the same figures, written by a language model, and See what was sent shows the whole payload: “Ratios, shares, counts and cell references only. No cell values, no labels, no names, no formulas.”

Free or Pro

This is a Pro engine, one of five. Every free install includes five full-quality runs of any Pro engine: the same engine with nothing switched off, at any model size, on your own numbers. The five are one allowance shared across all five Pro engines, not five for each. A run counts only once it has produced a report, so a cancelled or failed run costs you nothing.

After that, this engine asks you to upgrade and nothing else does. Every statistics, forecasting and machine-learning tool stays free on every plan, and optimization and what-if stay free with limits set by the method rather than the plan: 2,000 decision cells on Simplex LP, 32 changing cells in a scenario. Nothing you have built stops working. Pro also removes the “Made with Sortia” footer from generated report tabs.

The other four Pro engines are Monte Carlo risk simulation, Decision trees, Critical Chain and Optimization under uncertainty. Pro is $199/year, and a Day Pass covers seven days for $9 if you have a single decision to make.

Templates that use it

Each one loads into your sheet with the numbers already in place, and every figure on its page was computed by the tool itself.

The other 31 models in the library that run schedule risk analysis:

Try it in your own sheet

  1. Open Sortia in Google Sheets and choose Start from a template.
  2. Pick one of the models above, and it loads with the inputs filled in.
  3. Change the assumptions to fit your situation and press Run.

Never used Google Sheets? Start here goes the whole way, in seven steps, and assumes nothing.

Other methods: Monte Carlo  Decision trees  Critical chain  Optimization under uncertainty  Statistics  Machine learning  Forecasting  Optimization  What-if analysis