Sankey Diagram
Trace how a quantity flows from one set of stages to the next, with link width showing proportional volume. Best for funnels, journeys, and budget breakdowns.
A sankey diagram shows how a quantity flows from one set of values to another, drawn as nodes connected by links whose width is proportional to the flow's size. Drop exactly two categorical or date fields into Column - the first is the source, the second the target - and optionally one numeric field into Row to set each link's width. Use it when the question is "where does this come from, and where does it go," not just "how much of it is there."
When to Use
A sankey diagram is built for tracing movement between stages: customer journeys between pages, budget allocated across categories, support tickets routed between teams, traffic split across acquisition channels. The width of each connecting link does the communicating - a thick link is a major pathway, a thin one is a minor one - making it easy to spot where most of a quantity actually flows, not just how much exists in total.
The Row field is optional, but skipping it changes what the link widths mean. Without a Row field, every flow defaults to equal width, weighted by how many rows produced it rather than any real quantity - useful for "how many distinct paths exist" but not for "how much volume moved." Assign a numeric Row field when the actual size of each flow is what matters.
Switch to a different chart when:
- You're tracking a single linear drop-off through ordered stages, not flows between two open-ended sets of values - use a Funnel Chart
- You need exact flow values in a list, not a visual flow diagram - use Text Table
- You're comparing totals across categories, not tracing movement between them - use Horizontal Bar
| Scenario | Source (Column 1) | Target (Column 2) | Value (optional Row) |
|---|---|---|---|
| Customer journey between site sections | Landing page | Next page visited | Session count |
| Budget allocation across departments | Budget category | Department | Amount allocated |
| Support ticket routing | Intake channel | Resolving team | Ticket count |
| Traffic flow by acquisition source | Acquisition source | Conversion outcome | Visitor count |
| Energy or material flow between stages | Input stage | Output stage | Volume |
Required Inputs
| Field | Type | Count |
|---|---|---|
| Dimension (Source, Target) | Categorical or Date | Exactly 2 |
| Measure (Flow width) | Numeric | 0 to 1 |
For step-by-step build instructions, see Build Your First Chart.
Formatting Options
The Format tab unlocks after both Column fields are assigned.
Style
Use the chart title to state what's flowing and between what, since node names alone don't always make the direction obvious.
| Control | What it does |
|---|---|
| Show Chart Title | Shows or hides the title. |
| Enter Chart Title | Title text. Maximum 50 characters. |
| Font family | Font applied to the title. |
| Font size | 5 to 30. |
| Bold / Italic | Weight and style. |
| Alignment | Left, center, or right within the chart container. |
Sankey Styles covers node interaction, sizing, and label styling - the controls available for this chart type are deliberately focused, since most of the diagram's layout is handled automatically.
| Control | What it does |
|---|---|
| Draggable Nodes | Lets viewers manually reposition nodes by dragging. Disabled automatically on very large diagrams regardless of this setting. |
| Highlight Connected Path | When on, hovering a node dims everything except that node and its full connected path. Off by default, and force-disabled on very large diagrams. |
| Node Width | 5 to 100px. Thickness of each node's rectangle. |
| Node Gap | 0 to 50px. Vertical spacing between nodes in the same column. |
| Font Family / Color / Font size / Bold / Italic | Styling for the node name labels. |
| Text Case | Uppercase, lowercase, capitalize, or none. |
Several things are not currently configurable through this panel: the diagram's orientation (always left to right), link curve style, link color (always inherited from the source node), and value labels printed directly on the links themselves (always off - the tooltip shows the value on hover instead). These are fixed defaults, not settings hidden somewhere else.
Interactivity
The tooltip appears on hover over a node or a link, with different content for each: hovering a link shows its source, target, and value; hovering a node shows the node's name and its total flow value.
| Control | What it does |
|---|---|
| Show Tooltip | Shows or hides the tooltip entirely. |
| Header / value text styling | Font, size, and color for the labels and values shown in the tooltip. |
Animation controls the nodes' and links' transition when the chart first renders or the data changes. Automatically disabled whenever Draggable Nodes is on, since animating a layout the viewer is actively repositioning would fight their input.
| Control | What it does |
|---|---|
| Enable Animation | Turns the transition animation on or off. |
| Duration | How long the transition takes. |
| Delay | How long the transition waits before starting. |
| Easing Function | The transition curve. |
Emphasis controls the visual response when hovering a node or link - a scale-up effect and a drop shadow. Off by default, and distinct from Highlight Connected Path, which dims unrelated elements rather than scaling the hovered one.
| Control | What it does |
|---|---|
| Show Emphasis | Turns hover effects on. |
| Focus Type | Item, Series, or None. |
| Enable Scale | Scales the hovered element up slightly. |
| Scale Size | 1.0x to 2.0x. |
| Shadow Blur / Color / Offset X / Offset Y | Drop shadow styling on the hovered element. |
| Border Width | Border added around the hovered element. |
Enable the Toolbox when viewers need to export the diagram or inspect its underlying data.
| Control | What it does |
|---|---|
| Show Toolbox | Shows or hides the toolbox icon bar. |
| Save as Image | Adds a download icon that saves the diagram as a PNG. |
| Data View | Adds an icon that opens the underlying data table in a separate view. |
Best Practices
Assign a Row field whenever the actual flow size matters. Without one, every link defaults to equal width weighted only by row count - fine for "how many distinct paths exist," misleading if you're trying to show "how much volume moved." If the question is about real quantity, always assign a measure.
Watch for unexpected "(Target)" labels - they signal a circular flow somewhere in the data. If any path loops back on itself anywhere in the dataset (even one you didn't intend to chart), every target node in the entire diagram gets relabeled to stay distinct from sources of the same name. If this shows up unexpectedly, check your source and target fields for an unintended cycle.
Treat a "(Source) Other" node as a real signal, not noise. When a source has too many small individual flows to show one by one, they're automatically rolled into one "(Source) Other" link carrying their true summed value - so the source's total still reads correctly, but the breakdown behind that bucket isn't visible on the chart. If that breakdown matters, filter the underlying data to a narrower set of sources or targets rather than relying on the chart to show everything.
Keep node count low enough to read without scrolling. Past 20 nodes, scroll-to-zoom kicks in automatically, which keeps the chart usable but means viewers can no longer see the whole flow at once. If the full picture matters, filter the underlying data to the most relevant source or target values first.
Don't rely on link curve, color, or orientation customization - they're fixed. If brand guidelines require a specific curve style or link coloring scheme, that's not adjustable on this chart type today; plan dashboard styling around the existing left-to-right, source-colored default rather than expecting per-chart overrides.
Use Highlight Connected Path for diagrams with more than a handful of crossing flows. Once several nodes share links, tracing a single path by eye gets difficult. Turning this on lets viewers isolate one node's full upstream and downstream flow with a single hover.
FAQs
Need help? Email support@edilitics.com with your workspace, job ID, and context. We reply within one business day.
Last updated on
Radar
Compare up to 10 measures across shared categories as overlapping polygons. Best for spotting which entity is strong or weak across many variables at once.
Funnel
Show a single process narrowing stage by stage, with each slice's width proportional to its value. Best for conversion funnels and pipeline drop-off.