Website Traffic Sankey Diagram: Editable Template
A traffic Sankey from acquisition channel to landing page to signup, so you can see which sources reach the pages that convert. Replace it with your analytics export.
A website traffic Sankey follows visitors from the channel that brought them to the page they landed on and on to what they did next. Unlike a funnel chart it keeps the source attached to the result.
Four channels feed three landing pages, and each page sends some sessions to signup while the rest leave. Reading across, you can see not just that the pricing page converts well, but which channels send people there.
Export sessions from your analytics tool by channel and landing page, and enter the conversion counts per page. The figures here are invented. Check that your channels and pages are defined consistently before comparing periods.
How to read this diagram
- Of 10,000 sessions, 1,050 reach signup, an overall rate of 10.5% in this example.
- Pricing receives only 2,000 sessions but sends 500 to signup, a much higher rate than the blog, which receives 3,800 and sends 150.
- Organic search is the largest channel, but most of it lands on the blog, where conversion is lowest.
- A Sankey shows these relationships in one view; it does not tell you why visitors behave this way.
The data behind it
Invented session counts for one period. Not data about any real website.
| From | To | Amount (sessions) |
|---|---|---|
| Organic search | Home | 1800 |
| Organic search | Pricing | 600 |
| Organic search | Blog | 2800 |
| Paid ads | Home | 1000 |
| Paid ads | Pricing | 1000 |
| Paid ads | Blog | 300 |
| Social | Home | 700 |
| Social | Pricing | 100 |
| Social | Blog | 700 |
| Home | 700 | |
| Pricing | 300 | |
| Home | Signed up | 400 |
| Home | Left the site | 3800 |
| Pricing | Signed up | 500 |
| Pricing | Left the site | 1500 |
| Blog | Signed up | 150 |
| Blog | Left the site | 3650 |
The same data as CSV
source,target,value
Organic search,Home,1800
Organic search,Pricing,600
Organic search,Blog,2800
Paid ads,Home,1000
Paid ads,Pricing,1000
Paid ads,Blog,300
Social,Home,700
Social,Pricing,100
Social,Blog,700
Email,Home,700
Email,Pricing,300
Home,Signed up,400
Home,Left the site,3800
Pricing,Signed up,500
Pricing,Left the site,1500
Blog,Signed up,150
Blog,Left the site,3650How it works
Export sessions by channel and landing page
From your analytics tool, export a table of sessions with channel and landing page as the two dimensions.
Add what happened next
For each landing page, enter how many sessions reached signup and how many left. Leaving is its own node so no traffic disappears.
Keep the periods comparable
Use the same date range and the same channel definitions when you compare one chart with another.
Frequently asked questions
How is this different from a funnel chart?
A funnel shows how many remain at each step. A Sankey also shows where they came from and where the ones who left went.
Can I add a second step after signup?
Yes. Add a stage such as Activated and a flow from Signed up to it, with a Not activated node for the rest.
Edit this traffic Sankey
Open the template as your own chart and replace the channels, pages and counts with your analytics data.