Step-by-step guide

How to Create a Gantt Chart in Excel

There are two ways to make a Gantt chart in Excel. You can bend a stacked bar chart into the shape of one, or you can open a template that already is one. This guide does the second, start to finish, on a real project — and it takes about ten minutes.

Download the free template Start at step 1

  • 4.9/5 · 144 reviews
  • Windows & Mac
  • Nothing to install

How to make a Gantt chart in Excel

The short version, for anyone who wants the answer before the detail. The full tutorial follows underneath. Each step is one dialog or one keystroke, and the schedule maintains itself from there.

  1. Open the template Download the Gantt chart Excel template and click Enable Content so the macros run.
  2. Create the chart Gantt Excel → Add New Gantt Chart. Name the project and choose Days or Hours.
  3. Type your tasks Type into the placeholder row. Dates, duration and the WBS number fill themselves in.
  4. Shape the plan Indent tasks into phases, drop in milestones, and link what waits on what.
  5. Choose your view Seven timeline views, from hours to years. Add people, working days and holidays.

You already have what you need If you have Microsoft Excel, you already have everything you need. The template is an ordinary workbook — nothing to install, no account, and it works on Windows and Mac.

The worked example

We will build one real project: Oakfield Villa

Generic screenshots teach nothing, so every step on this page builds the same plan — a house build run by Amara Whitfield, from the client brief through to handover. It is the same project used throughout the Gantt Excel documentation, so you can carry on into the Getting Started guide without starting again.

This is what you end up with. This is the result.

The finished Oakfield Villa Build Gantt chart in Microsoft Excel: five phases from Design and Permits through to Finishes and Handover, with summary bars, milestone diamonds, dependency arrows, resources and percentage complete.
The Oakfield Villa Build plan, finished — five phases with twenty-two rows beneath them, three of which are milestones, plus dependency arrows, resources and progress rolled up into every phase heading. Almost every date on it was calculated rather than typed. The eight steps below are how it gets built.
1

Open the template and let the macros run

Download the Gantt chart Excel template and open it. Excel shows a yellow bar under the ribbon reading Macros have been disabled. Click Enable Content. The workbook reloads, the red notice across the top of the task grid disappears, and the Gantt Excel tab wakes up.

That red notice is the whole diagnostic. If you can see it, no code is running, and the ribbon buttons will do nothing however many times you click them.

Microsoft Excel showing the yellow SECURITY WARNING bar with the Enable Content button, and a red Automation Off notice across the Oakfield Villa Build task grid.

Scroll the image sideways to read the whole grid →

Both halves of the problem in one shot: the yellow Enable Content bar at the top, and the red Automation Off notice sitting across the task grid. The Gantt Excel tab is there but empty — that is what no macros looks like.

No Enable Content button? Then Windows has flagged the download instead, and the fix is a different one. Enabling macros in Excel walks through it.

On a Mac, Excel asks on opening instead of showing a bar — choose Enable Macros. And if you keep being asked every time, save one copy of the file to a folder of your own and unblock that copy once, rather than reopening the download each time.

2

Create the chart

The Gantt Excel tab sits before Home on the ribbon. The first group on it is Gantt Charts.

The Add New Gantt Chart button on the Gantt Excel ribbon.

Gantt Excel Gantt Charts Add New Gantt Chart

The full Gantt Excel ribbon tab in Microsoft Excel, showing the Gantt Charts, Tasks, Views and Timeline, Filters, Grouping, Rows and Columns, Resources, Settings and Export groups.
The whole Gantt Excel tab. Add New Gantt Chart is the first button on it, far left. Everything else on this page lives somewhere on this one strip.

That opens the New Project dialog. Fill in the project name, the worksheet name, the project lead and, if you want them, the baseline and estimated budgets. Here it is with the villa in it — project name Oakfield Villa Build, worksheet name Oakfield Villa, lead Amara Whitfield, and the two budgets the job was signed off against.

The New Project dialog filled in for Oakfield Villa: Project Name Oakfield Villa Build, Worksheet Name Oakfield Villa, Project Lead Amara Whitfield, Duration Days, Estimated Budget 385,000 and Baseline Budget 370,000.
The New Project dialog with the villa in it. Note Duration set to Days — that is the choice you cannot revisit.

Days or Hours — decide before you click OK Choose Days for anything measured in days or weeks — a building job, a campaign, a product launch. Choose Hours only for work that lives inside a day or two: a shift schedule, an installation, an event run sheet — the hourly Gantt chart template is built around exactly that case. If you get it wrong, the fix is a new chart, so it is worth ten seconds of thought.

