Share
Explore

icon picker
Critical Path Guide: How to use CPM in your next project

A handbook for managing large, complex projects with well-defined tasks.
The critical path method (CPM) has been a project management mainstay since the 1950s. It helps the project manager answer a simple question: Out of all the tasks and subtasks in the project, which sequence of tasks are most likely to take the longest? Completing those tasks on time is essential to completing the whole project on time.
Armed with this knowledge, project managers can complete their project planning duties with a clear hierarchy of task prioritization, an estimate for how long the project will take to complete, and what, if anything, has the potential to throw the project schedule off.

What is the critical path method (CPM)?

The critical path method is a project management strategy that helps identify task sequences to determine the duration of a project. When you use CPM, you list every task involved with a project along with its predecessors, dependent tasks, and an estimate for how long it'll take to complete. Then, you use this data to identify the project's critical path, which is the series of important tasks (called critical tasks) that have the most impact on whether the project will hit its deadline.
A typical example that's often brought up when explaining CPM is cooking. For a large breakfast, if you want your eggs, bacon, and toast to be ready to serve at the same time, you need to balance a bunch of competing priorities. The bacon, for instance, will take longer to cook than it will take for the bread to toast. Your toast has some slack, which means you can pop the bread in the toaster at almost any point during the bacon's cook time without delaying breakfast.
In this case, the series of tasks involved with frying bacon is the critical path to breakfast. The critical path determines how long it will take for you to cook and serve the food. Your toast and your eggs are still vital for a complete breakfast, but they have some slack (i.e., flexibility) for when you start and finish cooking them.
Projects that use critical path analysis (technically, CPM is an algorithm) tend to be more complex than Saturday morning breakfast. back in the 1960s when they faced interruptions in their factories. By identifying the critical paths in the production process, they could reduce the interruptions and speed everything up.
Since then, the idea of a critical path has developed into a project management mainstay, with many different industries using CPM for projects of all types.
These days, three of the most significant benefits project managers see from using the critical path method are:
Accurate time estimates and project optimization. Project managers can use CPM to how long a project will likely take. They can then optimize the critical path, thereby reducing the overall project's length of time.
Task prioritization. With CPM, project managers know exactly which tasks absolutely must hit their deadlines and which tasks have some slack. With this information, they can prioritize what resources go where and when.
Risk management and workflow improvement. In the process of creating a CPM plan, project managers can get the "lay of the land," visualizing potential bottlenecks, delays, and potential resources shortages before they arise.

What kind of projects is CPM good for?

Generally, CPM is good for large, complex projects with well-defined tasks. Constructing a house, for example, is an excellent CPM project because it requires you to manage a lot of competing priorities, but the core component tasks are straightforward: you need a foundation, walls, a roof, plumbing, electricity, and so on. In order to manage these types of projects, you might use a .

CPM is good for large, complex projects.

Large projects with many different teams that must-hit milestones, necessary deliverables, and interweaving task dependencies are great candidates for CPM. For projects like these, CPM provides a clear path toward on-time project completion. You might be juggling a lot of tasks, but you'll know which ones absolutely must hit their deadlines and which ones have a little wiggle room.
If your project is simple, CPM might not be the right tool. A simple project may call for a simpler strategy, like .

CPM is good for projects with well-defined tasks.

CPM is best when you know what needs to happen to complete the project. If your project has the potential to change significantly throughout its lifecycle, consider a project management approach .

Key steps in the Critical Path Method (CPM)

CPM has evolved into a fairly flexible framework, but it started in the early 1960s as a strict step-by-step process.
There are five steps in the Critical Path Method you need to follow:
List out all tasks and assign dependencies.
Estimate time durations and slack time (also called total float) for each task.
Map out the tasks and identify the critical path.
Optimize your critical path.
Use your critical path to as your project develops.

Here are the 5 steps in the critical path method in detail:

Step 1: List out all tasks and assign dependencies.

