Waterfall Charts using Excel

Posted on August 10th, 2009 in Charts and Graphs , Featured - 21 comments

This is a guest post from Aaron Henckler.

Waterfall charts are great, especially for visually showing the contribution of parts to a whole. While there are several tutorials on how to make a waterfall chart online the end products of these tutorials rate low on the visually appealing scale.

The principle problem with these charts is the separation between the elements of the waterfall. They are always either pushed together (Example A) or left apart, without element connectors (Example B):
Example A

Example Waterfall chart using excel - 1 Tutorial & Download

Example B
Example Waterfall chart using excel - 2

Many users of waterfall charts employ the separated (default) version (example B) opting to add in element connectors manually via Insert>Shapes>Line on the Excel tool bar. The frustration with this approach is that all too often the values of the chart elements will need to be updated or changed forcing user to manually readjust each of their connector lines in turn.

With some simple charting trickery in Excel 2007 one can easily make a waterfall chart with connectors that will update automatically as element values are changed.

A Better Waterfall Chart

Ideal waterfall chart using excel

Steps to Building a Better Waterfall Chart

List of data series (columns) needed for your chart:

  • Horizontal Axis Labels: in the example above North, East, South and West.
  • Base Values: What your element values will “sit on.” Essentially this is the white space beneath each charted element shown above.
  • Element Values: the meat and potatoes of your chart – the value of your elements as you want them to appear (above these are 40, 30, 20, 10 and 100).
  • Label Spaces: This is optional but it allows you to place the value of you data elements on top of their respective bars (this avoids the use of the annoying Label Position options available after one has used Add Data Labels).
  • Label Connectors: This is the key item needed to create the chart as shown above. You will need one column (series) for each of the data elements (excluding one for the total). For the chart above, four label connector series are needed.

Step 1: Enter all of the required series in a worksheet:

Data for the waterfall chart

  • Horizontal Axis Labels – self explanatory
  • Base Values – A running total of the subsequent Element Values (Column C). Whereas nothing proceeds North in the example above leave its base value blank. Do the same for Total.
  • Element Values – These are whatever numbers you want to highlight in your chart. These are represented by the blue column segments in the above chart.
  • Label Spaces – Again this is optional. These will eventually hold text labels for the Element Values (Column C). The numbers here should all be the same and be some number about 1/4 to 1/3 the value of your lowest Element Value.
  • (to H. ) Connectors – Connectors 1 to 4 correspond to Axis Labels North to West in the example above. In the respective Connector column make the cell at the row corresponding to the related Axis Label equal to the sum of Column B + Column C (Base Value + Element Values). Enter the same value for the cell beneath.

Step 2: Chart data and adjust

1. Select your data, here A2:H6, and go to Insert>Charts>Column>2-D Column>Stacked Column>OK (to exit). Your chart should look like this:
Step 2.1 - waterfall chart using microsoft excel

2. Switch column and row data by right-clicking within the chart and going to Select Data…>Switch Row/Column>OK (to exit). Chart should now look something like this:
Step 2.2 - waterfall chart using microsoft excel

3. The top colored column element in each column (purple, aqua, orange and baby blue, respectively) is what will become that Element Value’s connector. To convert to these columns to connectors, in turn, right-click on the series (the first one is the purple column element) and go Change Series Chart Type…>Line>Line>OK (to exit). Repeat this process for the other connector column elements (aqua, orange and baby blue). After this step your chart should look like this:
Step 2.3 - waterfall chart using microsoft excel

4. Follow this up by formatting each connector in turn. Right-click on the connector and go Format Data Series…. Consider making the Line Color>Solid Line>Color black, Line Style>Width .25 pt and Line Style>Dash Type>Square Dot. Play around with these options as you see fit to get the best look. Again, do this for each connector.

5. Remove grid lines (optional), delete the Legend (necessary). Your chart should now look like this:
Step 2.5 - waterfall chart using microsoft excel

6. Go into you Base Values series (blue column element in the chart above) and eliminate the color fill and borders: right-click on a blue column element and go Format Data Series….>Fill>No Fill and Border Color>No Line>Close (to exit).

