New: SankeyMATIC has a Patreon!

If you are a regular user of SankeyMATIC and would like to contribute to the continuing improvement of this site, consider joining.

There are 4 tiers of support.

Above the lowest tier, you can get a link back to your own site from the About page.

At the highest tier, you can also have your logo and a link on the home page (which averages over a thousand visitors per day).

For more details, visit

New Sample Diagram: “Journey”

There’s a new Sample Diagram to try out at the top of the Build-a-Diagram page: Journey, which demonstrates how you can produce traceable paths for multiple players across multiple stages by using a specific approach to encoding your data.

It was added in February of this year. The conditions required for this kind of diagram to work are:

  • Each flow maintains a single color from start to end.
  • All flows for a particular player must be listed together.
  • The “Arrange the Diagram” control must be set to “Using the exact input order”.

In the sample diagram, every flow for every player has the same value (1), but that condition isn’t absolutely necessary as long as the other conditions are met.

This diagram style can be used for such things as a ranking chart for team standings in a league (sometimes called a “bump chart”).

This post prompted me to go track down when each of the other sample diagram types was added, for comparison:

New, improved News Page!

This News page is now a proper weblog, no longer a manually-maintained static page.

This means several good things:

It’s easier to update!
Making a new post takes way less effort than it did before, and I plan to take advantage of that to post updates here much more often.

A bunch of history has been filled in.
See the “Archives” section in the sidebar for links to many past posts I have cross-posted from the site’s Mastodon account at (The newest item on this page until a couple of days ago was from late 2022, so there was a lot to fill in.)

There’s an RSS Feed now, to make it easier to follow updates here if you are so inclined.

This section now has a lot of the other benefits of an actual blog – there’s a Search box, and posts can be categorized & tagged, and on and on.

You’ll be seeing more here soon!

New Site Section: Data

I’ve added a new tab to the top menu bar: Data: Interesting Diagrams from the Real World.

The first examples there show financial results for companies over time, with the first (of several) being Apple.

You may have already seen such diagrams presented elsewhere in Sankey form. What’s new here is:

  1. Each diagram is overlaid on the same period’s results from the year before
  2. There’s a slider so you can compare them.

Here’s a static screenshot of one:

(Note that on the page itself, you’ll also get some highlighting & tooltips when hovering that you can’t see in this image.)

And here’s an animated example showing Apple’s 2024 results and a slider revealing the prior year’s results:

Animation. A sankey diagram describing Apple's Q1 2024 results is shown. 

A slider bar at the right of the diagram is grabbed by a mouse pointer and is dragged to the left of the diagram, revealing a diagram of Apple's 2023 Q1 results for comparison.

(cross-posted from

Before & After: Social header image

There have been many changes to SankeyMATIC in the last year.

One quick snapshot of what’s changed can be seen in the updated header image on social media which shows off new examples of what you can do on the site; the old & new images are attached here so you can see some of the differences, especially in how much easier the labels can be to read.

(adapted from


I haven’t written much about my development approach to this project –

It’s not TDD, not BDD, but EDD:
“Embarrassment-Driven Development”.

Basically years of conversations with myself that go like this:

– “Hey, [cool advanced feature] would be really awesome.”
– “It doesn’t support [extremely basic feature] yet though, Steve.”
– “Ouch. You’re right. That’s just embarrassing. Let’s do that first.”

…and repeat, endlessly.

(cross-posted from

More on New Label Features

Two upcoming SankeyMATIC Label features about to ship –

New Feature #1 – Placement & sizing

Names and Values can be placed on separate lines and can be given different sizes.

The Job Search example shows how this can allow larger & more readable labels by using the available space differently:

New Feature #2 – Scaling based on value

You can make each label larger or smaller based on the amount it represents.

The Financial Results example shows how this can help draw attention to specific areas of your image:

Open the ‘Labels‘ panel in the left column to use the new features.

(cross-posted from

Fun things I’ve been learning lately about the modern ways to do things on the web:

  • The Blob API!
    (For generating downloadable export files on demand.)
  • async Promises!
    (For accepting an uploaded file and obtaining its text. Special guest star: Blob.text().)
  • CSS Grid layout!
    (Because I should probably remake the whole layout with it someday.)

As always, MDN Web Docs has been invaluable for documentation and examples.

A cool feature is cooking!

(cross-posted from