Skip to main content

Every setting of the Sankey Pro

Not a spec sheet — the story each setting is designed to tell: why it exists, when a business user would reach for it, and what you should expect to see when you flip it.

What this visual is for

Most Power BI visuals answer “how much?” A Sankey answers where did it go? — how customers, money, headcount, inventory or energy move from one state to the next, and what is lost on the way. Rows become flows, the width of a ribbon is its value, and the shape shows you the dominant paths, the bottlenecks and the leaks.

The hard part is not drawing one. It is keeping it readable on real enterprise data, and answering the question after the picture: which path actually matters, where is the drop-off, and what changed since last month? That is what the ranking and thresholds, the flow trace, compare mode, the Flow Integrity Check and the insight engine are for.

Below is every setting the visual has — 9 gear tabs, 27 panels, 157 properties — grouped exactly like the in-visual gear, with what each one does and when you would reach for it. Settings marked Paid need a licence in the Power BI Service; all of them are free and fully unlocked in Power BI Desktop.

The data you bind

Two bindings draw a diagram, and there are two different ways to give them. Bind Source and Destination if your table already has a from/to shape, or bind two or more Stages columns and let the Automatic Journey Builder work the flows out for you. Everything else adds meaning. Cycles, self-links and stages that get skipped are first-class — the visual never errors on messy flow data.

Source · one of two ways in
The “from” end of each flow. Paired with Destination this is the classic Sankey binding: one row is one flow. Use it when your table already has a from/to shape.
Destination · pairs with Source
The “to” end of each flow. Self-links (source = destination), repeated pairs and flows that skip a stage are all first-class — the visual never errors on them.
Stages (journey) · the other way in
Two or more columns, one per step: Stage 1 → Stage 2 → Stage 3. The Automatic Journey Builder converts them into flows for you, so there is no calculated source/destination model to write. Blank cells end that row's journey rather than breaking it.
Value
The measure each flow carries — it sets ribbon width and every number in the visual. Leave it unbound and each row counts as 1, so a journey table works with no measure at all.
Link category
A category per flow (product line, reason code, fuel type). Colours the ribbons, drives the legend, can be written into the ribbon labels, and is available to the rules editor.
Node category
A category per node. Colours nodes by group, and unlocks the per-category icon, image and texture modes plus the Categorical node alignment that lines the same category up across every stage.
Node order
A numeric measure that fixes the vertical order of nodes. Bind it and the Custom order field option becomes available under Node ordering — the only way to pin an order that survives every slicer.
Node icon
A column of icon tokens, one per row, so different nodes get different icons from your data. Icons are drawn from an embedded 103-icon vector catalog — nothing is fetched.
Node image
A column of base64 data: URIs, drawn inside the node. Only data: URIs render — external URLs are ignored by design, which is part of what keeps the visual certifiable.
Comparison value
The same flows measured a second time — last month, budget, scenario B. Bind it and every flow gains a delta and a status (new, up, down, flat, disappeared), which the variance colours, the ribbon labels and the insight engine all read.
Tooltips
Extra business measures to show in the hover card alongside the flow numbers.

Layout

The diagram's overall shape: how stages are worked out, which way it runs, how the bars are aligned and in what order the nodes and ribbons stack. Node geometry and fill live under Nodes; stage titles live under Labels.

Stage layout
Multi-stage follows the chain, so A → B → C is three columns and B is drawn once. Two columns draws the rows exactly as given — all sources on one side, all destinations on the other — so a name appearing on both sides appears twice. Use Two columns for a straight from/to comparison, Multi-stage for a real journey.
Orientation
Left → right, right → left, top → bottom or bottom → top. Everything else — labels, stage titles, the legend, keyboard navigation — re-orients with it.
Node alignment
Justified spreads each stage across the full height; Start, End and Centre pin the bars to one edge or the middle; Categorical lines same-category nodes up into bands across every stage, which needs a Node category bound.
Fill space
Spreads each stage's nodes to span the full canvas. Node sizes stay strictly value-proportional — only the gaps stretch, so nothing is exaggerated to fill the frame.
Node ordering
Automatic (crossing-minimising), Value high → low, Value low → high, Alphabetical, Data order, or a Custom order field. Data order follows the order rows arrive from Power BI — control it with the visual header's Sort axis menu or your column's “Sort by column”; with no sort set Power BI usually delivers rows largest-value first. For an order that never moves, bind the Node order role and pick Custom order field.
Flow order
Node ordering places the bars; this places the ribbons where they meet each bar. Automatic keeps the fewest crossings; Largest flow first, Smallest flow first and By connected node name fix a reading order that stays put when a slicer moves. This is the answer to “my flows re-order every time the data changes”.
Minimum node size
A pixel floor so a small node cannot collapse to an unclickable hairline when a few nodes carry most of the volume. Sizes stay value-proportional above the floor. 0 turns it off.

