The critical path of a project is the longest chain of dependent tasks between its start and its end. Its length is the minimum duration of the project, and every task on it has zero float: one day lost on any of them is one day lost on the delivery date. This guide gives the definition, the calculation method step by step, a fully computed example, and the mistakes that make a critical path useless.

A BC DE FG H 3 d 5 d 4 d 8 d 3 d 2 d 2 d 4 d float 9 d float 5 d float 5 d Critical path Task with float 22 working days
Task network: the critical path carries no float

Critical path: definition

A project is a network of tasks linked by dependencies: task B cannot start until task A is finished. Several chains run in parallel through that network. The critical path is the chain whose total duration is the longest; it therefore sets the earliest possible finish date. Tasks outside it have float, meaning they can slip by a few days without moving the end of the project. Tasks on it cannot. The Critical Path Method (CPM) was formalised in 1957 by Morgan Walker (DuPont) and James Kelley (Remington Rand) to plan chemical plant shutdowns; PERT appeared at the same time in the US Navy for the Polaris programme. Both rely on the same network of tasks.

What the critical path is used for in project steering

The critical path is not an academic exercise. It answers four questions a project manager asks every week.

  • Which finish date can I commit to? The length of the critical path, no less.
  • Which tasks must I watch first? The critical ones, since any delay on them is passed on in full.
  • Where can I move people without risk? To tasks with float, and only for the duration of that float.
  • How do I finish sooner? By shortening a critical task; shortening any other task changes nothing.

How to find the critical path in 4 steps

CPM needs three inputs: the full list of tasks, the duration of each in working days, and the predecessors of each. Then the calculation is mechanical.

  1. Draw the network. List the tasks, their durations and their predecessors. Check that every task except the first has at least one predecessor and every task except the last has at least one successor.
  2. Forward pass: compute the earliest dates. Earliest start (ES) of a task is the latest earliest finish among its predecessors; earliest finish (EF) is ES plus duration. The EF of the last task is the project duration.
  3. Backward pass: compute the latest dates. Start from the end: the latest finish (LF) of the last task equals its EF. For each task, LF is the earliest latest start among its successors; latest start (LS) is LF minus duration.
  4. Compute the float. Total float equals LS minus ES (or LF minus EF). Tasks with zero total float form the critical path. Then compute free float to know which delays stay local.

Critical path example: an 8-task calculation

Take the roll-out of a piece of equipment: eight tasks, durations in working days, dates counted in days elapsed since the project start (a task that starts at 3 begins at the start of day 4). The table gives the result of the forward and backward passes.

TaskDurationPredecessorsEarliest (start–finish)Latest (start–finish)Total float
A. Scoping3 d0–30–30
B. Design5 dA3–83–80
C. Equipment purchase4 dA3–712–169
D. Development8 dB8–168–160
E. Training material3 dB8–1113–165
F. Installation2 dC, D16–1816–180
G. User training2 dE11–1316–185
H. Testing and go-live4 dF, G18–2218–220

How to read it. Forward pass: F cannot start before both C (finish 7) and D (finish 16) are done, so its earliest start is 16; H waits for F (18) and G (13), so it starts at 18 and finishes at 22. The project lasts 22 working days. Backward pass: H must finish by 22 and start by 18; F and G must therefore finish by 18; B must finish by 8 because D needs to start at 8. The tasks with zero float are A, B, D, F and H: that is the critical path, 3 + 5 + 8 + 2 + 4 = 22 days. Purchasing (C) can slip 9 days, training material (E) and training (G) 5 days, without touching the end date.

Total float and free float

Two floats coexist and are often confused. Total float is the delay a task can absorb without moving the project end date. Free float is the delay it can absorb without moving the earliest start of its immediate successor. Free float is always less than or equal to total float.

Total floatFree float
FormulaLS − ES (or LF − EF)Earliest start of the successor − EF of the task
Question answeredHow late can this task be without delaying the project?How late can this task be without disturbing the next one?
Example, task C9 days9 days (F starts at 16, C finishes at 7)
Example, task E5 days0 days (G starts at 11, exactly when E finishes)
Example, task G5 days5 days (H starts at 18, G finishes at 13)
Who uses itThe project manager, to protect the deadlineThe task owner, to know whether a slip stays local

Task E illustrates the difference: it has 5 days of total float but no free float. If E slips 2 days, G starts 2 days late and its own float shrinks to 3. Nothing has happened to the project yet, but the chain E–G has spent part of a float it shares. Float belongs to the chain, not to a single task.

PERT, CPM and Gantt: what is the difference?

The three are constantly mixed up. They are complementary: PERT and CPM compute, the Gantt chart displays.

