← Back to Blog
·GanttPM Teamschedulinggantt

What is a critical path? A beginner's guide with a worked example

The critical path is the chain of tasks that sets your project's finish date. Here's how to find it by hand with a small example, and what to do once you have.

Every project has a handful of tasks where a delay hurts and a lot of tasks where it doesn’t. The trouble is that from a plain task list, they all look the same. The critical path is how you tell them apart.

It’s the longest chain of tasks that depend on each other, from the start of the project to the end. Its length is the shortest time the project can take. Slip anything on it and the finish date moves. Slip anything off it, within limits, and nothing happens.

A small example

Say you’re launching a simple website. Five tasks:

Task Duration Needs to finish first
Write copy 3 days nothing
Design pages 4 days nothing
Build site 5 days Write copy, Design pages
Set up hosting 1 day nothing
Test and launch 2 days Build site, Set up hosting

Writing the copy and designing the pages can happen at the same time, and so can the hosting setup. Building can’t start until both copy and design are done. Testing can’t start until the build and the hosting are both done.

Finding the path

List every route from start to finish and add up the days.

  • Write copy, Build site, Test and launch: 3 + 5 + 2 = 10 days
  • Design pages, Build site, Test and launch: 4 + 5 + 2 = 11 days
  • Set up hosting, Test and launch: 1 + 2 = 3 days

The longest route is 11 days, so that’s the critical path: Design pages, Build site, Test and launch. The project can’t finish in less than 11 days, no matter how fast the hosting gets set up.

Slack

Tasks off the critical path have slack, sometimes called float. It’s how many days a task can run late before it starts to push the finish date.

Writing the copy takes 3 days, but the build doesn’t start until day 5 anyway, because design takes 4. So the copy can run one day over and nobody downstream notices. One day of slack.

Hosting is the extreme case. It takes a day, but testing can’t start until the build finishes at the end of day 9. Hosting has eight days of slack. Setting it up on day 1 or day 8 makes no difference to the launch date.

Critical tasks have zero slack. That’s the definition.

What to do with it

Once you know the critical path, a few things get easier.

If you need to finish sooner, shortening the copy writing or the hosting does nothing. Only shortening Design, Build or Test helps. Adding a second developer to the build might save two days. Adding a second copywriter saves none.

If something slips, you can answer “does this matter?” straight away. A two-day delay in hosting is fine. A two-day delay in design moves the launch by two days.

And the path can change. If the copy ran four days over, it would become the longest route and the critical path would switch to it. This is why the path is worth rechecking whenever a date moves, not just at kickoff.

Doing it without the arithmetic

Five tasks is easy by hand. Fifty tasks with lags and overlapping dependencies is not. GanttPM’s Gantt view calculates the critical path for you and highlights it, shows slack on every other task, and recalculates when a date changes. You can try it with your own project and see which bars are actually holding the date.

Bring your plan across, in minutes.

Import your existing Microsoft Project files or start fresh. Free to use locally, no credit card required.