Code tool

Critical Path Method Calculator

Calculate a dependency schedule, slack and critical paths locally.

In-browser processingNo account requiredPrivacy details ↗

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.

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.

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.

Input stays in the browser; nothing is uploaded or stored.

Source: ToolFoundry

Enter tasks and calculate.

A QUICK WALKTHROUGH

How to use this tool

  1. Enter tasks and calculate.
  2. 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.