
On Firday, we proposed a new chart for showing project plans. I chose an ugly name for it and called it Gantt Box Chart.
Essentially, a gantt box chart is what you get when a gantt chart and box plot go to a bar, get drunk and decide to make out. It shows the project plan like any other gantt chart, and it shows the distribution of activity end dates, like any other box plot.
You can see an example gantt box chart for a fictional software project above.
Today, we will learn how to create a similar chart in Excel. Get a steaming cup of coffee or whatever keeps you going and follow these simple steps to make a gantt box chart.
[Read this post if you want to know what GBC is and how to read it]
1. Set up your data:
Just like any other chart in excel, a gantt box chart too requires well structured data. In our case, we need 5 things.
- Activity name
- Start Date
- Best Case End Date
- Realistic (or Plan) End Date
- Worst Case End Date
Getting all the 3 variations of End dates can be tricky. But if you are managing projects for long, you might already know how to get these dates. Otherwise, here is one approach, proposed by Joel Spolsky, called as Evidence Based Scheduling that can help you.
We will also need 3 additional helper columns where we need to calculate some numbers so that our gantt box chart can be constructed without resorting to magic wands. These are,
- BC: Number of days between Start Date and Best Case End Date
- R: Number of days between Best Case End Date and Realistic Date
- W: Number of days between Realistic Date and Worst Case End Date

2. Create a Stacked Bar Chart
Add a new stacked bar chart. The series to be stacked are,
- Best case end date
- R
- W
Use the “Activity Name” column for category axis labels.
Now, our chart should look like:

3. Say your favorite curse word and Reverse the categories
Ok, time for a minor annoyance. Excel has magically showed the first activity of project at bottom. So, we need to reverse the category axis values before any further.
Just select the category axis, go to format axis (press CTRL+1) and click the little box that says “order reverse in Categories”.
Now, the chart should look like this:

4. Add Error Bars to Best Case Series
Now, add error bars to the best case series of the chart so that it looks like a line is drawn connecting best case date to start date of each activity. To do that, follow these steps:
- Select “best case end date” series.
- Add Error Bars (from format ribbon)
- Specify the type of error bar as “Negative only”
- Select “Custom” for error bar values
- Now, point the error bar values to the helper column “BC”
- Format the error bar in such a way that no cap is shown and it is thick.
At this point, our gantt box chart should look like this:

5. Finally, format the chart
Now, our gantt box chart is almost ready. But it is still ugly. We need not hire a Hollywood grade make-up man to beautify this. We just need a few clicks.
- Remove legend
- Add vertical and horizontal grid lines. Make them subtle.
- Change text colors to soothing ones.
- Remove fills from all series in stacked bar chart.
- Apply borders to 2nd and 3rd series to create a box effect.
- Format the date axis,
- Adjust the starting point (unfortunately you have to enter the number equivalent of date, like 1-May-2010 as 40299)
- Adjust major unit – I used 14 days, you can try something else depending on overall project length.
- Set the axis number formatting to d-mmm or mmm or myy or something else that works for you.
- Add a chart title
That is all. Our Gantt Box Chart is finally ready. Now, go figure why your project is not on track and do something about it.

Displaying Completed Activities:
The easiest way to show completed activities is to change all 3 end dates to the same date: that of the actual end date. This way, you just see a line when an activity is done and a box when there are variations in end dates.
Of course, you can use another helper column to show a vertical line or a symbol of your choice to denote the end point as well. I leave it to you to figure out that portion.
Download the Gantt Box Chart Template:
I have prepared an excel template for creating Gantt Box Charts quickly. Go ahead and download the version that you want.
Excel 2007+ version | Excel 2003 version
Here is a mirror with both files as a zip. Go on, be awesome 🙂
Share your experiences of using Gantt Box Chart:
If you like this chart and implementing it in one of your projects, do tell me how it went. Or just share your thoughts on this implementation and any suggestions. Go ahead and share.
Templates & Tutorials on Project Management:
- Excel Gantt Chart Template
- Project Milestones – Timeline Template
- Project Status Dashboard Template
- More resources on using Excel for Project Management
Project Management Template Set – Get a copy today
I have made a set of 24 templates that take care of various activities in a project right from planning to time sheets to issues to project status reporting thru dashboards. These templates have been bought by more than 500 project managers all over the world and they are saving hours of time every week using these templates.
Go ahead and a get a copy of my project management templates.















