Skip to content
Back to Native library

Matrix visual

Native visual

Hierarchical rows and columns with expand/collapse, subtotals and grand totals.

Working example
Department / Team / EmployeeHoursAvg performance
236.0 h88%
95.6 h85%
140.4 h91%
254.0 h80%
146.5 h81%
244.7 h78%
Total — all departments881.2 h82%

Native Power BI pattern: Matrix. Use it instead of a Table when rows belong to a hierarchy or values must be aggregated per group. Average performance is recalculated at every level — it is not the sum of the rows below.

What it is

The Matrix visual is a pivot-style visual: row groups, optional column groups, subtotals and grand totals with stepped or tabular layout.

When to use it

Data has a hierarchy (Department → Team → Employee) or values must be crossed by a second dimension.

Native Power BI capability

Yes — Matrix visual with row hierarchy, column hierarchy, +/- expand controls, subtotals and totals.

UX considerations
  • Specify the default expansion level; fully expanded matrices read as noise.
  • Decide stepped layout (indented, compact) versus tabular layout (one column per level).
  • State which subtotals are meaningful — not every level deserves one.
BI developer considerations
  • Build the hierarchy in the model or the Rows field well.
  • Enable +/- icons in the format pane so users can expand without the header menu.
  • Turn subtotals off per level rather than globally where possible.
QA considerations
  • Subtotals aggregate the measure, not the displayed rows.
  • Expand/collapse state resets as specified on page navigation.
Limitations
  • Expansion state is not persisted per user unless captured in a bookmark.
  • Very wide column hierarchies degrade performance and readability.
HTML prototype note

This interactive HTML example simulates the native Power BI behaviour. It is not Power BI itself and should not be interpreted as an implementation of the Power BI rendering engine.

Designer ↔ BI developer handoff
UX designer defines
  • Information hierarchy and column order
  • Required fields and measures
  • Default state (sort, filters, selection)
  • Interaction intent and what it should affect
  • Responsive priority and what may be dropped
  • Accessibility expectations and focus order
  • Empty, loading and error states
BI developer implements
  • Dataset fields, measures and relationships
  • Visual configuration in the format pane
  • Filters, sort order and interaction wiring
  • Drill-through / drill-down configuration
  • Conditional formatting rules
  • Row-level security and permissions
  • Query performance optimisation
QA validates
  • Data correctness against the source
  • Correct default state on first load
  • Sorting and filtering behaviour
  • Drill and selection behaviour
  • Permissions and row-level security
  • Empty states and responsive layout
  • Performance and export behaviour
More in Tables & data