First, list out every task the project contains from start to finish. Traditionally, you then assign a symbol to represent each task (e.g., letters, numbers, or a combination) and use that symbol to denote predecessors and dependencies.
You may not need symbols if your project is small enough or if you're using . Our is a good example of a tool that doesn't require symbols. All that said, symbols can be handy for documentation and stakeholder communication.

Step 2: Estimate time durations in order to calculate slack time.

Alright, this is where the math comes in. Estimating time duration is pretty straightforward. Put in your best estimation for the amount of time it will take to complete each task.
Alternatively, many CPM templates () will take a cue from the , which calls for three estimations: optimistic (O), pessimistic (P), and likely (M). With these three estimates, you then use the following formula to calculate likely task time duration (t).
(O + 4M + P)/6 = t
Once you have these estimations, it's time to calculate slack time, which is the amount of flexibility the task has before it delays the entire project. In the breakfast example, the cooking of the bacon has zero slack time because it takes the longest path to complete, while the toast may have a slack time of a couple of minutes.
There are five acronyms to know to calculate slack time:
ES = earliest start time
EF = earliest finish time
t = time duration
LS = latest start time
LF = latest finish time

First, calculate the earliest possible finish time (early finish, or EF). To do so, pick the earliest time a task can start (early start or ES). If the task is dependent on another task, ES is contingent on the predecessor's EF. To calculate EF use this formula:
ES + t = EF
Add your estimated time duration to the start date, and you get the earliest finish date.
Once you have ES and EF figured out, it's time to calculate the latest possible start time (late start or LS). To do so, pick the latest possible end date (late finish, or LF). Then use this formula:
LF - t = LS
The latest time a task can start is the latest finish minus time duration.
With all this math complete for each task, you can calculate slack time. The formula for slack time is:
LS - ES = Slack Time
In other words, if ES = LS, there is no slack time, and that task is likely a critical task. If there is any delay with this task, the task preceding it, or the task-dependent on it, the whole project will be delayed.
Quick note: if you don't want to do these calculations yourself, use our critical path method template, which automates a lot of this work for you.

👉


Step 3: Identify the critical path.

Lay out your tasks as a Gantt chart using your estimated time durations and dependencies. Once they're laid out visually, you'll be able to identify the critical path, which is the longest sequence of activities that determine the project's duration.
Keep in mind that sometimes there will be more than one critical path running parallel. This is not necessarily a bad thing, but you will have to prioritize two series of critical paths at the same time. It will be obvious with a Gantt chart if you have more than one critical path.

Step 4: Optimize your critical path.

In the process of calculating slack time and creating a Gantt chart, you may run into issues with your critical path activities. You may find that you have too many critical paths, and you need to adjust your LS or EF variables. Or perhaps the tasks you created are too granular, leading to an overly complex critical path that's hard to manage.
It's perfectly fine for problems like these to arise at this stage of CPM. This project planning phase is the time to fix issues before the project starts.

Step 5: Reduce risk as the project develops.

Once the project starts, all the CPM work you've done begins to pay off. Every project has its curveballs, missed deadlines, and lacking resources. With a CPM, you can prioritize which tasks get which resources and when, in order to complete the project on time. Tasks that have slack time are non-critical tasks, and it's okay to miss their deadlines as long as you're fast-tracking critical tasks.
This management of the project process is how you reduce the risk of your project missing its deadline, going over budget, or creeping out of scope.

3 critical path method (CPM) examples.

Many different industries use CPM for a variety of projects. The most common example is construction projects, but ad campaigns and research projects also make great examples.

Construction projects.