7. Format your Element Values series (red above, using same process in Step 6 to change the fill color and add a border.

8. Right-click on your Label Spaces series and go Add Data Labels…. Don’t worry about the value on the labels for now, they’ll be changed in the next step. Follow this up by formatting the Label Spaces series just like how the Base Values series was formatted (in Step 6). Make it so there is no fill and there are no borders. This is what you should now have:
Step 2.8 - waterfall chart using microsoft excel

9. All that remains is to convert your labels to the values of the Element Values. To do this for each label: click on the specific label twice (so that only the box for that label appears, as below).
Step 2.9 - waterfall chart using microsoft excel

Click a third time on the edge of the box that appears and then type the equals sign “=”. Now go back to your data table and click on the cell of the Element Value that you want appear in the label. Then press enter. This links the value of the label to the Element Value (if your Element Value ever changes so too will the text in this label). Repeat this for the other data labels in turn. The result is your Better Waterfall Chart:

Final waterfall charting - Microsoft Excel

Download the Waterfall Chart Template:

Please download the waterfall chart template from here [.zip version here]

Final Thoughts

I hope you will agree that this waterfall chart is more visually appealing that the examples at the start of this tutorial. In addition to a more professional look this waterfall will fully update (step heights, labels, connector positions) automatically whenever you change your Element Values. While the process of implementing this form of waterfall chart may at first seem cumbersome it can be quickly implemented with some practice and is a great item to have in your charting toolkit. Enjoy.

Note from PHD:

  • Thank you so much Aaron. You have taught us a very valuable tutorial. I really appreciate your effort in putting this together.
  • If you need to make a lot of waterfall charts, I recommend trying Jon Peltier’s Waterfall Chart Utility.

Hello there, Reader: If you like this waterfall chart tutorial, please drop a note of thank you to Aaron through comments.

| More
Subscribe for PHD Email updates and get a free excel e-book with 95 tips & tricks

Comments
Seth August 10, 2009

First of all, great post. Second, an extra thought on the usefulness of waterfall charts in general:

Waterfall charts are best employed when a stacked bar (or, as I cringe, a pie chart) won’t suffice because some of the “contributors” contribute negatively. This example is very helpful to get the basic technique down, but some extra math and series would need to be added to accommodate common waterfall chart applications (cash flow analyses, marketing mix, etc.).

Jon’s add-in does this, I think (at least, based on the screenshots). It can be done without an add-in, but it takes a moment to get the math down on what you’re referring to as ‘Base Values’ in this example (the transparent spacer series).

Mara Caruso August 10, 2009

This is an incredibly useful program. In my job, I have found several uses for it already!

Thanks Aaron for taking th time to educate us!

Gerald Higgins August 10, 2009

Hi, nice tutorial, thanks Aaron and Chandoo. This also works in 2003, although some of the stages are very slightly different.

One possible improvement – some of the connecter lines may look as if they are slightly out of step with the blocks – in the final chart the one between “north” and “east” looks slightly too high. I also got this when I followed the tutorial. You can play around with borders for the element series – either turn them off completely, or make them the same colour as the fill colour, and play around with the line weight. If that doesn’t work, consider adding in a small number to the connector values to offset them slightly.

Ed Ferrero August 10, 2009

Hi, That’s a nice way to draw waterfalls. For a different take on waterfall charts, you might look at my post on how to draw them using scatter charts at;
http://www.edferrero.com/Blog/tabid/106/EntryID/16/Default.aspx

Steve A. August 11, 2009

Thanks for the post. We use them all the time. As noted in an earlier comment, it would be great to adjust this so it can handle negative values, and color-code the negatives in red and positives in green.

Bob August 11, 2009

For easier math and handling negative values:
Three colums of data, labels then the start and end points
In the chart wizard choose Line Chart and the 1st option – upper left hand corner of the dialog
Double Click on one of the Lines – select Format Data Series Select Options: Up Down Bars
Select each line; Patterns, Line, None
And Bob’s your uncle.

This approach does not have Chandoo’s nice connector lines – but it is easy to implement.

Seth August 11, 2009

Great add, Bob. Two more things:

1) The up/down bars are based on the first and last series provided. You can add the line connectors like Aaron’s chart has by adding a series for each line segment to the middle of the data table. Could be an easier way to do this, but hey… this worked.

2) I didn’t like that the first datapoint (2008 in my example) and last (2009) were the same color as up bars. I see those as absolutes, and the up/down bars should be for the changes (Chg1-4). So, I added an absolute volume series (named Vol) and changed its chart type to Bar.

3) Using the same trick that Aaron explains, you can also add data labels. I didn’t.

Bob’s (in rows instead of columns):
Label 2008 Chg1 Chg2 Chg3 Chg4 2009
Start 0 100 110 100 55 0
End 100 110 100 55 125 125

Mine:
Label 2008 Chg1 Chg2 Chg3 Chg4 2009 Note
Start 100 110 100 55 UpDown
Vol 100 125 Type=Bar
Line 100 100 Type=Line
Line 110 110 Type=Line
Line 100 100 Type=Line
Line 55 55 Type=Line
Line 125 125 Type=Line
End 110 100 55 125 UpDown