Click OK and a new sheet appears, already formatted. The project name sits in a coloured card on row 6, the project lead on row 7, the budget line on row 8, the column headers on row 9, and your tasks begin on row 10. Nine columns are showing to start with — WBS, Task, Priority, Resource, Start, Finish, Duration, Done and % Complete — and another twenty-four are available but hidden, plus twenty Custom columns that are entirely yours.

A brand new Oakfield Villa chart sheet: the project name in a blue card, the project lead and budget line beneath it, the column headers, one starter task reading Type here or double-click to edit in form, and a greyed placeholder row.

Scroll the image sideways to read the whole grid →

A brand new sheet, before a single task is typed. The starter row already carries a date and a duration of 1 — every task in Gantt Excel arrives complete and you edit it down.

Everything except the duration type can be changed later: click the project banner, or use Gantt Excel → Gantt Charts → Edit Project. You can also add as many separate charts to the same workbook as you like — each one keeps its own settings, its own resources and its own language.

3

Type your tasks in

At the bottom of the task list is a greyed row reading Type here to add a new task. Click it, type a name, press Enter. A fresh placeholder row appears underneath, so you can rattle off the whole list without touching the mouse.

If your task list already exists somewhere else, you do not have to retype it. Copy the column of task names out of any other Excel workbook and paste it straight into the task column — the whole list arrives at once, and every row comes in as a proper task with its own dates and duration.

Every task you create this way arrives complete. Gantt Excel works out the WBS number, sets the start date to the next working day, gives it a duration of 1 and calculates the end date. The task is deliberately plain, so you can get the names down first and think about dates afterwards.

Then set the durations, and the dates follow. For the villa:

TaskStartDurationFinish
Client briefMon 29 June2 daysTue 30 June
Architectural drawingsWed 1 July6 daysWed 8 July
Planning permissionThu 9 July8 daysMon 20 July
The Oakfield Villa task grid with three tasks — Client brief, Architectural drawings and Planning permission — the greyed Type here to add a new task row beneath them, and the matching bars on a July timeline.

Scroll the image sideways to read the whole grid →

The same three tasks in the file. The greyed Type here to add a new task row sits under the last one, and the weekend is visible in the timeline: the drawings bar runs Wednesday to Wednesday, straight over a Saturday and Sunday that were never counted.

Look at the drawings task: six days from Wednesday 1 July lands on Wednesday 8 July, not Monday 6th. The weekend was skipped, because the calendar knows Saturday and Sunday are not working days. You never do that arithmetic yourself — Gantt Excel walks forward one day at a time and counts only the days that actually count.

The Add Task button on the Gantt Excel ribbon.

Gantt Excel Tasks Add Task

If you would rather work in a form than in the grid, select a row and use Add Task, or double-click any existing task to open the Task Form. Both write to exactly the same place, and adding tasks covers the rest of what the grid will do for you.

Two things not to do Do not right-click in Excel and insert a row — a hand-inserted row is not a task, because it has none of the hidden identity and link columns the engine reads. And be careful with Delete: Excel’s own Ctrl Z cannot reverse a Gantt Excel delete, because the delete also rewrites WBS numbers, dependency links and the chart itself.

4

Group the work into phases

A real project plan is not a flat list, and grouping it takes one button. Select a task and click Make Child. That task becomes a sub-task, and the task directly above it becomes a summary task. That is the whole mechanism.

The Make Child button on the Gantt Excel ribbon.

Gantt Excel Tasks Make Child  —  or press Alt

For the villa: type a new task called Design and Permits above the three you added in step 3, select those three, and click Make Child. They indent one level, and Design and Permits turns bold and becomes the phase heading.

Do the same again for the groundworks, and the plan starts to look like a plan:

WBSTaskStartFinishDuration
1Design and PermitsMon 29 JuneTue 21 July16
1.1Client briefMon 29 JuneTue 30 June2
1.2Architectural drawingsWed 1 JulyWed 8 July6
1.3Planning permissionThu 9 JulyMon 20 July8
1.4Permits approved (milestone — step 5)Tue 21 JulyTue 21 July0
2GroundworksWed 22 JulyWed 5 August15
2.1Site clearanceWed 22 JulyFri 24 July3
2.2Excavate foundationsMon 27 JulyFri 31 July5
2.3Drainage and servicesWed 29 JulyMon 3 August4
2.4Pour footingsMon 3 AugustWed 5 August3
The Oakfield Villa task grid with Design and Permits and Groundworks as summary tasks over their indented children, and the matching summary bars and task bars on the timeline.

Scroll the image sideways to read the whole grid →

