The critical path is the longest sequence of dependent activities from the start to the end of a project. Its length is the shortest possible project duration. Any delay to an activity on the critical path delays the whole project by the same amount; activities off the critical path have float (also called slack) — time they can slip without moving the end date.
What you need
- A list of activities (from your WBS).
- A duration estimate for each.
- The dependencies between them (most often finish-to-start).
Step 1: Draw the network
Use the activity-on-node method: each activity is a box, arrows show dependencies. Our example:
| ID | Activity | Duration | Predecessors |
|---|---|---|---|
| A | Requirements | 5 | — |
| B | Architecture | 4 | A |
| C | UI design | 6 | A |
| D | Backend build | 10 | B |
| E | Frontend build | 8 | C |
| F | Integration | 3 | D, E |
| G | Testing | 5 | F |
| H | Training material | 4 | C |
| I | Launch | 1 | G, H |
Step 2: Forward pass (earliest dates)
For each activity, Early Start (ES) = the largest Early Finish of its predecessors (0 for the first), and Early Finish (EF) = ES + duration.
- A: ES 0, EF 5 · B: 5–9 · C: 5–11 · D: 9–19 · E: 11–19 · H: 11–15
- F: ES = max(19, 19) = 19, EF 22 · G: 22–27 · I: ES = max(27, 15) = 27, EF 28
Project duration = 28 days.
Step 3: Backward pass (latest dates)
Starting from the end, Late Finish (LF) = the smallest Late Start of successors (project end for the last), and Late Start (LS) = LF − duration.
- I: 27–28 · G: 22–27 · F: 19–22 · D: 9–19 · E: 11–19 · B: 5–9
- H: LF = 27, LS = 23 · C: LF = min(LS of E = 11, LS of H = 23) = 11, LS 5 · A: 0–5
Step 4: Calculate float
Total float = LS − ES. Here every activity has zero float except H (23 − 11 = 12 days). That means there are two critical paths of 28 days: A→B→D→F→G→I and A→C→E→F→G→I. Two parallel critical paths are a warning sign — the project has no schedule buffer on either branch.
Check this example yourself in the critical path calculator (it loads as the default example).
Compressing the schedule
- Crashing: add resources to critical activities. Compare cost per day saved and crash the cheapest first.
- Fast-tracking: overlap activities that were sequential, e.g. start frontend build before UI design is fully signed off. Increases risk of rework.
- Reduce scope on the critical path, or move work off it.
After every change, recalculate: shortening one path often makes another one critical.
CPM vs PERT vs critical chain
CPM uses single-point duration estimates. PERT uses three-point estimates to model uncertainty. Critical chain project management adds resource constraints and pools contingency into shared buffers at the end of the chain rather than padding each task.
Put this into practice
Use our free tools to apply what you just read — or get a free consultation if you want an expert to look at your project.