What Is the Critical Path Method?
The Critical Path Method (CPM) is a scheduling technique that identifies the longest chain of dependent activities in a project. That chain — the critical path — determines the shortest possible project duration. Every day saved on a critical-path task shortens the project. Every day saved on a non-critical task changes nothing.
CPM was developed in 1957-58 by DuPont and Remington Rand for managing plant maintenance shutdowns. It has since become the foundation of modern project scheduling, used in construction, manufacturing changeovers, new product introductions, and facility expansions.
The Fundamental Insight
If you have 100 tasks and 15 of them form the critical path, accelerating any of the other 85 tasks will not shorten your project by a single day. All project compression effort must focus on the critical path. This is why identifying it correctly matters so much.
Key Terminology
| Term | Definition | Why It Matters |
|---|---|---|
| Activity | A task that consumes time and resources | The building blocks of your schedule |
| Predecessor | An activity that must finish before another can start | Defines the dependency logic |
| Network Diagram | A graph showing all activities and their dependencies | The visual model CPM operates on. This is a DAG. |
| Early Start (ES) | Earliest an activity can begin (from forward pass) | Tells you the soonest you can start a task |
| Early Finish (EF) | ES + Duration | Earliest an activity can complete |
| Late Start (LS) | Latest an activity can begin without delaying the project (from backward pass) | Tells you the deadline for starting |
| Late Finish (LF) | Latest an activity can finish without delaying the project | Your hard deadline for the task |
| Total Float (Slack) | LS – ES (or LF – EF) | How much a task can slip without delaying the project. Zero float = critical path. |
| Free Float | Time a task can slip without delaying its immediate successor | More granular flexibility measure |
| Critical Path | The longest path through the network — all activities with zero total float | Determines the minimum project duration |
How CPM Works: The 5 Steps
Worked Example
Consider a small manufacturing changeover project:
| Task | Duration (days) | Predecessors |
|---|---|---|
| A: Plan changeover | 2 | – |
| B: Order parts | 5 | A |
| C: Train operators | 3 | A |
| D: Install equipment | 4 | B |
| E: Update SOPs | 2 | C |
| F: Trial run | 1 | D, E |
Path 2: A(2) → C(3) → E(2) → F(1) = 8 days (Float = 4 days)
Forward & Backward Pass Detail
| Task | Duration | ES | EF | LS | LF | Float | Critical? |
|---|---|---|---|---|---|---|---|
| A | 2 | 0 | 2 | 0 | 2 | 0 | Yes |
| B | 5 | 2 | 7 | 2 | 7 | 0 | Yes |
| C | 3 | 2 | 5 | 6 | 9 | 4 | No |
| D | 4 | 7 | 11 | 7 | 11 | 0 | Yes |
| E | 2 | 5 | 7 | 9 | 11 | 4 | No |
| F | 1 | 11 | 12 | 11 | 12 | 0 | Yes |
Dependency Types
CPM supports four relationship types between activities:
| Type | Notation | Meaning | Example |
|---|---|---|---|
| Finish-to-Start (FS) | Most common | B cannot start until A finishes | Install equipment → then trial run |
| Start-to-Start (SS) | Parallel start | B cannot start until A starts | Excavate → Lay pipe (starts 2 days after) |
| Finish-to-Finish (FF) | Parallel finish | B cannot finish until A finishes | Testing → Documentation (must finish together) |
| Start-to-Finish (SF) | Rare | B cannot finish until A starts | New system start → Old system shutdown |
Leads and Lags
A lead accelerates a successor (e.g., FS – 2 days: start successor 2 days before predecessor finishes). A lag adds delay (e.g., FS + 3 days: wait 3 days after predecessor finishes). Use lags for curing time, drying time, or mandatory waiting periods. Avoid excessive leads — they often mask poor dependency logic.
Every duration and every date here is the page's own. A 2, B 5, C 3, D 4, E 2, F 1 days with the predecessors as listed come from the Worked Example table, and each bar is drawn at the early start and early finish printed in the Forward & Backward Pass Detail table: A 0–2, B 2–7, C 2–5, D 7–11, E 5–7, F 11–12. Path 1, A→B→D→F, is 12 days and critical; path 2, A→C→E→F, is 8 days with 4 days of float — the diagram box beneath the table, and the stat grid's "0 — Float on Critical Path". On the early schedule path 2 has finished its own work by day 7 and cannot start F until day 11, so the hatched stretch is 11 − 7 = 4 days wide; that is the same 4 the table gives as C's float, LS − ES = 6 − 2, and as E's, 9 − 5. It falls under D because D is the only work path 1 still has in that window. The right-hand panel adds one piece of arithmetic and nothing else: project duration = the longer of the two paths, recomputed after each day of compression, which is the page's own step 3 — "you must recalculate the network after each compression step" — carried out. B and D hold 9 days between them, so removing k of them gives max(12 − k, 8): 12, 11, 10, 9, 8, 8, 8 for k = 0 to 6. C and E hold 5, so removing k of those gives max(12, 8 − k): 12, 12, 12, 12, 12, 12 — 12 days at every step, including k = 5, where C and E have gone from the project entirely. The two paths become equal at k = 4, because 12 − 4 = 8, which is why the payoff stops there and why the bracket under the first 4 days is drawn at exactly the width of the float gap opposite — both panels use 28.5 pixels per day. The chart runs to k = 6 only to make the flat tail visible. No crash costs or crash limits are used, because the page gives none.
Crashing the Schedule
When the critical path is too long, you "crash" it by adding resources to shorten critical activities:
CPM in Manufacturing Operations
| Application | How CPM Helps |
|---|---|
| Plant shutdowns / turnarounds | Identify the sequence that determines total downtime. Crash only critical-path work to minimize lost production. |
| New line installation | Coordinate equipment delivery, construction, electrical, commissioning. Find the path that governs go-live date. |
| New product introduction (NPI) | Map design → tooling → validation → ramp. Identify which engineering delays actually push out launch. |
| Large changeovers | When changeovers involve multiple teams and steps, CPM finds the fastest parallel sequence. |
| Facility expansion | Construction, permitting, equipment procurement — each has dependencies. CPM identifies the binding constraint on opening day. |
CPM vs. PERT vs. Critical Chain
| Feature | CPM | PERT | Critical Chain |
|---|---|---|---|
| Duration estimates | Single (deterministic) | Three-point (probabilistic) | Aggressive + buffers |
| Focus | Task dependencies | Uncertainty in estimates | Resource constraints + buffers |
| Float/buffer | Float per activity | Probability distribution | Pooled project buffer |
| Resource constraints | Not built in | Not built in | Core consideration |
| Best for | Well-understood, repeatable projects | R&D, novel projects with high uncertainty | Multi-project environments with shared resources |
✅ CPM Best Practices
- Use realistic durations based on historical data, not optimistic wishes
- Update the network as actual durations come in — the critical path can shift
- Focus management attention on zero-float tasks
- Use a proper WBS to ensure no activities are missed
- Revisit dependencies regularly — some assumed sequences can be parallelized
❌ Common Mistakes
- Trying to accelerate non-critical tasks — it changes nothing
- Using optimistic durations that make the plan look good but fail in execution
- Ignoring resource constraints — CPM assumes unlimited resources
- Setting the schedule once and never updating it
- Confusing activity duration with effort (person-days ≠ calendar days)
CPM's Blind Spot: Resources
CPM calculates the critical path based purely on task dependencies and durations. It does not account for resource availability. If two critical-path tasks need the same electrician, one must wait — but CPM will not tell you that. For resource-constrained scheduling, see Critical Chain and Resource Leveling.
🎯 Key Takeaway
The Critical Path Method gives you the single most important insight in project scheduling: which tasks actually determine your project's duration. Focus your management attention, your resources, and your crash budget on critical-path activities. Everything else has float — and float is freedom. Master the forward and backward pass, track float religiously, and remember: when the critical path shifts (and it will), shift your attention with it.
Interactive Demo
Build a project network and identify the critical path. Adjust task durations to see how the critical path shifts.
Stop reading, start modeling
Model your process flow, run simulations, optimize staffing with TOC math, and test your knowledge with 107 interactive checks — all in one platform.