The two phase rows are in bold, their children indented beneath them, and each phase has a summary bar spanning its children on the timeline. Nothing in those two bold rows was typed. (The tasks show as complete here because this capture comes from further along the same project.)

Nothing on the Groundworks row was typed. The WBS numbers — 1, 1.1, 2, 2.1 — are never typed either. They recalculate on every indent, move, duplicate and delete, because the code is purely positional.

Why the Groundworks row says 15 when the phase only lasts 11 days The four tasks add up to fifteen days of work, but they span only eleven working days, because drainage overlaps the excavation. Which number the parent shows is your choice: Total of Subtask Durations gives the sum of the work, which is what this chart is set to, and Earliest Start to Latest End gives the calendar span of the phase instead. Both live under Gantt Excel → Settings → Settings, on the General tab.

You can nest as deep as you like in principle, but three or four levels is where a plan stays readable. Summary tasks and the WBS goes further into how the outline behaves as a plan grows.

5

Mark the milestones

A milestone marks a moment rather than a stretch of work — a delivery, an approval, a go-live. On the villa it is Watertight, on Wednesday 2 September: the day the roof is on and the building can be worked in whatever the weather.

The Add Milestone button on the Gantt Excel ribbon.

Gantt Excel Tasks Add Milestone  —  or press Alt G M

A milestone’s end date always equals its start date and its duration is always 0. That is what makes it a milestone, and it is why it draws as a diamond rather than a bar. There is no duration box to fill in, because there is nothing to fill in.

The Oakfield Villa task grid showing two milestones — Permits approved and Watertight — each with a duration of zero, an identical start and finish date, and a diamond marker on the timeline instead of a bar.

Scroll the image sideways to read the whole grid →

Two milestones in the villa: Permits approved closing the design phase, and Watertight closing the structure. Both show a duration of 0, an identical start and finish, and a diamond on the timeline rather than a bar.

Milestone or one-day task? Ask whether actual work happens that day. A milestone represents the outcome; a one-day task represents labour, with a cost and a person attached to it. And if you want to close off a phase, that is a summary task rather than a milestone — milestones cannot have child tasks under them. Milestones is the full reference.

6

Link the tasks, so the plan reschedules itself

This is the step that separates a Gantt chart from a picture of one. Footings cannot be poured until the drainage is in. Say so once, and every date downstream looks after itself from then on.

Double-click the task that waits — not the one it waits on — and switch to the Dependencies tab, the second tab of the Task Form. Choose the predecessor from the Task list, pick a Type, add Lag if you need it, click Add, then OK. The link is stored on the successor, which is why you always open the waiting task.

The Gantt Excel Task Form open on the Dependencies tab, showing the Task picker, the Type list, the Lag box, the Add and Edit buttons, and two existing Finish to Start links listed below.
The Dependencies tab, the second tab of the Task Form. Pick the predecessor in Task, set Type and Lag, then Add — the link only joins the list underneath once you have. Clicking OK with something still sitting in the picker is the one mistake everybody makes here.
TypeMeaningWhat it drives
FS — Finish to StartB starts after A finishes. The default, and most of what you needB’s start
SS — Start to StartB starts when A starts. Use it for genuinely parallel workB’s start
FF — Finish to FinishB finishes when A finishesB’s finish
SF — Start to FinishB finishes before A starts. RareB’s finish
The Oakfield Villa chart with dependency arrows drawn between linked tasks: roof structure into roof tiling into the Watertight milestone, and the three first-fix tasks into plastering.

Scroll the image sideways to follow the arrows →

Linked tasks on the villa. Roof structure feeds roof tiling, which feeds the Watertight milestone, which releases the whole First Fix phase. The three first-fix trades then all feed plastering — so plastering cannot start until the last of them is done.

Lag is measured in working days and can be negative. Screed concrete has to cure before the tiles go down, so “lay floor tiles” gets an FS link with a lag of 2 and starts two clear working days after the screed is laid — a weekend in the way is handled for you. A negative lag overlaps two tasks instead. Lag is not slack you can spend: it is part of the schedule, exactly like a task’s duration.

There is a quicker route for simple chains: click a task’s bar once to select it, then drag it onto another task’s row. Gantt Excel confirms and creates a Finish-to-Start link with zero lag.

Now change something. If rip-out runs a day over, the tasks behind it move, and the tasks behind those move too — without a single date being retyped, and without any task changing length. Links move tasks; they never change durations. A date that a link is driving becomes read-only and shows in italics, so you can always see at a glance which dates you own and which the schedule owns.

