Critical Path Method Calculator
Calculate a dependency schedule, slack and critical paths locally.
A QUICK WALKTHROUGH
How to use this tool
- Enter tasks and calculate.
- Finish-to-start links with zero lag, starting at time 0, in one common time unit. No calendars, resources, date constraints or progress. Zero duration is a milestone.
Method and assumptions
The forward pass sets ES to the greatest predecessor EF and EF = ES + duration. The backward pass sets LF to the least successor LS (or project finish) and LS = LF − duration. Slack = LS − ES. Critical paths connect zero-slack tasks whose times meet.
Format and limits
Use 1–200 tasks and at most 50,000 characters. IDs are case-sensitive: start with an ASCII letter, followed by letters, digits, _ or - (maximum 32 characters). Duration must be finite, 0–1,000,000,000; separate predecessors with commas. No header. Each dependency must name an existing different task, with no duplicates; cycles cannot be scheduled. Up to 20 critical paths are displayed; the exact count includes all tied paths. Floating-point comparisons use a small scale-dependent tolerance, displayed with the result. Times show up to 6 decimal places.
GOOD TO KNOW
Common questions
How is the schedule calculated?
The forward pass sets ES to the greatest predecessor EF and EF = ES + duration. The backward pass sets LF to the least successor LS (or project finish) and LS = LF − duration. Slack = LS − ES. Critical paths connect zero-slack tasks whose times meet. Input stays in the browser; nothing is uploaded or stored.