Skip to content This library is free, offered as dana. If it helps your work, donate here →

This is one of 3,622 free prompts in the penguin tree ai library. Sign up once and the whole library opens, with new prompts by email.

open the library →

Project risk quantification calculator

Converts a qualitative risk register into quantified cost exposure — calculating expected monetary value per risk, aggregating a probabilistic contingency range via Monte Carlo logic, and producing a ranked heat map…

download .md

Purpose

Transform a list of identified project risks with probability and impact estimates into a defensible, quantified contingency recommendation — producing expected monetary value per risk, a P50/P80/P90 aggregated cost range using three-point estimation and Monte Carlo logic, and a ranked heat map that tells the team which risks to actively manage first.

When to Use

Invoke this skill when the user asks to:

  • Quantify a risk register or turn qualitative risks into dollar figures
  • Calculate a contingency budget or size a contingency reserve for a capital project
  • Determine P50, P80, or P90 cost confidence levels for a project
  • Rank or prioritize project risks by expected financial impact
  • Build a risk heat map with mitigation and contingency recommendations
  • Defend a contingency number to a project sponsor, board, or funding authority

Inputs Required

Before starting, collect:

  • Risk list: Each identified risk with a short description (10+ risks is ideal; the tool works with any count)
  • Probability per risk: Likelihood of occurrence — as a percentage (e.g., 30%) or qualitative band (Low/Medium/High)
  • Impact estimates per risk: Cost impact if the risk occurs — a single figure, or preferably a three-point estimate (optimistic / most likely / pessimistic)
  • Project base budget: Total baseline cost estimate the contingency sits on top of
  • Currency: The reporting currency for all outputs
  • Confidence target: Which percentile the sponsor wants to fund to (P50 / P80 / P90) — default to P80 if unspecified
  • Risk categories (optional): Cost, schedule, scope, procurement, external/regulatory — for grouped reporting

If a risk has only a single-point impact, treat it as the "most likely" value and derive optimistic/pessimistic bands at ±20% for triangular modeling. If probability is given qualitatively, map Low = 15%, Medium = 45%, High = 75% and note the assumption.

Instructions

Step 1: Normalize and Structure the Register

Standardize every input before any math runs:

  • Convert all probabilities to decimals (30% → 0.30). Map qualitative bands using the defaults above.
  • Ensure each risk has a three-point impact (O / ML / P). Where only one value exists, apply the ±20% default and flag it as a low-confidence input.
  • Assign each risk a category if provided; otherwise infer from the description (Cost / Schedule / Scope / Procurement / External).
  • Number each risk (R1, R2, …) for traceable referencing throughout the output.

Step 2: Calculate Expected Monetary Value (EMV) Per Risk

For each risk:

  • Compute the three-point mean impact using triangular estimation: Mean = (O + ML + P) / 3. (Use PERT weighting (O + 4·ML + P) / 6 instead when the most-likely value is well-established — state which you used.)
  • Compute EMV = Probability × Mean Impact.
  • Record the impact spread (P − O) as a volatility indicator — wide spreads drive contingency more than the EMV alone suggests.

Present a per-risk table: ID, Description, Probability, O/ML/P impact, Mean Impact, EMV.

Step 3: Aggregate the Contingency Distribution (Monte Carlo Logic)

Model the total risk exposure as a distribution, not a single number:

  • Treat each risk as a Bernoulli trial (occurs with its probability) whose cost, when triggered, is drawn from its triangular impact distribution.
  • Reason through the aggregate distribution using Monte Carlo logic across a large notional sample (e.g., 10,000 iterations): in each iteration, sum the triggered risks' sampled costs.
  • Derive the aggregate percentiles analytically where a full simulation isn't executable: the sum of EMVs approximates the mean (~P50 for many independent risks), and the aggregate standard deviation is √(Σ variance_i) where each risk's variance combines Bernoulli occurrence variance and triangular impact variance.
  • Report the reasoning transparently so the contingency figures are auditable, not black-box.