Stages

Stage bands
Faint background bands behind each stage column, so the steps read as steps even where the ribbons are dense. The stage titles themselves — their wording, font and colour — are under Labels › Stages.

Nodes

Five panels: the bar itself, textures, icons, images, and what happens when you click or drag one. One icon, image or texture applied to every node is free; choosing them per stage, per category, per node or from a bound field is paid.

Node

Node width
The thickness of the bars, 2–40px. Wider bars give icons and images more room.
Node spacing
The gap between bars within a stage, 0–48px.
Opacity
Bar opacity, 10–100%.
Corner radius
Rounds the bars, 0–12px. Never rounds past half a bar's short side, so a thin node cannot turn into a lozenge.
Fill nodes with colour
Turn off to draw nodes as an outline only — ideal when the node carries a logo or icon and the fill would fight it. Turning it off reveals the four border controls below.
Border uses node colour
Outline-only nodes take their own colour for the outline instead of a fixed one.
Border colour
The outline colour, when it is not inheriting the node's own.
Border width
Outline thickness, 0.5–8px.
Border style
Solid, dashed or dotted.

Patterns

Apply patternPaid
None, Auto (a different texture per node colour — free, and the colour-blind and print aid), or Single texture everywhere (also free). By stage, By node category and Per node let you choose each one yourself.
Pattern
One of 20 textures — Dots, Circles, Diagonal, Hatch, Grid, Horizontal, Vertical, Checker, Diamonds, Zigzag, Waves, Anti-diagonal, Triangles, Bricks, Scales, Plus, Stars, Hexagons, Dashes, Weave. Shown as a real tile preview, so the picker draws exactly what the nodes get.
Texture colour
The ink the texture is drawn in. Automatic inks it in a contrasting tint of the report background — light marks on a dark canvas, dark on a light one. In the per-slot modes this is the fallback for any slot still on Automatic; a colour chosen beside a specific texture always wins.
Pattern per stage / category / nodePaid
One row per stage, per category or per node, each with its own texture and its own ink colour. The lists show the first N and tell you how many more there are, with a pointer to Filter › Top N to narrow the diagram.

Icons

Node iconsPaid
No icons, or the same icon on every node (free). By field (from the Node icon role), By node category, By stage and Per node are paid. 103 icons across 15 families — People, Organization, Technology, Communication, Documents, Finance, Locations, Supply Chain, Projects, Network, Energy, Transport, Retail, Health, Nature — all embedded vectors, never fetched.
Icon
The single icon used in “Same icon on every node” mode, with a colour chip beside it.
Icon colour
Automatic draws each icon white on a dark node and dark on a light one. In the per-slot modes this is the fallback for any slot still on Automatic.
Icon style
Single centres one icon in each node. Filled paves the whole bar with it, so the node reads as being made of that icon. Applies to icons only — an image is always drawn as one centred picture.
Icon & image size
10–48px, shared by icons and images because they occupy the same graphic slot. It sits above the per-node list so it is never scrolled off the bottom of a long card.
Icon per category / stage / nodePaid
One row per group with its own icon and colour. Category slots open pre-filled with the icon inferred from the category name, so the mode works untouched and the guess is yours to correct.

Images

Node imagesPaid
No images, or the same image on every node (free). By field (from the Node image role), By node category, By stage and Per node are paid. Uploads are read locally with FileReader, downscaled on a canvas and stored inside the report as compact base64 — no network request, no external file, nothing to break when the report moves.
Image
The single upload used in “Same image on every node” mode.
Image per category / stage / nodePaid
One upload slot per group. Precedence, highest first: a per-node image, then a per-node icon, then the image mode, then the icon mode.

Click & drag

Show node details on clickPaid
Clicking a node opens a docked panel with its full flow breakdown and its top sources and outcomes. The click still cross-filters the rest of your report either way.
Drag nodes to repositionPaid
Move a node anywhere on the canvas; the position is saved with the report and survives refresh. Double-click a moved node to release it back to the computed position.
Moved nodes › Release all
Puts every hand-moved node back where the layout would have placed it, leaving every other setting alone. The button only appears once something is actually pinned.

