Support & Documentation

Risk Matrix Pro — a Power BI custom visual by TCViz · Version 1.0.0.0 · Last updated: 16 September 2026

Risk Matrix Pro places every risk of a register on a likelihood × impact grid, coloured by score band. Pro adds where each risk is going: its residual position after controls, its target, how far it still is from that target, and your risk appetite drawn across the matrix.

Video walkthrough

Also on YouTube: www.youtube.com/watch?v=0ps6t6t70JY

Quick start

  1. Drop the visual on the canvas.
  2. Drag the risk ID or name into Risk. Each row becomes one marker.
  3. Drag the likelihood into Likelihood and the impact into Impact. The matrix appears, sized from your data.
  4. Optional: add a Category (type, owner, status) to colour the markers and build the legend.
  5. Optional Pro: add Residual and Target likelihood and impact to show movement and targets.

Field wells

WellAcceptsLimitPurpose
RiskAny text or ID field1 fieldOne marker per value. Short IDs (R01, R02…) read best inside the marker.
CategoryAny grouping field1 fieldMarker colours, legend and, in Pro, marker shapes.
LikelihoodMeasure or numeric column1 fieldHorizontal position.
ImpactMeasure or numeric column1 fieldVertical position.
Residual likelihood / impact ProMeasure or numeric column1 field eachPosition after controls. Both are needed.
Target likelihood / impact ProMeasure or numeric column1 field eachPosition you aim to reach. Both are needed.
TooltipsMeasuresup to 5Extra values in the tooltip, with the model's format.

Up to 1,000 risks are loaded. The limits are the same in Free and Pro.

Input values and grid size

Likelihood and impact can arrive in any of these forms — the visual detects which one with Grid → Input values → Auto, or you can set it:

Input valuesExamplePlaced at
Levels3Level 3
Fraction (0 to 1)0.45 on a 5 × 5 gridLevel 3
Percent (0 to 100)45 on a 5 × 5 gridLevel 3

Grid size → Auto (from data) uses the highest level in your data, from 3 × 3 to 10 × 10. With fractions or percentages there is no natural maximum, so it uses 5 × 5. Choose a fixed size to override it.

How scores and bands work

A cell's score is likelihood × impact. The cell colour comes from its band:

BandAutomatic ruleOn a 5 × 5 grid
Lowup to 16% of the maximum score1 – 4
Mediumup to 36%5 – 9
Highup to 64%10 – 16
Criticalabove 64%20 – 25

With Custom thresholds Pro you set the score where Medium, High and Critical start, to match your own methodology.

Inherent, residual and target Pro

By default the matrix stays clean: point at a risk, focus it with the keyboard or select it, and its path appears — a solid arrow for what has been achieved, a dashed arrow for what remains, a small circle for the other positions and a diamond for the target. Set Movement arrows → All risks to show every path at once.

A risk whose current score (residual, or inherent if there is none) is still above its target score carries a dashed red ring. The tooltip and the cell detail panel say whether the target is reached.

Format pane

CardSettingWhat it does
GridGrid sizeAuto (from data), or 3 × 3 to 10 × 10.
Input valuesAuto, levels, fraction or percent.
Cell gap / corner radiusSpacing and rounding of the cells.
Show cell score / risk countScore top-left, number of risks top-right, and their colour.
Data warningsWhile editing (default), always or off. See Data warnings below.
Score bandsLow / Medium / High / CriticalColour of each band.
Custom thresholds ProScore where each band starts.
Risk appetite ProAppetite score, line colour and widthA stepped line separating cells with a score up to the appetite from the rest.
MarkersMarker sizeMarkers shrink to fit a busy cell; beyond that a +n badge shows the rest.
Show labels / max characters / label colorText inside the marker, fitted to its size.
Marker color (fx: Pro)Colour without a Category. With fx Pro, a rule or field value per risk.
Shape by category ProCircle, square, diamond and triangle per category.
Category colorsOne colour per categoryShown when a Category field is present.
Movement and target ProMovement arrowsSelected and hovered risks (default), all risks, or off.
Place markers atInherent, residual or target position.
Arrow colorColour of arrows and position symbols.
Flag risks above target / ring colorDashed ring on risks that have not reached their target.
Cell detail panel ProOpen on cell click, background, text color, font sizeSide panel listing every risk in the clicked cell.
AxesTitles, level labels, font, size, colorLevel labels are comma separated: Rare, Unlikely, Possible, Likely, Almost certain.
LegendShow, position, font, size, text colorClick a legend entry to select all its risks.

Free, Pro and the Pro preview

Paid settings and field wells are marked (Pro) in Power BI. Without a licence:

Interaction

Accessibility

Data warnings

A yellow strip at the bottom-left tells you when:

By default it shows only while editing, because it is meant for the report author.

Troubleshooting

All risks sit in the bottom-left corner

The grid is bigger than your data. Set Grid → Grid size → Auto (from data), or the size that matches your scale.

Every risk is in the same column or row

The input scale was detected differently from what you expect — for example probabilities stored as whole percentages. Set Grid → Input values explicitly.

The field shows "Sum of Likelihood" and values look too high

Power BI is adding the likelihood of several rows. Make sure each risk appears once in your table, or set the field's summarisation to Don't summarize, Maximum or Average.

No arrows appear

Arrows need both residual (or both target) fields, and by default they only show for the risk you point at or select. Check Movement and target → Movement arrows.

Labels inside the markers are cut short

Labels are fitted to the marker. Use short IDs in Risk, increase Markers → Marker size, or raise Label max characters.

Clicking a risk does not filter another table

Check the relationship between the tables in Model view. Filtering from a fact table to a dimension table needs the cross-filter direction set to Both.

Pro features are not active after purchasing

The visual detects the licence when the report is opened or refreshed. Microsoft notes it can take up to an hour for a new licence to be recognised: refresh the browser (F5) or close and reopen Power BI Desktop. A licence is required per user. If it persists, email us with your AppSource order reference.

Limits and known behaviour

Getting help

No section matches your search.