What negative total float actually means
Total float is the amount of time an activity can slip without delaying the project finish (or a deadline constraint). When float goes negative, Primavera P6 is telling you the opposite: as the logic and constraints are currently built, the activity is already behind the date it must hit to protect the deadline. A total float of -18 means you are 18 days short.
Negative float is not automatically wrong — sometimes it is a true, honest signal that you are late. The problem is that it is very often an artefact of a constraint or a logic error, and until you rule those out you can't trust it.
The four causes, in order of likelihood
1. A hard constraint fighting the logic
By far the most common cause. A Must Finish By or Finish On or Before constraint sets a deadline earlier than the logic can deliver, so P6 back-propagates negative float up the driving chain. Check the affected activities and their predecessors for constraints first.
2. Out-of-sequence progress
When work is reported on an activity before its predecessor finished, the retained-logic calculation can throw negative float. Look for activities with actual starts that violate their relationships.
3. Deadline (project Must Finish By) date passed
If the project-level Must Finish By date is earlier than the calculated finish, every activity on the critical path shows negative float. This is the honest kind — you are genuinely forecasting late.
4. Broken or missing logic
Open ends and dangling activities can interact with constraints to produce misleading float values.
Step-by-step: diagnose and fix
- Isolate it. Add a filter for
Total Float < 0and sort ascending, so the most negative (the driving activity) is at the top. - Trace the driving chain. From the most negative activity, walk the predecessor logic backwards (Ctrl-click Goto Predecessor) to find where the negative float originates.
- Check for constraints on that chain. Add the Primary/Secondary Constraint columns. Remove or relax any constraint that is not contractually required.
- Check the data date and out-of-sequence progress. Re-schedule (F9) with Retained Logic and review the scheduling log for out-of-sequence relationships.
- Re-run F9 and re-measure. If float returns to positive, the constraint or logic was the culprit. If it stays negative after constraints are clean, the delay is real — now it is a recovery / acceleration problem, not a schedule-hygiene one.
Doing this across many files
Tracing float by hand is fine for one schedule. Across a portfolio of contractor submittals it is slow and inconsistent. Baseline Schedulytics reads each .xer, lists every negative-float activity with its driving chain and any offending constraints, and scores the schedule against DCMA criteria — so you can separate genuine delay from constraint artefacts in seconds. See the full DCMA 14-point checklist for the related checks.
Find float leaks automatically
Baseline Schedulytics flags negative-float chains, hard constraints and out-of-sequence logic in a single audit report — offline, straight from your .xer file.
See Baseline Schedulytics →