Colours

Three panels: the data colours on nodes, the data colours on ribbons, and the structural colours of the canvas itself. 35 qualitative palettes ship, and every one of them is the same design-token set used across the whole Zentrix family.

Node

Colour by
Palette gives every node its own colour from the chosen scheme; Category paints all nodes in a group the same colour (needs a Node category bound — the option stays unreachable rather than selectable-then-inert); Single paints every node one colour.
Palette
35 schemes, from the Zentrix brand palette through Tableau, Set2/Set3, Paired and Accent to Ocean, Sunset, Forest, Berry, Jewel, Neon, Muted and Grayscale. In gradient, source and destination link modes the ribbons inherit from here too, so one choice colours the whole diagram.
Reverse colours
Flips the order the palette hands its colours out.
CVD-safe only
Filters the palette list to schemes that stay distinguishable with common colour-vision deficiencies. It filters the list; it does not recolour anything until you pick one of the remaining palettes.
Node colour
The one colour used in Single mode.
Category colours
A swatch per category once a Node category is bound. A report saved in Category mode whose field is later removed keeps an explanatory empty state rather than going blank.

Link

Colour by
Source → destination gradient (each ribbon fades between its two endpoint colours), Source colour, Destination colour, Single colour, Link category, or By variance. The last two need their field bound and stay unreachable until it is — which is the fix for “I turned the legend on and nothing happened”.
Link colour
In Single mode, the colour every ribbon is painted. In Link category mode, the fallback for any flow whose category is blank.
By variancePaid
Paints each ribbon by how it moved against the Comparison value — up, down, flat, new or disappeared. Needs a Comparison value bound.

Canvas

Canvas coloursPaid
Follow report theme takes the background and default text colour from whatever theme the report is using (View › Themes), so the visual sits on the page like a built-in chart instead of painting a white card onto a tinted one. Zentrix light and Zentrix dark pin the visual's own surface regardless. Custom lets you set both.
Canvas colourPaid
The background, in Custom mode.
Text colourPaid
The default text colour in Custom mode — labels, the title and the diagnostics strip use it unless given their own colour under Labels.
Contrast safety net
A theme's text colour is often a decorative accent rather than a readable one. Where it does not have enough contrast against the theme's background, the visual falls back to a readable colour rather than shipping unreadable text. High contrast mode overrides all of this — Power BI allows only its own four colours there.

Ribbon geometry and behaviour. Ribbon colour is on the Colours tab; node click and drag are on the Nodes tab.

Link

Ribbon scale
Absolute keeps widths strictly proportional to value. Log compresses the range so a diagram with one enormous flow and many tiny ones stays readable. Widths always track magnitude either way — for percentages, turn on link labels.
Negative values
Magnitude draws negatives by their size; Distinct colour paints them amber so they stand apart from positives; Reject drops them with a warning on the diagnostics line. Negative values are handled deliberately rather than silently mangled.
Opacity
Ribbon opacity, 5–100%.
Curvature
How much the ribbons bend between stages, 0–100%. 0 gives straight bands.
Min width
A pixel floor so a small flow stays visible and hoverable, 0–20px. The same honesty rule as the node floor — the ribbon is findable, and the number in the tooltip is still the real one.
Animate flowPaid
A gentle moving-dash overlay along each ribbon, showing direction. Respects the operating system's reduced-motion setting.
Flow speedPaid
Slow, medium or fast, when the animation is on.

Interactions

Hover highlight
Which flows light up when you hover a node: Connected only, Incoming path, Outgoing path, Full path (the whole route through the hovered element, both directions), or Trace flow. Works with or without dimming — with dimming off the highlighted flows brighten instead.
Trace flowPaid
Goes beyond highlighting and draws how MUCH of the hovered node's volume rides each ribbon downstream — the difference between “these are connected” and “this is where it actually went”.
Estimate splits at mixed nodesPaid
Where several inflows mix at a node, the data cannot say whose units left by which exit. On, the trace assumes even mixing and carries on, marking those segments as estimated in the tooltip. Off, it stops at the first mixing node and shows only provable flow. This is the honesty switch behind Trace flow, and it is visible (dimmed) even outside trace mode so the capability is discoverable.
Dim unrelated elements
Fades everything not on the hovered or selected path.
Dimmed opacity
How far unrelated flows fade, 0–60%. Dimming never brightens, so it stops having an effect above the ribbons' own opacity.

