How is Critical Path Calculated? Diving into the Mystery

We users of Microsoft Project often take the calculation of Critical Path within the software for granted. Yes, we know what critical path means and we have a vague notion of how the definition is implemented with MS Project but do we really know the mechanics?

This blog post will answer the question of how Critical Path is calculated and will provide a simple example to illustrate how the calculations are made.

First, what does critical path mean? What is the critical path? Well, there are various available definitions such as the following:

  • The critical path consists of those tasks that cannot slip if the project is to complete on schedule.
  • A critical path is that sequence of tasks in a project that must be completed on schedule in order for the project to complete on schedule.
  • The critical path is the longest path through the network of tasks.
  • Tasks that are on the critical path have no slack.

Microsoft Project begins calculating the critical path by computing the total slack field as you enter each task and define its attributes (i.e., name, start date, finish date, duration, predecessor relationships, etc.). Additionally, throughout the project’s life, as you enter more task data such as Actual Start and Actual Finish dates, Microsoft Project updates things so the critical path may change.

Let’s look at a small six task project shown below in a Microsoft Project plan:

Critical Path Example-MPP-1

If we make the critical path visible, the Microsoft Project plan looks like this:

Critical Path Example-MPP-2

Those Gantt bars shown in red above are on the critical path because they represent the longest path though the networks and because they have zero (0) slack.

Taking a look at this project as a network diagram in Microsoft Project we see that there are three paths through this project network. Using Microsoft Project’s Network view we have something like this:

Critical Path Example-MPP-3

It may be a little hard to see but the path with the red highlighted tasks represents the critical path. Further we can see that there are three possible paths through this network which are:

  • Start, Task A, Task B, Task C, Finish
  • Start Task 1, Task C, Finish
  • Start Task 1, Task 2, Task 3, Finish

To find the critical path, the path with the longest duration, we can construct a table such as the one below consisting of the paths for the rows and the tasks on the path for the columns:

Path Table

Note: The yellow colored cells above represent tasks that are not members of that particular path.

From the table above, we can see from the simple calculations that the critical path is Path 3 consisting of Start, Task 1, Task 2, Task 3, and Finish for a duration of 17 days.

The real complications come in when:

  • There are a significant number of tasks.
  • The predecessor relationships are complex, consisting of more than “Finish-to-Start” relationships. Other, more complicating, relationship types include “Start-to-Start” and “Finish-to-Finish.”
  • Where there are delays appended to the predecessor relationships.

All these complications result usually in a large number of tasks that, of course, can have their path duration calculated by hand, but it’s simpler to let Microsoft Project perform this task as you are building your project plan, entering actual dates, changing predecessor relationships, or manually changing task durations.

We can see the critical path really clearly if we make a project view of the project using OnePager Pro. This can be done in a minute or two and results in the picture of the project shown below:

Critical Path Example

Everything appears to be clearly identified and you can see the tasks on the critical path, as they have red bars along their top border as indicated in the legend in the upper-right of the graph. A more complex project with critical path might look like this in OnePager Pro:


This graph of a multi-phase project not only shows the critical path, but also shows percent complete/progress bars in yellow. Additionally, below most of the tasks we see a narrow bar which represents the baseline dates. Unlike the previous graph of the simple six-task project, the one above is organized into swimlanes which groups the tasks into their respective phases.

Let us know if we’ve answered the frequently-asked question as to how critical path is calculated. Hopefully, these examples give a good feel for how critical path appears in both Microsoft Project and OnePager Pro.

Building Gantt Charts in PowerPoint? Think again!

There is no argument out there that most project management systems (Microsoft Project included) come up a bit short when it comes to reporting. It’s no surprise that many desperate project managers turn to PowerPoint as an alternative so that they can create project status reports that people can understand.

Of course, this is a time-consuming and error-prone way to do things, but it’s not always clear exactly how much time this kind of effort wastes, so we’re going to run a quick (?) experiment and see for ourselves. Then we’ll compare those results to the results using OnePager Pro, our MS Project add-in that automates the process of building a Gantt chart in PowerPoint.

We’ll start with a simple Microsoft Project plan, where we want to show a subset of 18 tasks. Oversimplified? Definitely–so expect a real project plan to take even longer.

We’ll start by setting up a PowerPoint slide with 18 rows for each task:


Time: 7 mins

Now, we’ll add a time axis to the top so that we’ll have a timeline in the report. I’ll need to calculate the duration of my entire project (15 months) and determine the best way to divide up my slide so that it’s readable:


Time: 8 mins (total 15 mins)

Next up, I’ll want to start drawing the tasks and milestones on the timeline. This is going to take some effort, since my timeline is only broken out by months, even though tasks are scheduled on a daily basis. I’ll flip back and forth between my project plan and PowerPoint to do this step:


Time: 21 mins (total 36 mins)

At this point, we’re about half an hour into reporting on a very simple project, and are just beginning to get something that’s palatable. Of course, we’re nowhere near finished yet in terms of building something that’s actually useful. At a bare minimum, I want to show progress for each task, as well as the baseline, so I can make sure we’re holding to the original plan. We’ll start the swivel chair process with Project again to start moving that data over slowly but surely:


Time: 16 mins (total 52 mins)

In the picture above, percent complete is yellow, and baselines are black. At this point, I’m getting annoyed at the imprecision of PowerPoint. I’m pretty sure I’ve gotten a few dates wrong, and I know that I can’t distinguish between 45% and 50% progress at all. Needless to say, I now have a status report that shows dates, progress, and baselines. It’s taken just under an hour so far, though I did get lucky in that there weren’t too many progress bars to draw.

What I really need, though is a chart that gives me an understanding of my project’s resourcing, and this translation of the schedule really doesn’t cut it. So, I’m going to go back into PowerPoint, create some swimlanes, and manually drag each task into the correct swimlanes based on the assigned resources:


Time: 12 mins (total 64 mins)

I now have swimlanes, which give me a reasonable grouping of my tasks by resources. Somewhere, somehow, I misplaced one of the progress bars from my original schedule as I was dragging things around, so there is now a rogue yellow line on my chart. I’ll have to go back and determine where it actually belongs.

Meanwhile, I am going to color-code my project by phase so it’s clear which phase each task belongs to. Again, this is pretty tedious and error-prone, because I have to go line-by-line through the project plan and determine which color each task should be. I also have to put together a legend or a key at the bottom of the chart so that it’s clear what each color means. This example project only has four phases, so it’s easier to color-code than most, but still took some time:


Time: 17 mins (total 81 mins)

We’ll stop the torture here. After 81 minutes, we have a reasonable-looking chart. But, if you need to create a different view of your project plan (e.g. more detailed), or if you need to make updates to your chart because some of the dates or resources in your plan have changed, you’re looking at a complete tear-down and rebuild. This is why the average project manager spends 4-6 hours each week building and maintaining project reports. Think of what else you could do with that time!

OnePager Pro is designed as a fit-for-purpose tool so that busy PMs can generate meaningful project reports without spending all day doing it. Here’s the same project plan build dynamically in OnePager Pro:


Time check? Three minutes, thirty-eight seconds (3:38). Not bad, especially compared to 81 minutes in PowerPoint! And, when I update my plan, I can refresh this chart almost instantaneously, which saves me hours on a recurring basis. More complicated projects will take longer, of course, but the time savings factor should be about the same.

So, the next time you want to get back to your real job of successfully delivering projects instead of moonlighting as a graphic artist, give OnePager Pro a spin. Or, just create your charts in OnePager Pro and take the rest of the afternoon off. We won’t tell!

Download a 15-day free trial of OnePager Pro