Construction projects have multiple teams and stages to coordinate along with and a completion date. Knowing the critical path throughout the lifecycle of such a complex project will keep everything on track and inform all team members of what they need to prioritize.
CPM for construction projects example:
Enter Project Start Date 👉
7/1/2024
Expected Finish Date (calc):
7/17/2024
Duration (calc):
11 days 16 hrs
Add A Task
Clear sample data
View
Task Name
Predecessor(s)
Owner
Status
Optimistic
Most Likely
Pessimistic
Duration
Start Date
End Date
ES
EF
LS
LF
Slack
1
Start
-
7/1/24
7/1/24
-
-
-
-
-
2
Excavation
Start
BD
Buck Dubois
In Progress
3 days
4 days
6 days
4 days 8 hrs
7/1/24
7/8/24
-
4 days 8 hrs
-
-
-
3
Pour foundation
Excavation
Maria Marquis
On Hold
5 days
10 days
15 days
10 days
7/8/24
7/22/24
4 days 8 hrs
14 days 8 hrs
-
-
-
4
Framing
Pour foundation
Felix Marlin
On Hold
3 days
5 days
7 days
5 days
7/22/24
7/29/24
14 days 8 hrs
19 days 8 hrs
-
-
5
Roofing
Felix Marlin
Not Started
3 days
5 days
7 days
5 days
7/1/24
7/8/24
-
5 days
-
-
-
6
Plumbing
Lola Tseudonym
Not Started
3 days
5 days
9 days
5 days 16 hrs
7/1/24
7/9/24
-
5 days 16 hrs
-
-
7
Electrical
BD
Buck Dubois
Overdue
3 days
7 days
9 days
6 days 8 hrs
7/1/24
7/10/24
-
6 days 8 hrs
-
-
8
Masonry
Alan Chowansky
On Hold
5 days
10 days
14 days
9 days 16 hrs
7/1/24
7/15/24
-
9 days 16 hrs
-
-
9
Interior
Mary Jones
In Progress
6 days
9 days
14 days
9 days 16 hrs
7/1/24
7/15/24
-
9 days 16 hrs
-
-
10
Exterior
Roofing
Lola Tseudonym
On Hold
4 days
5 days
6 days
5 days
7/8/24
7/15/24
5 days
10 days
-
-
11
Landscape
Adam Davis
Not Started
7 days
11 days
17 days
11 days 16 hrs
7/1/24
7/17/24
-
11 days 16 hrs
-
11 days 16 hrs
-
There are no rows in this table

Legend
Optimistic - Minimum duration the task will take (days)
Most Likely - Average or most likely duration of task (days)
Pessimistic - Maximum duration task will take (days)
Duration - Expected duration which is an average of Optimistic, Most Likely, and Pessimistic durations
Start Date - Earliest start date of the task given predecessors, working days, and holidays
End Date - Earliest finish date of the task (Start Date + Duration) taking into account working days
ES - Early Start Time; maximum of all Early Finish Times of that task’s predecessors (except for the first task which equals 0)
EF - Early Finish Time; the task’s Early Start Time plus the Duration
LS - Late Start Time; the task’s Late Finish Time minus the Duration
LF - Late Finish Time; minimum of all of Latest Start Times of the task’s successors (except for last task which equals Early Finish Time)
Slack - Latest Finish Time minus Latest Start Time; if Slack is 0 then the task is on the critical path

Gantt/Timeline of Tasks
Start
Excavation
Pour foundation
Framing
Roofing
Plumbing
Electrical
Masonry
Interior
Exterior
Landscape
Feb 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Mar 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Apr 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
May 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Jun 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Jul 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Aug 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Sep 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Oct 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Start
Excavation
BD
Pour foundation
MM
Framing
FM
Roofing
FM
Plumbing
LT
Electrical
BD
Masonry
AC
Interior
MJ
Exterior
LT
Landscape
AD
Month
TodayFit

Advertising and marketing campaign launches.

