Critical Path Calculator

Paste tasks and predecessors; get the critical path, total float and the real finish date.

Tasks

#IDTaskDurationPredecessors
1
2
3
4
5
6
7

Project duration

36

working days

Critical tasks

6

of 7 with zero float

Most float

4

days of slack on one task

Schedule

Solid bar = the task. Hatched extension = total float before it delays the project.

day 1102030RequirementsSystem designDatabase buildUI buildIntegrationUATGo livered = critical · hatched = float · working days

Forward and backward pass

TaskDurESEFLSLFTotal floatFree floatCritical
Requirements5151500Critical
System design861361300Critical
Database build101423142300Critical
UI build61419182344—
Integration42427242700Critical
UAT73036303600Critical
Go liveMilestone03736373600Critical

Day numbers are 1-based: a task with an early start of 1 starts on the first working day of the project.

How it works

  1. 1Enter your tasks with a duration in working days, or paste a list straight out of a spreadsheet.
  2. 2Reference predecessors by row number, or give tasks your own IDs and use those. Link types and lags work too — 3SS+2d means "start 2 days after task 3 starts".
  3. 3A forward pass gives each task its earliest possible start and finish; a backward pass from the project end gives the latest it can run without pushing the finish date.
  4. 4The difference is total float. Anything with zero float is on the critical path, and delaying it delays the whole project.

Common questions

What is the difference between total float and free float?
Total float is how long a task can slip before the project finish moves. Free float is how long it can slip before it delays the very next task. Free float is always the smaller of the two, and it is the one that matters when you are deciding what can wait until next week.
Which link types are supported?
All four: finish-to-start, start-to-start, finish-to-finish and start-to-finish, each with a lag or a lead. Write them the way Microsoft Project does — 2, 2FS, 2FS+3d, 4SS-1d.
Why is every task critical?
Usually because no predecessors have been entered, so every task starts on day one and nothing constrains anything else. Add the links and the picture changes.
What happens if my dependencies form a loop?
The calculator stops and names the tasks in the loop instead of guessing. A circular dependency has no valid schedule — it has to be broken in the plan itself.
Are the results in calendar days or working days?
Working days, numbered from day one of the project. There are no calendar dates here, so weekends and holidays never enter into it — use the Working-Days Calculator to convert a duration into real dates.
Does a zero-duration task work?
Yes. A task with duration zero is treated as a milestone and drawn as a diamond.

Already have the plan in a file?

Rather than retyping tasks, open the schedule directly. The Project File Viewer reads CSV, Excel, MS Project XML and Primavera XER, and the Schedule Health Check tells you whether the network is sound enough for the critical path to be trusted.

Open a schedule file

Related tools