Adding dependencies is the click-by-click reference, and the Gantt chart template with dependencies follows one worked project through a slip to show why links behave the way they do.

7

Set the timeline and pick a view

The villa runs from June to the following spring. Nobody wants to scroll that in day columns, and nobody wants to plan next week in year columns, so the timeline has seven views and you switch between them freely. Switching a view never changes a single date — it only changes what one column on screen is worth.

Gantt Excel Views and Timeline Daily View · More Views · Setup Timeline

The seven Gantt Excel timeline views on the ribbon: Hourly View, Daily View, More Views, Weekly View, Monthly View, Quarterly View, Half Yearly View and Yearly View.
The seven views, on the Views and Timeline group of the ribbon. Daily and Hourly have their own buttons; the rest sit under More Views.

Setup Timeline does two separate jobs. It sets the window — the stretch of calendar the chart draws, which you can move independently at each end — and it sets the column width for each view, which is the zoom.

Click Show Full Timeline to see the entire project on screen. Views and the timeline covers each view and what one column is worth in it.

8

Add the people, the working days and the holidays

A resource in Gantt Excel is a person or a piece of kit — and, more importantly, a calendar. This is where the dates on your Gantt chart stop being arithmetic and start being real.

The Resources button on the Gantt Excel ribbon.

Gantt Excel Resources Resources

The Gantt Excel Resources window: the resource list on the left with Organization at the top, and for the selected resource the Work Days tick boxes, the Work Hours start and end times, the break, the cost, and the Holidays panel.
The Resources window. The list on the left always starts with Organization; everything to the right belongs to whichever name is selected. This capture is from an hourly chart, which is why it shows Work Hours and Cost Per Hour — on a day-based chart like the villa the Work Hours panel is not there and the cost is per day.

The window opens on Organization, which is not a person — it is the project’s default calendar, used by every task that has nobody assigned. New charts start it at Monday to Friday. Set that up first, because everyone you add afterwards inherits its working days. Then add your people, tick their working days, and put the site shutdown and the bank holidays on the Organization row with Include Organization Holidays left ticked, so you only enter them once.

Here is what it buys you. Gantt Excel does not add a duration to a start date. It walks forward one calendar day at a time and counts only the days that are working days for that resource and are not holidays. So a five-day task starting Thursday 9 July finishes Wednesday 15 July — and if Friday 10 July is a holiday, the same task finishes Thursday 16 July instead. You change one tick box and the plan re-flows.

The same three Oakfield Villa tasks shown twice: with Friday ticked as a working day, and with Friday unticked, where every bar steps over the Fridays and finishes later.

Scroll the image sideways to compare →

The same three villa tasks, twice. Above, Friday is a working day. Below, Friday is unticked — and every bar steps over it and finishes later. The durations did not change; only the calendar did.

Assign someone by double-clicking the Resource cell on a task row. If you have turned costs on, the day rates of everyone assigned are added together and multiplied by the duration, and the figure rolls up into the phase totals. Resources, working days and holidays and work and costs go through both in full.

Watch it instead

The same tutorial, on video

If you would rather watch than read, this walks through the same steps — creating the chart, adding tasks, grouping them into phases and setting the timeline.

The other method

Drawing a Gantt chart in Excel by hand

Excel has no Gantt chart type — if you want the background first, here is what a Gantt chart is and what it is for. The usual workaround is to make a stacked bar chart and hide half of it: put your tasks in one column, start dates in the next and durations in a third, insert a Stacked Bar chart, then make the start-date series invisible so only the duration bars show, and reverse the category axis so task one is at the top.

That is the easy part. The work starts afterwards, and it is all manual. Every task needs its own bar, drawn by hand — a row in the source table, a start value and a length, added one at a time. You work out every date yourself, counting weekends and holidays on your fingers, because a chart series has no idea what a working day is. There is nothing to indent, so phases are whatever you can fake with blank rows and bold text. Nothing is linked to anything, so when one task slips you go back and retype the start date of every task behind it, and then check the bars still line up. Want the same plan by month instead of by day? Rebuild it. And the moment somebody edits the table without touching the chart, or the chart without touching the table, the two quietly stop agreeing.

For a five-task picture you will never open again, all of that is fine and it costs nothing. For a plan you actually run a project on, it is an afternoon to build and a chore every week after that. The free Gantt chart Excel template is the other route — the one this page has been using all the way through.

By hand

A stacked bar chart

  • You have to draw a bar manually for every task
  • Fine for a one-off picture in a slide deck
  • You calculate every date yourself, weekends included
  • No dependencies — one slipped task means retyping all the ones behind it
  • No critical path, no working calendars, no holidays
  • Changing the timescale means rebuilding the chart
  • The chart and the data drift apart the moment somebody edits one

