Step-by-step guide to building a Gantt chart in Excel using stacked bar charts and conditional formatting. Includes real limitations and why most teams switch to dedicated tools.
Excel does not have a native Gantt chart type. What Excel does have is a stacked bar chart that you can format to look like a Gantt chart, combined with a lot of manual work to make it behave like one. This approach works -- it's been used by project managers for decades -- but it comes with real limitations that become painful as your project grows.
This guide shows you exactly how to build a Gantt chart in Excel, including the most common stumbling blocks. It also tells you honestly where the Excel approach breaks down and what to use instead.
A functional Excel Gantt chart with:
In a new Excel worksheet, create a table with these columns:
| Column | What to Enter |
|---|---|
| A | Task Name |
| B | Start Date |
| C | Duration (days) |
| D | End Date (formula: =B2+C2) |
| E | Phase (optional, for color-coding) |
Enter your tasks in rows. Your start dates should be actual calendar dates, not day numbers. This lets Excel's date axis work correctly.
Example:
| Task | Start | Duration | End |
|---|---|---|---|
| Requirements | 2026-09-01 | 7 | 2026-09-08 |
| Design | 2026-09-08 | 10 | 2026-09-18 |
| Development | 2026-09-18 | 21 | 2026-10-09 |
| Testing | 2026-10-09 | 7 | 2026-10-16 |
| Deployment | 2026-10-16 | 2 | 2026-10-18 |
The chart needs two fixes to look right:
Reverse the task order (so tasks read top to bottom):
Set the horizontal axis to start at your project start date:
Your stacked bar chart has two series: Start Date (the left portion of each bar) and Duration (the right portion). The Start Date portion is a visual spacer -- it should be invisible.
Now only the Duration bars are visible, which creates the Gantt bar appearance.
To add a vertical line showing today's date:
This is one of the more technically fiddly steps and often requires some troubleshooting.
| Feature | Excel | gantt-chart.io |
|---|---|---|
| Native Gantt chart type | No (workaround required) | Yes |
| Setup time for a basic chart | 30--60 minutes | Under 2 minutes |
| Dependency tracking | Manual (no automatic linking) | Automatic with visual arrows |
| Dependency cascading (shift a date, cascade downstream) | No (formulas help, not automatic) | Yes |
| Critical path visualization | No | Yes |
| Milestone markers | Manual workaround | Built in |
| "Today" line | Manual workaround (complex) | Built in |
| Collaborative editing | Via SharePoint/OneDrive (limited) | Real-time |
| Shareable read-only link | No | Yes |
| Mobile viewing | Poor (Excel on mobile is awkward) | Yes |
| Baseline tracking (plan vs. actual) | Manual (duplicate data) | Built in |
| Recurring task support | No | No |
| Cost | Included with Microsoft 365 | Free |
| Learning curve for updates | High (chart formatting breaks easily) | Low |
No automatic dependency cascading. This is the biggest one. In a real Gantt chart tool, if you move the start date of a predecessor task, all dependent tasks shift automatically. In Excel, you have to manually update every affected row. On a 20-task project with 15 dependencies, a single date change can require 10+ manual updates -- and if you miss one, your chart lies to you.
Formatting is fragile. Excel's chart formatting is stored separately from the data. Add a row, sort differently, or paste data over the range, and the chart formatting can break. You'll spend as much time maintaining the chart as you do updating the data.
Collaboration is awkward. Excel files shared via email create version conflicts. SharePoint and OneDrive help, but simultaneous editing of a complex chart is unreliable. External stakeholders -- clients, contractors -- cannot easily view the chart without Excel installed.
Scaling to 50+ tasks is painful. A 10-task Excel Gantt chart is manageable. A 50-task chart with phases, subtasks, and color-coding by owner becomes a full-time maintenance job. The chart area becomes cramped, label formatting breaks, and scrolling becomes tedious.
No milestone markers without workarounds. Excel doesn't have a milestone chart type. You can approximate milestones with a zero-duration bar and custom formatting, but it's another manual configuration step that breaks easily.
Despite these limitations, Excel Gantt charts make sense in specific situations:
For anything beyond a simple, static timeline -- especially projects with dependencies, shared with clients, or updated regularly -- a dedicated Gantt chart tool removes the manual overhead entirely. gantt-chart.io lets you build the same timeline that takes an hour in Excel in under two minutes, with automatic dependency cascading, a shareable link, and a today marker built in. No chart type workarounds, no formatting fragility, no version conflicts.
Q: Does Excel have any Gantt chart templates?
Yes. Search "Gantt chart" in Excel's template gallery (File > New > search). Microsoft provides several pre-built templates that give you a starting structure. These still use the stacked bar approach and have the same fundamental limitations, but they save you the initial setup steps.
Q: Can I use conditional formatting instead of a bar chart for a Gantt chart in Excel?
Yes, and many people prefer this approach. You create a grid where each column represents a day (or week) and use conditional formatting to fill cells that fall within a task's start-to-end date range. This is more flexible for updating individual tasks but even more time-consuming to build initially.
Q: Can Google Sheets do the same thing?
Yes, Google Sheets can replicate the stacked bar chart Gantt chart approach with similar steps. Google Sheets has slightly better real-time collaboration than Excel, but the same fundamental limitations around dependency cascading and formatting fragility apply.
Q: How do I add percent complete to an Excel Gantt chart?
Add a "Percent Complete" column to your data table. You can create a second series in the stacked bar chart using the formula Duration * Percent_Complete to show a completion bar overlaid on the task bar. This works but requires careful series ordering and formatting to look correct.
Start building your project Gantt chart at gantt-chart.io: free, no account required.