Step 4: Derive P50 / P80 / P90 Contingency

From the aggregate distribution:

  • P50: 50% confidence the total risk cost lands at or below this — the expected-case contingency.
  • P80: 80% confidence — the standard capital-project funding level.
  • P90: 90% confidence — conservative reserve for high-consequence or fixed-budget programs.
  • Express each as both an absolute figure and a percentage of base budget, so the sponsor sees the contingency as a ratio (e.g., "P80 contingency = $4.2M, 8.4% of base").

Step 5: Build the Ranked Risk Heat Map

  • Plot each risk on a Probability × Impact matrix (Low/Medium/High on each axis) and assign a heat zone: Green (monitor), Yellow (manage), Red (actively mitigate).
  • Rank all risks descending by EMV — this is the action-priority order.
  • Flag the top 20% of risks by EMV, which typically drive 60–80% of total contingency, as the critical few to attack first.

Step 6: Contingency & Mitigation Recommendations

  • State the recommended contingency figure tied to the confidence target (default P80) with one-sentence justification.
  • For each Red-zone risk, give one specific mitigation lever (avoid / reduce / transfer / accept) and its expected effect on EMV.
  • Identify residual contingency — the portion driven by risks that cannot be economically mitigated and must simply be funded.
  • Note any wide-spread risks where tightening the impact estimate would meaningfully shrink required contingency.

Output Format

  • Structure: Per-risk EMV table → aggregate distribution summary → P50/P80/P90 table → ranked heat map → recommendations
  • Length: 900–1,300 words plus tables
  • Format: Structured document with two tables (per-risk EMV; P50/P80/P90 contingency) and a heat-map ranking list
  • Sections: Assumptions & Normalization → Per-Risk EMV → Aggregate Distribution → Contingency Confidence Levels (P50/P80/P90) → Ranked Risk Heat Map → Contingency & Mitigation Recommendations
  • Tone: Risk engineer briefing a capital funding board — quantitative, precise, decision-oriented; every number traceable to an assumption

Quality Checklist

Before delivering output, verify:

  • [ ] Every risk has a computed EMV and appears in the per-risk table (count matches input)
  • [ ] Each probability and impact input has been converted/normalized, with all default assumptions explicitly flagged
  • [ ] P50, P80, and P90 are all reported as both absolute figures and percentages of base budget
  • [ ] P90 ≥ P80 ≥ P50 (monotonic — a common arithmetic error to catch)
  • [ ] The estimation method (triangular vs. PERT) and the Monte Carlo aggregation logic are stated, not hidden
  • [ ] The top-EMV risks are explicitly ranked and the critical few are flagged with specific mitigation levers

Notes

  • The sum of EMVs is the expected contingency but almost always undershoots the funded contingency — sponsors fund to P80/P90, not to the mean, because a single-point EMV ignores tail risk.
  • Correlated risks (e.g., one delay triggering others) inflate the true P90; if the user indicates dependencies, note that the analytic aggregate understates the tail and a full correlated simulation would run higher.
  • The biggest contingency-reduction wins usually come from narrowing wide impact spreads, not from lowering probabilities — better estimates beat optimism.
  • Recommend the user revisit this quantification at each project gate; probabilities and impacts change as the project retires early risks.

How to use this skill

This file is a Claude Code skill in Anthropic's standard format — markdown with YAML frontmatter at the top.

Installing in Claude Code:

  • ~/.claude/skills/<folder-name>/SKILL.md — auto-loads in every session anywhere on your machine (recommended for skills you'll use across multiple projects)
  • <your-project>/.claude/skills/<folder-name>/SKILL.md — auto-loads only when working in that project (recommended for project-specific skills)

Restart Claude Code or open a new session to register.

Using in Claude.ai, ChatGPT, Gemini, or other AI tools:

  1. Drag this file into a new chat, or copy and paste its contents
  2. Send your task or request as your next message — the AI will apply the skill where it fits

For Claude Code skill details: https://docs.anthropic.com/en/docs/claude-code/skills