Tornado charts and schedule sensitivity analysis
A tornado chart turns a Monte Carlo simulation into a ranked list of the few tasks and risks that actually move your completion date — so you fix the right things first.
Last updated: July 2026
A tornado chart is the single most actionable output of a quantitative schedule risk analysis. After a Monte Carlo simulation has run thousands of possible versions of your project, the tornado chart answers the question a sponsor really cares about: of everything that is uncertain, which handful of tasks and risks actually drive how late we might finish? It plots each driver as a horizontal bar, sorted longest-at-top, so the silhouette looks like a funnel cloud — hence the name.
The value is focus. A large R&D plan can have hundreds of uncertain activities, but variance is almost never evenly spread. Typically a small number of tasks or risk events explain the majority of the spread in the finish date. The tornado chart finds them, ranks them, and lets you spend your limited risk-response budget where it changes the answer instead of where it merely feels busy.
What a tornado chart actually shows
Each bar represents one source of uncertainty — usually a task duration, but it can also be a discrete risk event or a cost driver. The length of the bar measures how strongly that source is correlated with, or contributes to, variation in the project finish date. Long bars at the top are the dominant drivers; short bars at the bottom barely matter, no matter how nervous they make people feel.
Crucially, the ranking is about influence on the outcome, not about how big or how risky a task looks in isolation. A task can have a wide duration range and still sit near the bottom of the tornado if it is rarely on the critical path. Conversely, a task with a modest range can dominate the chart if almost every simulated schedule routes through it.
- Duration sensitivity — how much each task's uncertainty drives finish-date variance.
- Risk drivers — discrete risk events (a vendor slip, a failed assay) ranked by impact.
- Direction and magnitude — the longer the bar, the more leverage you gain by reducing that uncertainty.
How sensitivity is computed from a Monte Carlo run
Sensitivity is derived statistically from the simulation, not assumed up front. During a Monte Carlo run, the engine samples a duration for every task from its three-point estimate (optimistic, most likely, pessimistic — often a PERT-Beta distribution), recomputes the critical path, and records the resulting project finish date. After thousands of iterations you have, for every task, a paired record of "the duration this task took" and "the finish date that run produced."
From those pairs the engine computes a sensitivity measure for each task. Two are common. The duration sensitivity index is the correlation between a task's sampled duration and the project finish date — a high correlation means that whenever that task runs long, the project runs long. The criticality index is the percentage of iterations in which the task landed on the critical path. The tornado bars are these measures, sorted descending.
- Duration sensitivity index — correlation between a task's duration and the finish date.
- Criticality index — share of simulation runs where the task was on the critical path.
- A task ranks high only when it is both uncertain and frequently critical.
How to read it to prioritize risk response
Work top-down. The tasks and risks at the top of the tornado are where reducing uncertainty buys you the most schedule confidence, so they are the first candidates for active management: fast-tracking, adding a feeding buffer, dual-sourcing a vendor, running a de-risking experiment earlier, or simply tightening the estimate with more data. Reducing the range on a top driver visibly narrows your P50-to-P80 spread; doing the same to a bottom driver does almost nothing.
Read it together with the rest of the analysis. A task that is high on the tornado and high on the criticality index is a true constraint — protect it. A task that has a wide range but a low criticality index is volatile but off the critical path; it deserves a watching brief, not a crash plan. This is also how you avoid the classic mistake of pouring effort into the loudest, most-discussed task when the data says it is not what is moving the date.
Tornado vs. criticality vs. the S-curve
These outputs answer different questions and are strongest together. The probabilistic completion S-curve (cumulative distribution) tells you how likely each finish date is and where your P50, P80, and P90 land. The criticality index tells you how often each task is on the critical path. The tornado chart tells you which tasks and risks drive the variance you see in that S-curve — it is the diagnostic that explains why the curve is as wide as it is.
In a healthy workflow you commit to a date from the S-curve, justify it with the criticality index, and decide what to act on from the tornado chart. Skipping the tornado is how teams end up with a defensible P80 date and no idea which three things to fix to improve it.
How CritPath AI generates tornado and sensitivity output
CritPath AI produces tornado and sensitivity analysis directly from its Monte Carlo engine. Every simulation samples task durations from PERT-Beta three-point estimates, injects discrete risk events, optionally applies duration correlation, and records per-task results across the run. From that it computes the duration sensitivity index and the criticality index for every task and renders a ranked tornado chart alongside the P50/P80/P90 completion distribution.
Because the AI copilot is grounded in your real dependency graph, it does more than draw the chart: it can explain why a specific task tops the tornado, what reducing its range would do to your P80, and how a gate decision or a vendor slip would re-shape the ranking after a retroactive reschedule. All of this is in one modern web app at $10 per user per month, with AI usage billed separately by metered usage — not a $10,000-plus desktop seat.
Frequently asked questions
What does a tornado chart show in schedule risk analysis?
It ranks the tasks and risk events that contribute most to variance in the project finish date. Each horizontal bar's length reflects how strongly that driver moves the completion date, sorted longest-at-top, so you can see at a glance which few items actually drive your schedule risk.
How is schedule sensitivity calculated?
From a Monte Carlo run. The engine records, for every task and every iteration, the sampled duration and the resulting finish date, then computes a sensitivity measure — typically the duration sensitivity index (correlation between a task's duration and the finish date) and the criticality index (share of runs where the task was critical).
What is the difference between a tornado chart and the criticality index?
The criticality index is how often a task lands on the critical path across the simulation. The tornado chart ranks how much each task or risk drives variance in the finish date. A task ranks high on the tornado only when it is both uncertain and frequently critical — they are complementary, not the same number.
How should I use a tornado chart to prioritize risk response?
Work top-down. The drivers at the top give the most schedule confidence per unit of effort, so target them first — fast-track, buffer, dual-source, or de-risk early. Reducing the range on a top driver narrows your P50-to-P80 spread; acting on a bottom driver barely moves the date.
Does CritPath AI produce tornado charts?
Yes. CritPath AI computes the duration sensitivity index and criticality index from its Monte Carlo engine and renders a ranked tornado chart alongside the P50/P80/P90 completion curve. Its AI copilot, grounded in your dependency graph, also explains why a task tops the ranking and what reducing it does to your P80.
Related
See the math on your own schedule
CritPath AI is $10/user/month — real Monte Carlo, CCPM, decision gates, and a schedule-aware AI copilot. Join the waitlist for beta access.
Join the waitlist