Obviously, more cumbersome to set up but…

Seth August 11, 2009

Grrr… attempt #2…

Bob’s (in rows instead of columns):
_Label __2008 __Chg1 __Chg2 __Chg3 __Chg4 __2009
_Start _____0 ___100 ___110 ___100 ____55 _____0
___End ___100 ___110 ___100 ____55 ___125 ___125

Mine:
_Label __2008 __Chg1 __Chg2 __Chg3 __Chg4 __2009 Note
_Start ______ ___100 ___110 ___100 ____55 ______ UpDown
___Vol ___100 ______ ______ ______ ______ ___125 Type=Bar
__Line ___100 ___100 ______ ______ ______ ______ Type=Line
__Line ______ ___110 ___110 ______ ______ ______ Type=Line
__Line ______ ______ ___100 ___100 ______ ______ Type=Line
__Line ______ ______ ______ ____55 ____55 ______ Type=Line
__Line ______ ______ ______ ______ ___125 ___125 Type=Line
___End ______ ___110 ___100 ____55 ___125 ______ UpDown

Martin August 12, 2009

OK, guys: I didn’t get it at all, but God knows I’ve tried to !!

I can’t download the sample @the office, but I’m wondering if you can lead me thru this example: I have a list of countries on col C, values for each Line Of Business on clos D and E, and total in col F.

I’d like to create the waterfall chart to show how each country contributes to the total.

How do I do thaT??

thanks !!

Martin August 12, 2009

PLease disregard my previous post, I think i hadn’t enough caffeine on me…..i totally did it !!

Chandoo August 14, 2009

@Martin: Cool. Here is to Coffee and passionate users like you. Cheers!

Martin August 14, 2009

thanks master !!

I’ve actually gone a step further, and combined the chart with a data validation filter, and the result was really impressive, a dynamic waterfall chart, without a single macro line !!!

Commenting this with a colleague form Finance, he mentioned that in this case (showing info from offices and getting to a region total), waterfall might induce to a confusion, as one might be tempted to understand that a certain office’s numbers is based on the previous shown, and reluctantly, i had to agree with that vision.

Still, I love the results !!!

Rgds,

Martin

Arafat Hossain Piyada August 27, 2009

Outstanding tips. I never experiment that much. Thanks for this nice tutorial. Next time I definitely teach my younger brother about it. Again thanks.

Brian September 2, 2009

I wish I could use waterfall charts with pivot tables and Dynamic number of data elements (which is why I use pivot tables). My main issue is related to data elements. I have charts I update every month for every project. So each project has its own set of charts (same charts with each project). However, each project might have 0 to 12 data elements. And every month the number of data element can change for each project. I do not see how I could do waterfall charts without a lot of work when I change the number of data points.

Chandoo September 13, 2009

@Brian… One idea: you can take the above tutorial and create waterfall chart with 12 bands and then save it as template. Then next time you need to use a waterfall chart, just use it and set the blank elements as NA().

Another option is to try Jon’s utility. It is a pretty good tool and takes care of most of this work automatically.

Ulrich Seidl November 26, 2009

on http://www.hichert.com/de/software/exceldiagramme/55
there are some examples for waterfall charts.

Diagramm 675 (Rätsel 3)
Diagramm 657, 656, 655

if you mouse-click on the chart you can download the corresponding xls-file.

have also a look on the new poster HI-SUCCESS-Rules for information design.

brochure in english
http://www.hichert.com/downloads/media/broschueren/brochure_2008_en.pdf

poster preview
http://www.hichert.com/de/shop/poster/203

chrisham December 31, 2009

This is the best tutorial on Waterfall Charts!

Chandoo January 1, 2010

@Chrisham.. no arguments there, Aaron really did a splendid job on this one.

Fakhar February 16, 2010

Hi Chandoo,
Another firsts of its kind though there are many who claim to have prepared the first free version of waterfall charts and want their name to be entered in Guinness World Records but I’ve seen none.
My request is please update this note as you best know waterfall charts (WC)are best employed when a stacked bar or a pie chart won’t suffice because some of the “contributors” contribute negatively but above chart did not cover this aspect and also add some more templates of revised watefall charts
Thanks and best regards
Fakhar
PS: Thanks again for always taking time out from your very busy schedule for quick/timely response to our queries

RSS feed for comments on this post. TrackBack URI

Leave a comment

   Name (required)

   E-mail (required, never displayed)

   URL


If you have a question, please ask in the forums

Recommended Excel, Charting, VBA books