Labels

Five panels: the chart title, the labels on the bars, the stage title rail, number formatting for the whole visual, and the labels on the ribbons. Every text surface has its own typography so none of them has to compromise for another.

Title

Chart title
A heading drawn inside the visual, above the diagram — separate from Power BI's own title in the format pane. Leave it empty to use only Power BI's; type one here to style it with the four controls below, which unlock as soon as there is a title to style.
Font · Text size · Style · Text colour
Font family, 8–40px, bold / italic / underline, and colour.

Node labels

Show labels
The master switch for the text on the bars.
When
Always, or On hover. On hover keeps the canvas clean and names a node only while you point at it or move keyboard focus to it. The names still reach screen readers either way.
Show value and percent
The free way to control label content: labels read either “Checkout” or “Checkout · 1.2K (34%)”.
Label contentPaid
An ordered list of Name, Value and Percent — drag a row to reorder it, the eye hides a piece without losing its place. Order is as much a choice as presence: “34% · Checkout” reads differently from “Checkout · 34%”.
Position
Auto, Inside or Outside. Inside draws the label on the bar (turned sideways on a left-to-right diagram); Auto uses inside only where the label genuinely fits and outside everywhere else.
Font · Text size · Style · Text colour
Font family, 7–28px, bold / italic / underline, and colour.
When too long
Truncate adds an ellipsis; Wrap breaks long names onto up to three lines; Off relocates the label instead of shrinking it. Widths are computed arithmetically, never measured from the DOM, which is what keeps the layout identical for the same data on every machine.
Text background
A backing behind the label so it stays readable over a ribbon: Card (a rounded box), Highlight (outlines the letters themselves, no box) or Pill (a tight capsule), with its own colour and 0–100% opacity.

Stages

Show stage titles
The row of column headings above the diagram.
Names
One editable name per stage. Leave one empty and it falls back to the name of the field bound to that stage — or to “Stage N” when the stages were worked out from the data.
Font · Text size · Style · Text colour
Font family, 6–28px, bold / italic, and colour.
Graceful degradation
Where the titles get too tight to read, the rail steps down to bare stage numbers rather than letting names overlap. Zooming in brings the full names back.

Numbers

Display units
Auto, None, Thousands, Millions, Billions, Lakhs or Crores. This governs every number in the visual — node labels, ribbon labels, both tooltip styles, the metrics table, the insight cards and the diagnostics line — which is why it has its own panel rather than sitting behind the node-label switch.
Decimals
0–4 decimal places.
Accounting format
Negatives in parentheses, across labels, tooltips and the table.

Link labels

Show link labelsPaid
Labels on the ribbons themselves — the honest home for percentages, since ribbon widths always track magnitude.
ContentPaid
Value, % of source, % of destination, % of total, Variance (needs a Comparison value) or Link category (needs a Link category). Both data-driven options stay unreachable until their field is bound, and a report saved in one of them whose field is later removed says which field brings the labels back rather than going quietly blank.
PositionPaid
Start, Centre or End along the ribbon. Defaults to Start — centred labels stack on top of each other where ribbons converge.
Text placementPaid
Default, or Along the flow, which sets the text on the ribbon itself and curves with it.
When overlappingPaid
Avoid overlap hides the lower-value label of any two that would collide; Always show draws them all.
Text size · Text colour · Text backgroundPaid
7–20px, a colour, and an optional backing.

Filter

Where ordinary Sankeys turn to spaghetti. Four panels answering four different questions — which nodes stay, which flows stay, what about this one node, and what the percentages are measured against. Whatever is removed is always counted on the diagnostics line: never dropped silently, never frozen.

Nodes › Rank

Show
All, Top N, or Bottom N.
How many (N)
1–500.
Rank by
Node value, Inflow, or Outflow.
Count N
Across the diagram counts N once for the whole thing — whole stages can disappear if their nodes are all small. Within each stage re-counts at every level, so no stage ever empties out and a stage with fewer nodes than N keeps all of them.
Keep connecting nodes
Removing a node in a flow diagram cuts every path through it, so nodes that survived the ranking can still vanish with nothing flowing into them. This re-admits the strongest route up to a source and down to an outcome through each survivor. The extra nodes are counted separately on the diagnostics line.
Group removed as “Other”
Off hides the removed nodes and their flows, which also changes what “% of total” means. On keeps them as one bucket per stage, so every stage still totals the full value. Available under Top N — an “Other” bucket has no meaning under Bottom N.
“Other” label
Rename the bucket to your own wording.