CPMPERTGantt chart
NatureCalculation methodCalculation methodGraphical representation
DurationsOne deterministic estimate per taskThree estimates (optimistic, likely, pessimistic), weighted averageWhatever the software computed
OutputCritical path, floats, minimum durationExpected duration and probability of meeting a dateBars on a calendar, links, milestones
OriginDuPont, 1957US Navy, Polaris, 1958Henry Gantt, 1910s
Best forProjects with known durations (construction, deployment)Projects with high uncertainty (R&D)Communicating and tracking any schedule

In practice, modern planning software computes the network CPM-style and shows the result in the Gantt chart, with critical tasks highlighted. You rarely draw a PERT network by hand any more; you do still need to understand what the software calculates.

How the critical path moves

The critical path is not fixed. It changes each time a duration, a dependency or a progress figure changes, and each time you compress the schedule.

  • Crashing: adding resources to a critical task to shorten it, at extra cost. Shortening a non-critical task gains nothing.
  • Fast-tracking: overlapping two tasks that were sequential, for example starting development before the design is fully approved, at the price of rework risk.
  • Shifting: in the example, shortening development (D) from 8 to 3 days brings the project down to 17 days; below that, the chain E–G becomes critical and any further gain on D is wasted.
  • Recalculating: a critical task finishing early hands its float to the rest of the chain, and a non-critical task slipping beyond its float becomes critical. Every actuals update can move the path.

Several critical paths can coexist. In the example, if the equipment purchase (C) takes 13 days instead of 4, the chain A–C–F–H also lasts 22 days: the project now has two critical paths and any day lost on either one delays the delivery. The more parallel chains of similar length a project has, the more fragile it is, because there is less float to absorb shocks. Near-critical paths, with one or two days of float, deserve the same attention as the critical path itself.

Common mistakes

  • Fake dependencies: linking tasks because they are done by the same person or "usually" follow each other. Only a real technical constraint is a dependency; the rest is a resource question.
  • Missing dependencies: a task with no predecessor starts on day 1 in the calculation and looks like it has huge float.
  • Forgetting resources: CPM assumes people are available. A non-critical task that shares a person with a critical one becomes critical the day that person is overloaded.
  • Never recalculating: a critical path computed at kick-off and left as is describes a project that no longer exists after the first slip.
  • Confusing total float and free float, and letting each owner spend the float of the chain.
  • Treating float as a reserve: float consumed early leaves nothing for the end of the project, where problems tend to appear.
  • Durations in calendar days: a network in working days is off from the first public holiday.
  • Ignoring near-critical paths with one or two days of float.

In practice: the weekly critical path routine

A critical path is only useful if you look at it. A five-line routine, run during the weekly team meeting, is enough.

  • Update actual progress and remaining durations on every task in progress, starting with the critical ones.
  • Recalculate and compare the new end date with the committed one.
  • List the critical and near-critical tasks (float of 2 days or less) for the coming two weeks and check each has an owner who is available.
  • Check the float consumed by non-critical chains since last week: a chain that is eating its float is next week’s critical path.
  • Decide: crash, fast-track, cut scope or accept the slip, and record the decision.

The critical path in FoxPlan

FoxPlan, a French PPM software, computes the critical path from the dependencies you draw in the interactive Gantt chart and highlights it directly on the bars. Dependencies carry a lag when a constraint requires it, milestones mark the dates you are committed to, and the path is recalculated with every change: a moved bar, an updated duration, a new link. Because tasks also carry resource allocations, you can set the critical path against the multi-project workload plan and see whether the people on critical tasks actually have the capacity to keep them on time.

See how to do it in the FoxPlan documentation ↗

Frequently asked questions

What is the critical path of a project?

The critical path is the longest chain of dependent tasks between the start and the end of a project. Its length is the minimum project duration, and every task on it has zero float: any delay on one of them delays the whole project by the same amount.

How do you calculate the critical path?

List the tasks with durations and predecessors, then run a forward pass to get the earliest start and finish of each task, and a backward pass from the end date to get the latest start and finish. Total float is latest start minus earliest start; the tasks with zero float form the critical path.

What is the difference between total float and free float?

Total float is the delay a task can absorb without moving the project end date. Free float is the delay it can absorb without delaying the earliest start of its immediate successor. Free float is always less than or equal to total float; a task can have several days of total float and no free float.

What is the difference between PERT and CPM?

Both compute a critical path on the same network of tasks. CPM uses one deterministic duration per task; PERT uses three estimates (optimistic, most likely, pessimistic) and gives an expected duration with a probability. CPM suits projects with known durations, PERT projects with high uncertainty.

Can a project have more than one critical path?

Yes. Whenever two parallel chains have the same total duration, both are critical and a delay on either one delays the project. The more critical or near-critical paths a project has, the less float it has to absorb problems, and the more fragile its end date is.

Why does the critical path change during a project?

Because it depends on durations and progress. A critical task finishing early gives float to its chain; a non-critical task slipping beyond its float becomes critical; a compressed critical task can hand the role to a parallel chain. The critical path must be recalculated after every update.

Go further with FoxPlan