Advertising and marketing campaigns are notoriously complex because they often juggle many different channels, budgets, and assets at once. Not to mention that deadlines are paramount, especially around the holidays. A firm understanding of the critical path can help ensure everything finishes on time and is ready to launch.
CPM for advertising and marketing campaigns example:
Enter Project Start Date 👉
7/1/2024
Expected Finish Date (calc):
8/21/2024
Duration (calc):
36 days 8 hrs
Add A Task
Clear sample data
View
Task Name
Predecessor(s)
Owner
Status
Optimistic
Most Likely
Pessimistic
Duration
Start Date
End Date
ES
EF
LS
LF
Slack
1
Start
-
7/1/24
7/1/24
-
-
-
-
-
2
Kickoff meeting
Start
BD
Buck Dubois
Complete
3 days
4 days
6 days
4 days 8 hrs
7/1/24
7/8/24
-
4 days 8 hrs
-
-
-
3
Stakeholder alignment
Kickoff meeting
Maria Marquis
In Progress
5 days
10 days
15 days
10 days
7/8/24
7/22/24
4 days 8 hrs
14 days 8 hrs
-
-
-
4
Content development
Kickoff meeting
Stakeholder alignment
Maria Marquis
On Hold
5 days
10 days
15 days
10 days
7/22/24
8/5/24
14 days 8 hrs
24 days 8 hrs
14 days 8 hrs
24 days 8 hrs
-
5
Design development
Stakeholder alignment
Felix Marlin
On Hold
3 days
5 days
7 days
5 days
7/22/24
7/29/24
14 days 8 hrs
19 days 8 hrs
19 days 8 hrs
24 days 8 hrs
5 days
6
Launch planning
Stakeholder alignment
Felix Marlin
Not Started
3 days
5 days
7 days
5 days
7/22/24
7/29/24
14 days 8 hrs
19 days 8 hrs
-
-
7
Review cycle
Content development
Design development
Lola Tseudonym
Not Started
3 days
5 days
9 days
5 days 16 hrs
8/5/24
8/13/24
24 days 8 hrs
30 days
24 days 8 hrs
30 days
-
8
Launch
Review cycle
BD
Buck Dubois
Not Started
3 days
7 days
9 days
6 days 8 hrs
8/12/24
8/21/24
30 days
36 days 8 hrs
30 days
36 days 8 hrs
-
There are no rows in this table

Legend
Optimistic - Minimum duration the task will take (days)
Most Likely - Average or most likely duration of task (days)
Pessimistic - Maximum duration task will take (days)
Duration - Expected duration which is an average of Optimistic, Most Likely, and Pessimistic durations
Start Date - Earliest start date of the task given predecessors, working days, and holidays
End Date - Earliest finish date of the task (Start Date + Duration) taking into account working days
ES - Early Start Time; maximum of all Early Finish Times of that task’s predecessors (except for the first task which equals 0)
EF - Early Finish Time; the task’s Early Start Time plus the Duration
LS - Late Start Time; the task’s Late Finish Time minus the Duration
LF - Late Finish Time; minimum of all of Latest Start Times of the task’s successors (except for last task which equals Early Finish Time)
Slack - Latest Finish Time minus Latest Start Time; if Slack is 0 then the task is on the critical path

Gantt/Timeline of Tasks
Start
Kickoff meeting
Stakeholder alignment
Content development
Design development
Launch planning
Review cycle
Launch
Feb 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Mar 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Apr 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
May 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Jun 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Jul 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Aug 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Sep 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Oct 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Start
Kickoff meeting
BD
Stakeholder alignment
MM
Content development
MM
Design development
FM
Launch planning
FM
Review cycle
LT
Launch
BD
Month
TodayFit

Deep research and design projects.

