What the critical path is
The critical path is the longest chain of activities in a project, measured in time. Because every other chain of activities fits inside it, its duration sets the completion date of the project: you can't finish before the final activity on that path is complete.
Its key property is zero float. An activity has float when it can start later (or run longer) without pushing the finish date; the activities on the critical path have no such margin. That's why they're the ones to watch closely: a day's delay in one of them is a day's delay in delivery, whereas a delay in an activity with float can be absorbed.
Background concepts: activities, dependencies and float
Before you calculate the critical path you need three things well defined. The CPM method works with this data and makes nothing up: if the dependencies or the durations are wrong, the critical path will be wrong too.
- Activity: each task in the schedule with an estimated duration (for example, "pour slab" = 5 days).
- Dependency: the precedence relationship between activities. The most common is finish-to-start: an activity can't begin until the previous one finishes (no formwork until the rebar is tied).
- Early start and early finish (ES / EF): the soonest an activity can start and finish.
- Late start and late finish (LS / LF): the latest it can start and finish without delaying the project.
- Float: an activity's margin, LS − ES (equal to LF − EF). If it's 0, the activity is critical.
How to calculate the critical path step by step (CPM method)
The CPM method is solved in two passes over the activity network: first forward to get the early dates, then backward for the late ones. The difference between the two gives the float.
- 1List the activities and their dependencies
Write down each activity, its duration and which activity or activities it depends on. With that you draw the network: the nodes are activities and the arrows are the precedences.
- 2Forward pass (early starts and finishes)
Walk the network from start to finish. The first activity begins at 0. Each activity's early start (ES) is the greatest EF of the activities that precede it; its early finish (EF) is ES + duration. The greatest EF of all is the project duration.
- 3Backward pass (late starts and finishes)
Walk the network from finish to start. The late finish (LF) of the last activities is the total project duration. Each activity's LF is the smallest LS of the activities that depend on it; its late start (LS) is LF − duration.
- 4Calculate each activity's float
Subtract LS − ES (or LF − EF) for each activity. Activities with float greater than zero can move; those with 0 float can't.
- 5Identify the critical path
Link the activities with zero float from start to finish: that continuous chain is the critical path. Its duration matches the total project duration.
Example: a solved activity network
Take six activities. A (3 days) and B (2 days) start at the beginning. C (4 days) depends on A. D (5 days) depends on B. E (2 days) depends on C and D. F (3 days) depends on D. The project finishes when E and F are done.
Forward pass (ES / EF, starting at 0): A starts at 0 and finishes at 3; B starts at 0 and finishes at 2; C starts at 3 and finishes at 7; D starts at 2 and finishes at 7; E starts at 7 (the greater of C's finish and D's finish, both 7) and finishes at 9; F starts at 7 and finishes at 10. The largest finish is 10, so the project takes 10 days.
Backward pass (LF / LS, with the project finish = 10): F finishes late at 10 and starts late at 7; E finishes late at 10 and starts late at 8; D takes the smaller late start of E (8) and F (7), so it finishes late at 7 and starts late at 2; C finishes late at 8 (E's late start) and starts late at 4; B finishes late at 2 (D's late start) and starts late at 0; A finishes late at 4 (C's late start) and starts late at 1.
Float (LS − ES): A = 1, B = 0, C = 1, D = 0, E = 1, F = 0. The activities with zero float are B, D and F, and they form a continuous chain. The critical path is B → D → F, with a duration of 2 + 5 + 3 = 10 days, which matches the total duration. Note that E, despite finishing the project, has one day of float: it isn't critical.
What the critical path is for on site
Knowing which is the critical path changes how you manage the project. You concentrate supervision and resources on those activities, because they are the only ones where a delay hits the delivery date. If you need to finish sooner, shortening the project only works if you shorten activities on the critical path (adding a crew to a task with float gets you nowhere).
It also tells you where you have margin: activities with float can be rescheduled to level resources or make way for a front that is critical. The critical path isn't fixed: as the project advances, a delay can turn a chain that used to have float into a critical one, so it's worth recalculating it as the schedule is updated.