Why resource levelling matters

A critical path calculated by Primavera P6 tells you when activities can start and finish according to logic and durations. What it does not tell you, on its own, is whether you actually have the people, plant, and materials to do everything the network says can happen at the same time. Resource levelling closes that gap. It is the process of adjusting a schedule so that demand for each resource never exceeds its availability, producing dates that can genuinely be delivered rather than dates that merely satisfy the logic.

The distinction is fundamental to credible project controls. An unlevelled schedule frequently assumes that a single crew, crane, or specialist is in three places at once. Those hidden over-allocations are among the most common reasons a programme that looked achievable at tender collapses on site. Levelling confronts the constraint directly: where resource demand peaks above capacity, the leveler delays competing activities until capacity frees up, resolving each conflict according to a defined set of priorities while respecting the logic network. The output is a resource-feasible programme, and often a more honest completion date.

How the P6 leveler works

Primavera P6 levels by examining resource demand period by period across the schedule. When it finds that the total requirement for a resource on a given day exceeds the availability defined in that resource's limits, it has an over-allocation to resolve. Rather than ignore the conflict, as a straightforward critical path calculation would, the leveler delays one or more of the competing activities until the resource becomes available again. Activities with float absorb the delay first; once float is exhausted, further delay extends the project.

The critical detail is that the leveler does not choose between competing activities arbitrarily. When two activities from different logic chains are both ready to proceed and both need the same constrained resource, P6 decides which one goes first using the leveling priorities you have specified. It sorts numeric priority values first, then alphabetic characters, and finally blank values. Understanding this ordering is what separates a planner who runs the leveler and hopes for the best from one who directs it to produce a defensible, intentional result.

Because levelling changes dates, it must always follow a clean schedule calculation. Run F9 to schedule the network first, confirm the critical path is continuous and the logic is sound, and only then level. Levelling a flawed network simply spreads the flaws across a resource-constrained timeline.

Activity and project leveling priorities

Primavera P6 provides a built-in field called Activity Leveling Priority, and every activity carries the default value of 3 Normal until you change it. The field runs from 1 Top to 5 Lowest, and activities set to 1 Top are assigned resources ahead of lower-priority work when a conflict arises. Setting these priorities deliberately is the single most effective lever a planner has over the outcome. Critical procurement, safety-critical operations, and activities feeding external interfaces are natural candidates for a higher priority so that the leveler protects them when resources are scarce.

Where several projects share a resource pool, P6 Professional adds a Project Leveling Priority field in the Projects view. This assigns a priority number to an entire project relative to the others being levelled together, with lower numbers indicating higher priority. On a multi-project programme where one scheme must take precedence over another for a shared tunnelling crew or a specialist commissioning team, the project priority ensures the leveler favours the right scheme's activities across the board.

The five standard values are not a hard limit. If your organisation's prioritisation standard needs finer gradation than 1 Top through 5 Lowest allows, you can build an activity code with as many values as you require and nominate that code as a leveling priority. This is common on large infrastructure programmes where prioritisation follows a formal governance hierarchy that the default field cannot capture. Adding the code to the Leveling Priorities list in the Level Resources dialog then gives the leveler a richer basis for its decisions.

The key options in the Level Resources dialog

The leveler is reached through Tools then Level Resources, or by pressing Shift and F9. A handful of settings in that dialog govern almost everything about the result, and each deserves a deliberate choice rather than acceptance of the default.

Level resources only within activity total float. With this option enabled, the leveler is prevented from delaying any activity beyond its available float, which safeguards the project finish date. The trade-off is that genuine over-allocations may remain unresolved because there is not enough float to absorb them. This setting effectively produces a smoothed programme rather than a fully levelled one, and it is the right choice when the end date is contractually fixed and you need to understand where residual peaks sit.

Level all resources, or a selected subset. When Level all resources is ticked, every resource is considered. Unticking it opens the Select Resources form so you can level only the genuinely constrained resources, such as a single crane or a scarce specialist, while leaving abundant resources untouched. Targeted levelling produces cleaner, more explainable results than levelling everything at once, particularly on large schedules.

Preserve scheduled early and late dates. Unchecking this enables late levelling, which delays activities from their late dates towards resource availability and reveals the latest each activity could start and finish without delaying the project. Comparing an early-levelled and a late-levelled pass shows the true window within which resource-constrained work can move.

Recalculate assignment costs after leveling. Because levelling shifts activities into different periods, cost calculated against time-phased rates can change. Enabling this option updates assignment costs to reflect the new dates, keeping the cost forecast aligned with the levelled programme.

Log to file. The leveling log records every change the leveler makes. On any schedule of real size this is indispensable: it is the audit trail that lets you explain precisely why an activity moved, which is essential when a levelled programme is submitted for acceptance or challenged during a dispute.

Preparing a schedule before you level

Levelling amplifies whatever is already in the schedule, so the quality of the underlying network determines the quality of the result. Before pressing Shift and F9, the logic must be complete, with every activity properly tied by predecessors and successors and no open ends that would let the leveler make unrealistic assumptions. Constraints should be reviewed and minimised, because hard constraints such as Mandatory Start override both logic and levelling and can mask over-allocations rather than resolve them.