Nodes › Thresholds

Hide below value
Removes any node whose throughput — the larger of everything flowing in and everything flowing out — is under this amount. 0 is off.
Hide below share
Removes any node carrying less than this share of the total, 0–100%. A ranking keeps a fixed count, so what survives moves whenever the data does; a threshold is a rule that means the same thing after every slicer. Set either or both — the stricter one wins.

Flows

Hide zero-value nodes & flows
Drops flows whose value is exactly 0 and any node left with nothing flowing in or out. The count of hidden flows still shows on the diagnostics line.
Hide below value
A minimum flow amount. Flow thresholds apply first — nodes are then ranked on whatever volume is left. 0 is off.
Hide below share
The scale-free twin of the amount above, 0–100%. 0 is off.
Keep top N (per node)Paid
Thins every node's ribbons evenly instead of by raw size across the whole diagram, so a column whose flows are all small keeps its biggest ones rather than losing every ribbon it has. 0–50; 0 is off.
Count (per-node cap)Paid
Outgoing, Incoming, or Both directions. Both keeps a flow that matters to either end of it, so a node never loses its biggest incoming ribbon just because its source has larger routes elsewhere.
Max flows
A render ceiling, 0–5,000, capping by raw size across the whole diagram. Free, deliberately — it is a performance guardrail and the people most likely to need it are the ones on the free cap. 0 shows all flows.

Per node

Always show / Never show, per nodePaid
The last word on any node, whatever the ranking and thresholds decided. Always show survives every cut and sits on top of N rather than using up one of its places; Never show is removed before anything is ranked, so a junk node can never take a slot. The escape hatch every automatic choice owes the author.

Percentages

Share of
Every cut on this tab changes how much volume is left, and “% of total” is measured against that. Shown data describes what is on screen — the same node can read a different share once something is removed, and the diagnostics line says when that has happened. All data keeps percentages measured against the unfiltered volume, so they match a card or table beside the visual that has no filter applied.

Rules

Conditional formatting for a flow diagram: colour nodes and flows by any number of your own conditions. Rules override the base Colours mode wherever they match, and enabled rules keep colouring even when the editor panel itself is hidden.

Rules editorPaid
Shows or hides the rule editor panel on the canvas. Each row is: enable · colour · target · field · operator · value · delete.
TargetPaid
Node or Flow — which of the two the rule paints.
Node fieldsPaid
Numeric: Node value, Inflow, Outflow, Net (in − out), Stage number. Text: Name, Category. Net and Stage number are computed by the visual, so you can colour by graph position without adding a column to your model.
Flow fieldsPaid
Numeric: Flow value, Comparison value, Variance. Text: Source name, Destination name, Link category.
OperatorsPaid
Numeric fields get ≥, >, ≤, <, = and ≠. Text fields get is, is not, contains, excludes, starts with, not starts. The operator list follows the field you pick, so an impossible combination cannot be built.

Overlays

The visual's chrome and its alternate views — the tooltip, the view switch, annotations, the gear itself and the legend.

Tooltip

Tooltip style
Zentrix card shows the branded hover card with the full flow breakdown. Native uses the host tooltip, which is what enables report-page tooltips. Off disables both.

View switch

Summary table
Adds a Table segment to the switch beside the gear, flipping the canvas to a sortable node-metrics table — Node, Value, Inflow, Outflow, Stage and % of total — with search, summary cards and CSV export.
InsightsPaid
Adds an Insight segment — the plain-English read-out, as cards covering data quality, flow analysis, concentration, the journey, anomalies, top paths, comparison and flow integrity. Findings are clickable: trace the path it named, or focus the node it called out.
Switch position
Auto, or pinned to any corner. This moves the small Flow / Table / Insight switch itself; the Table and Insight views always fill the whole canvas.
The always-on table mirror
Separately from the Table view, a screen-reader-friendly table mirror of every flow is always present in the page for assistive technology. There is no toggle, because there is no reason to turn it off.

Annotations

