Skip to main content

What Is the Critical Path?

The critical path is the sequence of dependency-linked tasks with zero float (slack). Float is the amount of time a task can be delayed without pushing back the project end date. Tasks on the critical path have no float: if any of them slips, the project completion date slips by the same amount. Consider a project with two parallel work streams converging at a final milestone: diagram In this example, the path Design > Build > Release takes 15 days, while Design > Documentation > Release takes 8 days. The critical path is Design > Build > Release because it is the longest chain. Documentation has 7 days of float — it could slip by a week without affecting the release date.

How the Gantt Calculates It

Critical path analysis requires dependency links to be defined between tasks. The Gantt evaluates all dependency chains and identifies the longest path from the earliest start to the latest finish across the entire task set. Tasks on this path receive a distinct visual highlight. The calculation is deterministic: given the same dependency structure and task durations, the critical path is always the same. It cannot be manually overridden or customized — it is a mathematical property of the schedule.
Critical path highlighting only works when dependency links are configured via the Dependency Role parameter. Without dependencies, no chain exists to analyze, and no tasks are highlighted.

Enabling Critical Path Highlighting

Critical path highlighting is toggled from the Gantt toolbar using the critical path toggle button. When enabled, tasks on the critical path are visually marked with a distinct color (red by default), making them immediately identifiable against non-critical tasks. The toggle can be activated and deactivated during a session without reloading data. The critical path is recalculated dynamically as you make changes — if you drag a task and the critical path shifts, the highlighting updates immediately.

How Critical Path Selection Works

A common question is how the Gantt selects which tasks are on the critical path when multiple paths have similar lengths. The critical path always displays on the final scheduled task that determines the project end date, and traces backward through the dependency structure. The selection is based purely on the dependency graph and task durations:
FactorEffect on critical path
Longer task durationMore likely to be on the critical path
More sequential dependenciesLonger chain, more likely critical
Parallel pathsOnly the longest parallel branch is critical
Finish-to-Finish dependenciesBoth tasks may be critical if the FF link is the binding constraint
Critical path highlighting works independently of auto-scheduling. You can highlight the critical path in manual scheduling mode to identify which tasks need the most attention, even without automatic date propagation.

Practical Implications

Understanding the critical path helps with several project management decisions:
  • Risk management — Tasks on the critical path carry the highest schedule risk. Assign your most reliable resources to them and monitor them closely.
  • Resource allocation — When resources are limited, prioritize critical path tasks over tasks with float.
  • Schedule compression — To shorten the project duration, you must shorten the critical path. Adding resources to non-critical tasks does not help.
  • What-if analysis — Toggle critical path highlighting on, then experiment with moving tasks or changing durations to see how the critical path shifts.

Interaction with Other Features

Critical path analysis interacts with several other Gantt capabilities:
  • Working calendars — When calendars are enabled, task durations account for non-working days, which may change which path is longest
  • Baselines — You can compare the current critical path against a baseline to see how the critical path has shifted over time
  • Presentation modes — Tasks with the Derived Schedule presentation mode derive their dates from children. Their position on the critical path depends on their children’s dates
Support TicketsSource Code
  • prod-gantt-src/com.nextedy.polarion.gantt/src/com/nextedy/polarion/gantt/widget/GanttWidgetConfig.java
  • prod-gantt-src/com.nextedy.polarion.gantt.client/src/js/commands.js
  • prod-gantt-src/com.nextedy.polarion.gantt.client/src/js/main.js
  • prod-gantt-src/com.nextedy.polarion.gantt.client/src/js/gantt.js
  • prod-gantt-src/com.nextedy.polarion.gantt.client/src/js/config.js