Resource definitions matter just as much. Each resource needs realistic maximum units per time and a limit profile that reflects genuine availability, including mobilisation ramp-up, holidays, and demobilisation. Resource and activity calendars must be consistent, since the leveler works within the working time each calendar defines. Assignments should reflect the real quantity of resource each activity consumes; a levelling run built on nominal or placeholder units produces a nominal answer. A quick pass through a Schedule Health Check and the DCMA 14-point assessment before levelling catches the open ends, constraint abuse, and logic gaps that most often distort the outcome.

Interpreting and validating the results

Levelling is never a one-click operation. Once the leveler has run, compare the levelled dates against the pre-level schedule to see exactly what moved and by how much. The most important question is what happened to the project finish date. If it has extended, the schedule was over-allocated and the new date is the honest one; the task then becomes deciding whether to accept it, add resources, or re-sequence work to recover time.

Resource histograms and the resource usage profile are the clearest way to confirm the leveler has done its job. A well-levelled resource shows demand sitting at or below its limit with the sharp peaks flattened, rather than spikes that breach availability. Where peaks remain after levelling within float, that is a signal the constraint genuinely cannot be absorbed without either more resource or a later finish. The leveling log explains the individual moves, and reading it alongside the histogram turns a set of shifted bars into a story you can defend.

It is also worth checking how levelling has affected the critical path. Resource-constrained schedules often develop a resource critical path, sometimes called a critical chain, where the driver of the end date is the availability of a resource rather than pure logic. Recognising when the programme is resource-driven rather than logic-driven changes how you manage it, because accelerating a logic-critical activity achieves nothing if the true constraint is a crew that is already fully committed.

Common mistakes to avoid

The most frequent error is levelling a schedule whose logic or resource data is not ready, then treating the extended finish date as authoritative. Garbage in produces a resource-constrained version of garbage out. Validate first, always.

A second common mistake is leaving every activity at the default priority of 3 Normal and expecting the leveler to make sensible business decisions on the planner's behalf. Without deliberate priorities, P6 resolves ties mechanically, and the result rarely matches how the project team would choose to sequence scarce resources. Setting priorities is where planning judgement enters the levelled programme.

Third, planners often level every resource at once when only a few are genuinely constrained. This produces a tangle of movements that is hard to explain and easy to distrust. Targeting the real constraints keeps the result transparent. Finally, running the leveler without the log enabled throws away the audit trail; when a client or adjudicator asks why an activity shifted, that log is the difference between a clear answer and a shrug.

When to bring in a specialist

Resource levelling on a small, single-project schedule is well within the reach of any competent planner. The complexity rises sharply with scale. Multi-project programmes sharing constrained pools, schedules running into many thousands of activities, and situations where the levelled programme must survive contractual or adjudication scrutiny all reward experience that goes beyond running the dialog. Calibrating resource limits, choosing between smoothing and full levelling, and explaining a resource critical path to a commercial audience are judgement calls, not button presses.

Planned Limited works with energy, infrastructure, highways, and construction clients to build resource-loaded Primavera P6 schedules that stand up to that scrutiny, and to level them in a way that produces credible, defensible dates. If you would like to know whether your current programme is genuinely resource-feasible, our free P6 Schedule Health Check is a fast way to surface the open ends, constraint issues, and hidden over-allocations that undermine most schedules before levelling even begins. For hands-on support, our resource management service can take the work from raw network to levelled, board-ready programme.

Frequently Asked Questions

What is resource levelling in Primavera P6?

Resource levelling in Primavera P6 is the process of adjusting a schedule so that the demand for each resource never exceeds its availability. When the leveler detects that a resource is over-allocated on a given day, it delays one or more of the competing activities until capacity becomes available, resolving the conflict according to a defined set of priorities while respecting the logic network. The result is a resource-feasible schedule whose dates can actually be achieved with the labour, plant, and materials on hand.

How do you level resources in Primavera P6?

Open the Level Resources dialog from Tools then Level Resources, or press Shift plus F9. Confirm the leveling priorities, decide whether to level all resources or a selected subset, and choose whether to level only within total float so that project finish dates are protected. Enable the log file so every change is recorded, then run the leveler. Always run a normal schedule calculation (F9) first, and review the results against the pre-level dates before accepting them.

What is the Activity Leveling Priority field in P6?

Activity Leveling Priority is a built-in field in Primavera P6 that tells the leveler which activity should receive scarce resources first when two or more activities compete. It ranges from 1 Top to 5 Lowest, with every activity defaulting to 3 Normal. Activities set to 1 Top are assigned resources ahead of lower-priority work. If the standard five values are not enough, you can create an activity code and use it as a custom leveling priority.

What is the difference between resource levelling and resource smoothing?

Resource levelling resolves over-allocations even if that means extending the project finish date, because respecting the resource limit takes priority. Resource smoothing adjusts activities only within their available float, so peaks are reduced without pushing out the completion date. In Primavera P6, choosing to level only within total float effectively produces a smoothed result, whereas allowing the leveler to extend beyond float delivers full levelling.

About Planned Limited

Planned Limited specialises in project planning and scheduling for complex programmes across construction, infrastructure, energy, technology, and public sector. Our team combines decades of real-world scheduling experience with expert knowledge of industry-standard tools and best practices. We work as collaborative partners, delivering not just better schedules but improved scheduling discipline within organisations.

Meet Our Team