Show annotationsPaid
Alt-click any node to write a note on it. Each note shows a small dot on its node: click the dot to open or fold it away, click the note to edit or delete it. Notes are anchored to the node by name, so they survive a refresh, a re-sort and a resize — and they travel with the report, not with your browser. This switch hides every note without deleting any of them, which is what you want for a clean screenshot.
Default stylePaid
What a new note looks like: Marker only (quietest — the text shows on hover, one click opens it), Text, Text + arrow, or Marker + text + arrow. Each note can still be restyled on its own afterwards.

Gear icon

Quick-action bar
The row of buttons beside the gear — sweep select, clear, zoom, fit, reset, undo/redo, export, focus mode.
Zoom controls
Zoom in, out and fit. Zooming also brings back labels and stage titles that were too tight to draw.
Position
Automatic, or pinned to any corner. Automatic keeps the chrome away from whichever corner the diagram is currently crowding.
Close when you click away
Off keeps the settings panel open while you click around the canvas.
Hiding the gear itself
That one lives in the format pane, under Visual overlays › Show settings gear — a switch that hides the panel cannot live inside the panel.

Legend

Category legend
A colour key for whatever the colours currently stand for — node categories, flow categories, or variance. It reserves its own strip, so it never covers the diagram. Where nothing categorical is bound the switch says so rather than drawing an empty key.
Position
Auto, Top, Bottom, Left or Right. Auto puts the key on the bottom strip beside the diagnostics line, which costs the diagram no space at all. Left and Right are wider but take the space the flow itself runs across, pushing the stages closer together.
Legend title
A heading before the first swatch — what the colours stand for.
Font · Text size · Text colour
Font family, 6–24px, and colour. The band the key reserves grows with the type, so a larger size never clips itself.
Diagnostics strip
The small grey line along the bottom edge: how complete the data is, anything hidden by ranking, thresholds or the render cap, the flow-integrity result, and the single strongest insight. Turn it off for a clean slide — the numbers stay in the Table and Insight views.

Analysis

The deepest tab, and deliberately the last: the drop-off view, comparison against a second measure, the finance presets, and the Flow Integrity Check.

Visual mode

ShowPaid
Full Sankey, or Drop-off. Drop-off adds a node for the volume that leaves the flow at each stage, turning the diagram into a funnel that accounts for everything it loses. It works in both input modes.
Drop-off labelPaid
Rename the synthesised loss node from “Dropped off” to your own wording.

Comparison

Show variance in labelsPaid
Use this when you have the same flow twice — this month vs last, actual vs budget, scenario A vs B. Put the second number in the Comparison value role and every flow can show how much it moved, e.g. “Cart 450 ▲60”.
Variance as %Paid
Show the change as a percentage instead of an absolute amount.

Finance presets