If you're coordinating research or design projects across many different people, it can be challenging to keep track of what needs to happen by when. A critical path can keep everyone informed of the project's progress and what needs to happen to ensure completion time hits the mark.
CPM for research and design example:
Enter Project Start Date 👉
7/1/2024
Expected Finish Date (calc):
8/19/2024
Duration (calc):
34 days 16 hrs
Add A Task
Clear sample data
View
Task Name
Predecessor(s)
Owner
Status
Optimistic
Most Likely
Pessimistic
Duration
Start Date
End Date
ES
EF
LS
LF
Slack
1
Start
-
7/1/24
7/1/24
-
-
-
-
-
2
Kickoff meeting
Start
BD
Buck Dubois
In Progress
3 days
4 days
6 days
4 days 8 hrs
7/1/24
7/8/24
-
4 days 8 hrs
-
4 days 8 hrs
-
3
Begin customer research
Kickoff meeting
Maria Marquis
On Hold
5 days
10 days
15 days
10 days
7/8/24
7/22/24
4 days 8 hrs
14 days 8 hrs
4 days 8 hrs
14 days 8 hrs
-
4
Test prototype
Kickoff meeting
Felix Marlin
On Hold
3 days
5 days
7 days
5 days
7/8/24
7/15/24
4 days 8 hrs
9 days 8 hrs
8 days 16 hrs
13 days 16 hrs
4 days 8 hrs
5
Vendor conversations
Kickoff meeting
Felix Marlin
Not Started
3 days
5 days
7 days
5 days
7/8/24
7/15/24
4 days 8 hrs
9 days 8 hrs
15 days
20 days
10 days 16 hrs
6
Design product concept
Begin customer research
Lola Tseudonym
Not Started
3 days
5 days
9 days
5 days 16 hrs
7/22/24
7/30/24
14 days 8 hrs
20 days
14 days 8 hrs
20 days
-
7
Develop production tooling
Test prototype
BD
Buck Dubois
Overdue
3 days
7 days
9 days
6 days 8 hrs
7/15/24
7/24/24
9 days 8 hrs
15 days 16 hrs
13 days 16 hrs
20 days
4 days 8 hrs
8
Test production tooling
Develop production tooling
Alan Chowansky
On Hold
5 days
10 days
14 days
9 days 16 hrs
7/23/24
8/6/24
15 days 16 hrs
25 days 8 hrs
20 days
29 days 16 hrs
4 days 8 hrs
9
Begin production
Vendor conversations
Design product concept
Mary Jones
In Progress
6 days
9 days
14 days
9 days 16 hrs
7/29/24
8/12/24
20 days
29 days 16 hrs
20 days
29 days 16 hrs
-
10
Launch
Begin production
Test production tooling
Lola Tseudonym
On Hold
4 days
5 days
6 days
5 days
8/12/24
8/19/24
29 days 16 hrs
34 days 16 hrs
29 days 16 hrs
34 days 16 hrs
-
There are no rows in this table



Gantt/Timeline of Tasks
Start
Kickoff meeting
Begin customer research
Test prototype
Vendor conversations
Design product concept
Develop production tooling
Test production tooling
Begin production
Launch
Feb 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Mar 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Apr 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
May 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Jun 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Jul 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Aug 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Sep 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Oct 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Start
Kickoff meeting
BD
Begin customer research
MM
Test prototype
FM
Vendor conversations
FM
Design product concept
LT
Develop production tooling
BD
Test production tooling
AC
Begin production
MJ
Launch
LT
Month
TodayFit

Critical path method (CPM) FAQs

What are the advantages of CPM?

For project managers, the main advantages of the critical path method (CPM) are:
The ability to prioritize the most critical tasks over others.
A precise, well-reasoned project duration estimate.
Risk management and streamlined workflows that come with clear priorities.

What are the disadvantages of CPM?

The critical path method (CPM) is not well suited for projects that are not well defined. To work correctly, CPM needs clearly defined tasks that are not subject to change as the project progresses.

What is the difference between CPM and PERT?

The main difference between critical path method (CPM) and the Program Evaluation and Review Technique (PERT) is how they treat activity duration estimates. CPM asks for a one-time duration estimate, while PERT asks for three: optimistic (O), pessimistic (P), and likely (M). PERT then calculated task time duration (t) based on these three values using the formula (O + 4M + P)/6 = t.

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.