Mermaid code
quadrantChart
title Project risk matrix
x-axis Unlikely --> Likely
y-axis Low impact --> High impact
quadrant-1 Mitigate now
quadrant-2 Prepare a plan
quadrant-3 Accept
quadrant-4 Monitor
Key engineer leaves: [0.3, 0.85]
Vendor API deprecated: [0.55, 0.7]
Scope creep from sales: [0.8, 0.6]
Cloud cost overrun: [0.6, 0.4]
Security audit finding: [0.35, 0.9]
Holiday staffing gap: [0.75, 0.25]
Office move delays: [0.2, 0.15] Paste this into any tool that renders Mermaid, or into the editor to change the theme and export PNG or SVG. Syntax reference: Quadrant guide.
What this diagram shows
The x-axis runs from Unlikely to Likely and the y-axis from Low impact to High impact. With Mermaid numbering quadrants counterclockwise from the top right, quadrant-1 (likely and high impact) is Mitigate now, quadrant-2 (unlikely but high impact) is Prepare a plan, quadrant-3 is Accept, and quadrant-4 (likely but low impact) is Monitor. Scope creep from sales at [0.8, 0.6] is the only risk sitting in the mitigate quadrant.
How to adapt it
- Score each risk with the team on a 1 to 5 scale, then divide by 5 to get the 0 to 1 coordinates Mermaid expects.
- Re-plot the chart every month and keep the old version so the steering group can see risks moving between quadrants.
- Rename the axes to
Rare --> Almost certainandMinor --> Severeif your risk register uses those terms. - Keep risk labels under four words; long labels overlap when two risks have similar scores.
FAQ
What should happen to risks in the Accept quadrant?
Record them in the risk register with a review date and do nothing else. The chart exists so the team spends mitigation effort on the top-right quadrant instead.
Can I draw the quadrant boundaries somewhere other than the center?
Not in the current syntax; the four quadrants always split at 0.5 on each axis. Scale your scores so that the threshold you care about lands at 0.5.