15 Responses to “Christmas Gift List – Set your budget and track gifts using Excel”
[...] Christmas Gift List – Set your budget and track gifts using Excel … [...]
I'm confused: if you spend $10, and your budget is $40, shouldn't the amount in the "Within Budget?" column stay black, since you didn't go over budget?
In other words, since we overspent on the electronic photo frame, shouldn't the $8 cell turn red?
@JP.. maybe Steven is encouraging consumerism... ?
I havent realized it earlier, but now I see it. If you unprotect the sheet, you can change the formula in Column I to =IF(G13=0;" ";F13-G13) from =IF(G13=0;" ";G13-F13), that should correct the behavior.
Thanks Chandoo. I thought of making a shopping list spreadsheet for Christmas, but this is neat so I think I'll use this instead.
Chandoo & Steven thanks for this spreadsheet. But for the sake of a person who has been staring at this megaformula in vain for the last 40 mins and not afraid to ask, would it be possible for you to walk us through the logic used here?
=SUM(SUMPRODUCT(SUBTOTAL(3,OFFSET($K$13:$K$62,ROW($K$13:$K$62)-MIN(ROW($K$13:$K$62)),0,1)),--($K$13:$K$62="-"))+SUMPRODUCT(SUBTOTAL(3,OFFSET($K$13:$K$62,ROW($K$13:$K$62)-MIN(ROW($K$13:$K$62)),0,1)),--($K$13:$K$62="0")))&" / "&SUBTOTAL(2,$G$13:$G$62)
Thanks Chandoo.. This is one of the best budget spreadsheets I've ever seen.. The Arrays are out of this world!! And it's FREE!!
Chandoo, can you tell us more about Steven? Does he have his own site?
JP, I think Chandoo changed it when he changed the currency formatting from £ to $, a negative figure is a good thing in this case. But don't change the formulas, the overbudget and under budget won't work properly if you do. Also Chandoo I think you've accidentally broke the conditional formatting for the alternating row colouring the formula is different to the version I sent you. As for the megaformula chrisham, it gave me a headache trying to get it all working, so I will let Chandoo talk you through it.
Hi,
In cells I6 and I7, I understand that subtotal together with offset function returns an array of ones after which, the sumproduct function gives the desired result.
But I’m not able to figure out the reason for using an array in I8 to return the most expensive gift.
Can’t the formula be just
“=VLOOKUP(SUBTOTAL(4,$G$13:$G$62),$G$13:$J$62,4,0)”
Savithri, Cell I8 needs the array, if the formula was “=VLOOKUP(SUBTOTAL(4,$G$13:$G$62),$G$13:$J$62,4,0)” it would find the highest price from the filtered range (i.e. highest actual in filtered range is $50) BUT then return the first person with that actual, not looking in just the filtered range (so first person on the list with a $50 actual.)
To see what I mean, change the formula, then change all the actuals to $50 then filter for baby, it lists the first name on the list.
But a good question 🙂
Thank you. I now realise that the array is used to get the ‘filtered range’ instead of the entire range, as table array for look up value.
[...] Download This Template [...]
this looks like an awesome excel sheet!! is there anyway i can get it emailed to me unprotected? for some reason, i am unable to download it 🙁 help!!
Hi I also can not download to a mac as the sheet is protected any help would be great
[...] to send her a pricey present. Rather, send a card with a picture of your child. Here’s a cool Excel sheet that will help you estimate your budget per person and let you track [...]
[...] husband and I pour/poor over the Christmas spreadsheet (yes, I do know how dorky that sounds, but we’re not the only ones!), figuring out who should give what to whom. We live at a distance from most of our family, so it [...]