trolls.dev

the honest guide

How to make a Gantt chart in Excel

Excel has no Gantt chart button — but it can be talked into one two different ways. Here are both, with the exact clicks, the formulas to copy, and an honest accounting of what a spreadsheet will never do for you.

We use the same six-week bakery-website plan as our worked examples, our Google Sheets guide, our PowerPoint guide, and our Word guide, so you can line them all up side by side.

One table feeds both methods

Whichever method you pick, the raw material is the same: one row per task, with a start date and an end date. Two helper columns turn those dates into numbers a chart can use — days from project start and duration in days. Build this once and the chart is a few clicks away.

bakery-website-plan.xlsx · Microsoft Excel
D2 =INT(B2)-INT($B$2)
ABCDE
1 Task Start End Start on day Duration
2 Design Oct 5 Oct 19 0 14
3 Build Oct 12 Oct 30 7 18
4 Copy Oct 22 Oct 29 17 7
5 Photos Oct 26 Nov 5 21 10
6 QA & fixes Nov 5 Nov 12 31 7

The highlighted helper columns: D2 =INT(B2)-INT($B$2) and E2 =INT(C2)-INT(B2), filled down. INT strips any time-of-day, so the maths is whole calendar days.

The stacked bar chart with an invisible series

This is the trick behind almost every Excel Gantt chart on the internet, and behind Microsoft's own template: a stacked bar chart where the first segment — the days before each task starts — is made invisible. What's left appears to float, and floating bars on a shared axis are a Gantt chart.

  1. List tasks with start and end dates

    In columns A to C, put one task per row with its start date in column B and end date in column C — real dates, formatted as dates.

  2. Add two helper columns

    In column D, days from project start: =INT(B2)-INT($B$2). In column E, duration in days: =INT(C2)-INT(B2). Fill both down to the last task.

  3. Insert a stacked bar chart

    Select the task names in column A, then Ctrl-select the two helper columns D and E. Insert → Charts → Bar → 2-D Stacked Bar.

  4. Make the offset series disappear

    Click the first (left-hand) series — the "Start on day" segment — and set Format Data Series → Fill → No fill. The remaining bars float: that is the Gantt chart.

  5. Turn it right-side up and tighten the axis

    Excel stacks the first task at the bottom. Select the vertical axis → Format Axis → check "Categories in reverse order". Then set the horizontal axis minimum to 0 so task one starts flush.

what Excel gives you

Design
Build
Copy
Photos
QA & fixes

Two stacked series: the striped “Start on day” segment, then the real bar.

after fill → no fill

Design
Build
Copy
Photos
QA & fixes

The offset series is still there — it's just invisible. The bars float.

Twenty minutes, no add-ons, and it prints cleanly. The catch: the chart is a picture of columns D and E. It doesn't know Build waits on Design — there are no dependencies, so when a date slips you re-type every downstream date yourself. And a milestone — a zero-day task — renders as nothing at all: a zero-width bar.

A calendar grid, coloured by a formula

The other honest way skips the chart engine entirely. Lay a row of dates across the top, then let a single timeline of cells fill themselves in with a conditional-formatting rule. The bars live right next to your data and re-colour the instant a date changes — no chart editor, no hidden series.

rule =AND(F$1>=$B2, F$1<=$C2)
Task Oct 5Oct 12Oct 19Oct 26Nov 2Nov 9
Design
Build
Copy
Photos
QA & fixes

Row 1 holds each column's date; the rule fills a cell when that date falls inside the task's span. Select the whole grid, add it under Home → Conditional Formatting → New Rule → “Use a formula”, and pick a fill. One column per week keeps it compact; one column per day draws a finer bar.

It's fast, it prints, and it needs no chart at all — but it's still a coloured picture of your dates. It can't hold a dependency, it counts weekends as working days, and the same milestone problem applies. Change a date and only the colours move; the plan underneath still doesn't understand what waits on what.

What neither method can do

Both methods draw a convincing chart. Neither builds a plan that maintains itself — because a spreadsheet stores dates, not the relationships between them. That gap is the same in Excel as it is in Google Sheets:

  • No dependencies. Nothing knows Build waits on Design. Slip one date and every downstream date is a manual edit — the critical path is invisible.
  • No working days. The maths counts calendar days, so weekends and holidays quietly land inside every bar unless you hand-build a WORKDAY column.
  • Milestones fight you. A zero-day marker is invisible in a bar chart and needs a separate scatter series or a fake one-day bar to show up at all.
  • Sharing is a screenshot. Send the file and the recipient needs Excel, the right version, and the nerve to edit your formulas. A link is easier for everyone.

None of this makes Excel wrong — for a short, stable plan the stacked bar chart is genuinely fine. It's when the plan starts moving that the re-typing begins. If you're weighing the trade-off, our guide to planning a project walks through when a spreadsheet is enough and when it isn't.

Excel Gantt charts, answered

Does Excel have a built-in Gantt chart?

No. There is no Gantt chart type in the Insert → Charts menu. Every Excel Gantt chart is a workaround: a stacked bar chart with an invisible first series, a grid coloured in by conditional formatting, or one of Microsoft's downloadable templates — which are themselves stacked bar charts with the formatting done for you.

Why is my Excel Gantt chart upside down?

Because Excel plots the first row of a bar chart at the bottom of the axis, so your task list comes out reversed. Select the vertical (category) axis, open Format Axis, and tick "Categories in reverse order". The first task jumps to the top and the timeline reads top-to-bottom the way you wrote it.

Can an Excel Gantt chart show dependencies?

Not on its own. The spreadsheet stores dates, not relationships — it has no idea Build waits on Design. When one task slips, nothing downstream moves; you re-type every affected date by hand. There is no supported way to draw the arrows between bars that a real Gantt chart uses to show what waits on what.

How do I add milestones to an Excel Gantt chart?

Awkwardly. A milestone is a zero-length task, and a zero-width bar is invisible. The usual fixes are to add the milestone as a separate scatter series plotted as a diamond, or to give it a fake one-day duration in a different colour — which quietly puts a day on your timeline that is not really there.

What's the fastest way to make a Gantt chart?

Describe the plan in a sentence and let ganttchart.ai draw it — tasks, durations, dependencies, and milestones included. The Excel methods on this page take fifteen to thirty minutes and break when a date changes; the sentence takes about ten seconds, and the chart reflows itself.

Troll mascot sketching a project plan

New to the vocabulary? Every planning term on this page is defined in the plain-English glossary.

Skip the helper columns

Describe your project in plain English and get a shareable, editable Gantt chart in seconds — dependencies and milestones included.