Code tool

Sankey Diagram Maker

Paste CSV rows to compare how quantities move between named nodes. The layout ranks an acyclic flow from left to right and sizes each band by its value.

In-browser processingNo account requiredPrivacy details ↗

Columns: source,target,value. Up to 100 rows, 60 nodes; positive values only; cycles are rejected.

A QUICK WALKTHROUGH

How to use this tool

  1. Enter a header and up to 100 source,target,value rows.
  2. Generate the chart and correct cycles, invalid values, or limit errors.
  3. Download the SVG.

Acyclic flow

The browser assigns columns from dependencies. Cycles and self-links are rejected because this compact layout does not infer how to break a loop.

Bounded data

Input is limited to 100,000 characters, 100 rows, 60 nodes, 80 characters per node name, and finite positive values no greater than 1 trillion.

Diagram meaning

Band widths are proportional within the supplied data. The tool does not fetch, aggregate, reconcile, or certify source data.

GOOD TO KNOW

Common questions

Which CSV columns are required?

source, target, and value, in that order; a matching header is optional.

Can values be zero or negative?

No. Every row must contain a finite positive value.

Is data uploaded?

No. Parsing and SVG generation happen in the browser.