Sankey Diagram

Turn flow data into Sankey diagrams on Windows. Enter or import connections, arrange the nodes and make the main paths easy to compare.

For Windows 10 and Windows 11

See current price and license terms in Microsoft Store.

A two-stage Sankey diagram with five flow rows, showing 100 kWh entering the system
Select the screenshot to view it full size.

What a Sankey diagram shows

A Sankey diagram connects stages or categories with bands whose widths represent the quantities moving between them. Wider bands mean larger flows, making it easier to compare the main paths through a system.

Follow the worked Excel example below to prepare a flow table, map its columns and check the resulting diagram.

Use consistent units, label the stages clearly and check that the values match the system you want to describe. Colors can distinguish categories; band width carries the numerical information.

Build a Sankey diagram from an Excel table

Each row describes one flow: where it starts, where it ends and how much it carries. This example turns a small spreadsheet into a diagram of 100 kWh split between useful output and two kinds of loss.

Prepare one row per connection

Source is the starting node and Target is the destination. Value is the quantity that controls the band width. An optional Note can describe the row. The sample worksheet has these four columns; its three connections are:

Fictional energy flows, all in kWh
SourceTargetValue
Energy supplyUseful output60
Energy supplyConversion losses25
Energy supplyDistribution losses15

Download the energy-flow example (ZIP, 5.0 KB). Extract the XLSX workbook, the saved .sad diagram and the README. The data are invented for this tutorial; they are not an estimate of typical energy losses.

Select the data in Excel format

  1. In a new Sankey Diagram document, choose Import data to the table, the import icon below the grid, and open sankey-energy-example.xlsx.
  2. On the Flows worksheet, select A2:D4. This includes all three data rows and leaves out the headers in row 1. Choose Import Selected.
  3. Answer No when asked whether the selected columns contain headers, because this selection starts in row 2.
Three data rows selected in cells A2:D4, excluding the header row.
Select the three data rows and all four columns. The selection contains three numbers with a sum of 100.

Map the columns and generate the diagram

In the Mapping window, drag column A → Source, column B → Target, column C → Value and column D → Note. Choose Ok. Columns left unmapped are not imported.

Columns A, B, C and D assigned to Source, Target, Value and Note.
Each spreadsheet column is assigned to its matching destination field.

Check the grid before generating: it should contain three rows with values 60, 25 and 15, and show Rows: 3, Sum: 100.00. Then choose Generate Diagram. Useful output is the widest band; the two loss bands together represent the remaining 40 kWh.

To label the unit as in the screenshot, open Diagram Options, change Header to “Energy example (kWh)” and choose Ok.

Three imported flows beside the diagram splitting Energy supply into useful output, conversion losses and distribution losses.
The data grid and generated result after saving and reopening the .sad example. Select an image to view it at full size.

Save your work with File → Save As. To inspect the supplied finished example, use File → Open and select the .sad file. Use the import command for the XLSX workbook.

Follow the same flow through a second stage

A node can be a Target in one row and a Source in another. To extend the example, split the 60 kWh of Useful output between two fictional services. Keep the original three connections and add these two:

Two additional connections, in kWh
SourceTargetValue
Useful outputService A45
Useful outputService B15

Download the two-stage example (ZIP, 5.1 KB). It contains an XLSX workbook with all five connections, a finished .sad diagram and a README. Start a new document, import A2:D6 from the workbook’s Flows sheet and answer No to the header question. Use the same A/B/C/D column mapping as above. The workbook already includes the original three rows, so do not import it on top of the first example.

After generating the diagram, check the intermediate node: Useful output receives 60 kWh and sends 45 + 15 = 60 kWh onward. Use the exact same label, “Useful output”, in both columns to connect the stages.

Five flow rows and a diagram where Useful output splits into Service A and Service B.
The saved example reopened in Sankey Diagram. The grid shows five rows and Sum: 160.00, while the original input remains 100 kWh.

The grid adds every connection: 60 + 25 + 15 + 45 + 15 = 160. The same 60 kWh is recorded on its way into Useful output and again across the two links leaving it. To check the whole system, count the input once: 60 + 25 + 15 = 100 kWh. The final destinations also total 100 kWh: 25 + 15 in losses and 45 + 15 in services.

This second example was tested on 16 September 2026 in Sankey Diagram 1.0.23.0, including import, generation, saving and reopening after restarting the application.

Check the data before interpreting the picture

  • Use one unit throughout. Keep Value cells numeric: enter 60, not “60 kWh”; put the unit in the title or notes.
  • Keep node names consistent. Check spelling and stray spaces so that the same stage has the same label in every row.
  • Exclude headers and total rows from this example’s selected range. Check accidental duplicate connections before drawing conclusions from a wider band.
  • For several stages, check quantities entering and leaving each stage. A sum of all links can count the same quantity again as it moves through successive stages; it is not necessarily the total entering the whole system.

The original three-row example was tested on 14 September 2026 in Sankey Diagram 1.0.23.0 from Microsoft Store, including XLSX import, generation, saving and reopening. Screenshots show the actual application.

Need help with your own data? Contact DefinedBytes support.

Visualize your own flow data

Sankey Diagram is available for Windows 10 and Windows 11. See current price and license terms in Microsoft Store.

View in Microsoft Store