The template — Gantt Excel

A Gantt chart that maintains itself

  • Also runs in the Microsoft Excel you already have
  • Dates calculated from a working calendar, weekends and holidays skipped
  • Summary tasks, a WBS and milestones as first-class objects
  • Seven timeline views, switched without touching the data
  • Linked tasks reschedule downstream on their own
  • Progress, resources and costs roll up into the phases
  • A built-in Project Dashboard and a shareable Web Report, both built from the same plan
  • Export to PDF or XLSX for anyone who does not have the file

Common questions

Does Excel have a built-in Gantt chart?

No. There is no Gantt chart type in the chart gallery. You either adapt a stacked bar chart into the shape of one, or you open a template that is already a project planner. Both run in ordinary Microsoft Excel.

How do I make a Gantt chart in Excel without a template?

List your tasks in one column, start dates in the next and durations in a third. Insert a Stacked Bar chart from those three columns, then set the fill of the start-date series to no fill so only the duration bars are visible, and reverse the category axis so the first task sits at the top. You will be calculating the dates yourself, including weekends, and you will be redrawing it whenever anything moves.

Do I need to install anything?

No. It is an Excel workbook. Download it, open it, click Enable Content so the macros can run, and start. There is no installer, no add-in to register and no account.

Why is the Gantt Excel tab missing from my ribbon?

Almost always macros. Look at the sheet rather than the ribbon: a wide red notice across the top of the task grid means no code is running. Click Enable Content on the yellow bar, and if there is no such button, close the file, right-click it in File Explorer, choose Properties and tick Unblock on the General tab.

Why did my five-day task finish on the following Wednesday?

Because the weekend does not count. Gantt Excel does not add a duration to a start date; it walks forward one day at a time and counts only working days for that task’s resource, skipping holidays as well. A five-day task starting Thursday finishes on the Wednesday of the following week.

Can I change a chart from Days to Hours later?

No. The Duration setting picks the scheduling engine and is fixed when the chart is created — the box is disabled from then on, and there is no conversion in either direction. If you need the other kind, create a new chart. It is the one choice on this page worth pausing over.

Why can’t I type a start date any more?

Because a dependency is driving it. Finish-to-Start and Start-to-Start links own a task’s start date; Finish-to-Finish and Start-to-Finish links own its end date. A driven date becomes read-only and displays in italics, so you can see which dates you control and which the schedule controls. Remove or change the link if you need the date back.

Can I keep more than one project in the same workbook?

Yes. Add New Gantt Chart builds a fresh chart sheet each time, and each chart keeps its own settings, its own resource list and its own language.

Does it have a dashboard?

Yes, and you do not build it — it is made from the plan you already have. Gantt Excel → Gantt Charts → Dashboard → Project Dashboard creates a Project Dashboard sheet in the same workbook.

Across the top it puts your Estimated Budget against Actual Cost and how far Over Target you are, beside a donut showing how complete the project is. Next to that sits the summary: project lead, start and end dates, total work, and how many tasks are completed, in progress, not started and overdue. Underneath, the work is broken down by status, by priority, and by cost — baseline against estimated against actual.

Slicers filter the whole thing by status, priority, resource or due date, and a dropdown switches between one project and every project in the workbook. It is a snapshot rather than a live link, so click Refresh after you change the plan. If you need to hand the project to somebody who does not have the file, the Web Report on the same menu turns it into a page you can send.

Does % Complete change my dates?

No. Percent complete records progress — it shades the bar and drives the task’s status, but it never moves a start date, an end date or a duration. Scheduling comes from dates and dependencies, and the critical path is worked out from those.

How do I share the chart with someone who does not have the file?

Use Export to PDF or Export to XLSX in the Export group of the Gantt Excel tab. The XLSX export is a plain workbook with no macros in it, which is usually the version to send outside your organisation.

Does it work on a Mac?

Yes, in Microsoft Excel on Windows and Mac. One difference to know about: the right-click menu on the task grid is a Windows feature and is not installed on Mac, because Excel for Mac does not support that kind of menu customisation. Everything it does is on the Gantt Excel ribbon tab instead, and double-clicking a task row opens the Task Form on both.

Build the villa yourself

Download the Gantt chart Excel template and work through the eight steps above with the file open. It takes about ten minutes to get from an empty workbook to a real plan.

Download Now

Runs in Microsoft Excel. Nothing to install, no account.

Reviews

What people actually say

4.9 out of 5 from 144 reviews · collected and verified by Shopper Approved