Income statement
Revenue splitting into cost lines and profit, biggest lines first.
Cash flow
Keeps your statement's data order — set your account column's sort (or the visual's Sort axis menu) and the flow follows it.
Revenue to profit
A margin waterfall — what revenue is left after each deduction.
What a preset does
One click sets the diagram up the way a financial statement is normally read — left to right, negatives in brackets and in their own colour, and the sort order that suits that statement. It applies as a single undo step, and everything stays editable afterwards.

Flow Integrity Check

Reconcile inflow vs outflowPaid
For data that is supposed to balance — money, headcount, inventory, energy. It checks every node's inflow against its outflow and calls out where value silently appears or disappears, which is usually a data problem rather than a real one. The result is reported on the diagnostics strip and in the Insight view.
Tolerance (%)Paid
Ignore imbalances smaller than this share of node value, 0–10%, so rounding noise does not flag every node.
Show unreconciled value as a balancing nodePaid
Turns the gap into a node on the diagram. Where a node passes on less than it receives, the missing value flows into a balancing node just after it; where it passes on more, the unexplained value flows in from just before it. Nothing is invented and nothing is rescaled — the difference is simply drawn.
Balancing node labelPaid
Rename the balancing node.

The canvas toolbar

A quick-action bar sits beside the gear, so the things you do constantly are one click away instead of three. It can be hidden entirely under Overlays › Gear icon.

Sweep select
Drag a box to select every flow it touches; a second mode sweeps to deselect. Selection cross-filters the rest of your report.
Clear selection
Drops the selection and any focused path. Escape does the same from the keyboard.
Zoom in / out / fit
Ctrl+scroll, + and −, and 0 for fit. Drag the canvas to pan. Zooming brings back labels and stage titles that were too tight to draw at the smaller size.
Reset layout
Puts every hand-moved node back where the layout would have placed it.
Undo / redo
Ctrl/Cmd+Z and Ctrl/Cmd+Shift+Z, stepping through visual changes — a finance preset counts as one step, not twenty.
ExportPaid
CSV data, Excel workbook or PDF report. PDF is free — the chart is free, so a picture of it should be too. CSV and Excel are paid.
Hide panels (focus mode)
Strips every overlay so only the diagram shows.

Format-pane-only settings

Almost everything is reachable from both the in-visual gear and Power BI's own format pane. These three are the exceptions worth knowing about.

Show settings gear
Under Visual overlays in the format pane. Hides the in-visual gear entirely, for a locked-down report where readers should not be changing the visual. It cannot live inside the gear for obvious reasons.
Zentrix branding
The small wordmark in the corner. Format pane only.
Everything else
Every setting in this guide is also present in Power BI's own format pane under its matching card, because the format pane is the persistence contract — the gear is a faster way to reach the same properties, not a separate set of them. Bookmarks, themes and report-level formatting all work normally.

Accessibility & keyboard

A flow diagram is a hard shape to make accessible, so this is built in rather than bolted on — and none of it is behind a licence.

Keyboard navigation
Tab into the diagram, then arrow keys: up and down move within a stage, left and right move to the nearest node in the next or previous stage. Enter or Space activates a node (Ctrl/Cmd for multi-select), Escape clears.
Visible focus ring
A focus ring that is drawn, not borrowed from the browser default, so it stays visible against every palette and on a dark canvas.
Screen-reader summary and live region
A spoken summary of the diagram, plus a live region that announces what changed when you filter, select or trace.
Always-on table mirror
A table of every flow is present in the page for assistive technology at all times, independently of whether the visible Table view is switched on.
Colour is never the only cue
20 node textures and CVD-safe palette filtering, so a category can be told apart without relying on hue. Negative flows can take a distinct colour, and the critical states are named in text on the diagnostics strip.
High contrast
Power BI's high-contrast mode is honoured and overrides the visual's own colours, as Microsoft requires — it allows only its own four colours there.
Reduced motion
The animated flow overlay respects the operating system's reduced-motion setting.

Deterministic & private by design

Determinism: the same data and settings always produce identical geometry. Stage assignment, node ordering and link routing are pure functions of your data, seeded from stable keys — there is no Math.random and no wall clock anywhere in the layout path, and text widths are computed arithmetically rather than measured from the browser. Your diagram does not “move” between refreshes or between machines.

Privacy: every number, every insight and every uploaded image is computed and stored inside the Power BI visual sandbox. There are no external network calls and no telemetry — nothing about your data leaves your tenant. Uploaded images are read locally, downscaled and saved into the report itself rather than hosted anywhere. That is also what makes the visual certifiable by construction.

Honest degradation: nothing is ever dropped silently. Anything hidden by ranking, a threshold, the render cap or the free node/flow cap is counted on the diagnostics strip as “showing N of M”. The diagram renders rather than freezing, and the numbers it reports are the numbers it drew.

Free and paid

Power BI Desktop is free and fully unlocked, forever — every setting in this guide, every cap lifted, no watermark, no sign-in, no trial clock. You can build an entire production report without being asked for money.

A licence starts when that report is used in the Power BI Service, and there everyone who opens it needs a seat — author and reader alike. Without one, the Service gives an author the free tier: a genuinely complete, publishable Sankey up to 200 nodes and 1,000 flows, with both input modes, all four orientations, 35 palettes, node textures, labels, tooltips, the legend, ranking and “Other” grouping, cross-filter, sweep select, zoom, the metrics table and PDF export.

There is one paid tier. The two AppSource plans unlock the identical feature set — everything marked Paid above, plus uncapped nodes and flows — and differ only in the per-seat rate: $1.99 per user per month ($19.90 a year) for 1–500 users, and $1.49 ($14.90 a year) from the 501st. Plans are sold and billed by Microsoft against your Power BI account, so there is no Zentrix account and no licence key to paste, and Microsoft runs a one-month free trial on both.

This is a different model from the Network Graph, where readers are free and only report authors pay. Worth knowing if you use both.

The fastest way to understand these is to use them — and in Power BI Desktop every one of them is free.

Get Sankey Pro on AppSource