Skip to main content

Search “project management resource leveling” or “resource leveling” online, and you will see it described as a resource optimization technique. And resource optimization, the internet will tell you, is a technique project managers use to arrive at a project schedule model, which is the plan that forms the basis for the actual project schedule.

I just told you three things: what resource leveling is, what resource optimization is, and what a project schedule model is. But what I told you is not nearly enough to give you a functional understanding of project management resource leveling.

In this article, I do my best to move beyond the notional towards a functional discourse on resource leveling in project management. I talk about resource leveling’s characteristics, its benefits, and its shortcomings. I also discuss when to use it and how to use it, and I provide examples as needed.

In this article

What Is Project Management Resource Leveling?

The best way to begin a practical discussion of resource leveling is through an example.

Let’s say you need to bake bread. The following are the “activities” you need to perform to get the expected project outcome—i.e., freshly baked bread.

  • Activate yeast.
  • Combine bread flour with salt.
  • Combine the activated yeast with the flour-salt mixture.
  • Knead.
  • Proof.
  • Knead, divide, and shape into loaves.
  • Proof.
  • Bake.
an eight step process for baking bread with images at each stage - activate yeast, combine bread flour with salt, combine yeast with flour and salt, knead, proof, divide and shape into loaves, proof again, and bake

A simple project example to illustrate resource leveling—baking bread.

You plan to start at 6 am and plan to have fresh bread by 10:15 am.

a gantt chart with each step of the bread making process plotted on it

A gantt chart for our bread-baking project.

While allocating resources to your activities, however, you realize you are out of bread flour, an essential ingredient in making bread. Your supply of bread flour does not match your demand for bread flour!

You need bread flour in Activity 2. But you cannot start Activity 1 (activating yeast) without being immediately ready to move on to Activity 2.

After analyzing your schedule, you decide to postpone your bread-making project to the next day and instead spend today shopping for groceries, including bread flour.

Congratulations! You just performed rudimentary resource leveling.

So, What Is Resource Leveling?

The simple example above illustrates the essence of resource-leveling. At its core, it is a schedule-adjustment approach to fulfilling resource allocation requirements.

In other words, resource leveling is rescheduling activities when their resource requirements are not available.

Therefore, resource leveling is the process of matching resource availability to resource allocation. When resource availability does not match resource demand, a project manager reschedules the task to another time when the resource supply matches the resource demand.

Related Read: Resource Allocation Spreadsheets: Free Template + Easy Example

Technically Speaking, Resource Leveling Is…

According to the Project Management Body of Knowledge Guide, resource leveling is “a technique in which start and finish dates are adjusted based on resource constraints to balance the demand for resources with the available supply.”

The output of the resource leveling process is a resource-leveled schedule or, strictly speaking, a resource-leveled project schedule model.

Resource Leveling As A Resource Optimization Technique

Project management resource-leveling is a resource optimization technique that lets you take advantage of schedule flexibility.

Resource optimization techniques work by balancing resource demand with resource supply. The two popular resource optimization techniques are resource leveling and resource smoothing.

Use resource leveling when you have a flexible schedule. However, you should use resource smoothing when the project’s end-date and critical path are inflexible.

Sign up for our emails and be the first to see helpful how-tos, insider tips and tricks, and a collection of templates and tools.

  • Hidden
  • No spam, just quality content. Your inbox is safe with us. For more details, review our Privacy Policy. We're protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
  • This field is for validation purposes and should be left unchanged.

Resource Leveling And The Schedule

In resource leveling, the answer to resolving competing demands on resources is a change in the project schedule model. Resource leveling gives paramount importance to resource availability and only secondary importance to following the original/baseline schedule.

Resource Leveling And The Critical Path

Resource leveling may lead to a change in a project’s critical path.

To illustrate, below is a schedule created using the critical path method. The project has five activities. The nodes or rectangles in red are critical activities, while those in blue are non-critical activities.

The critical path A-C-E, 26 days long, is in red. Notice that the critical path has a positive float of one.

Critical-path activities usually have a float of zero, but this project has a float of one due to a “No Earlier Than” condition. Activity E cannot start earlier than Day 15, perhaps because necessary equipment is available only by that date.

an example critical path with 5 tasks plotted on it, 3 of which are part of the critical path

An example critical path.

When Resource Leveling Does Not Change The Critical Path

Let’s say that Activity B is waiting for a DevOps engineer who is busy on another software project. Consequently, Activity B gets delayed by two days. Since Activity D is a successor of Activity B, Activity D is also pushed back by two days. See the revised schedule below:

the same critical path as the previous image, but with the non-critical tasks slightly adjusted

A slight change to the schedule did not affect the critical path.

As you can see, the schedule changed. Activity B now starts and ends on the 4th and 8th day, respectively, while Activity D now starts and ends on the 9th and 11th day, respectively.

However, the critical path A-C-E remains unchanged, and the duration of the project remains at 26 days.

When Resource Leveling Changes The Critical Path

Let’s say that the DevOps engineer we’re waiting on for Activity B gets delayed by five more days. The project manager decides to start Activity B seven days from the originally planned start date.

The successor activity, Activity D, is automatically pushed back by another five days. Since Activity E—a critical activity—can start only after Activity D is finished, Activity E also starts two days late.

Note: Activity D had a free float of three days. Thus, the delay pushes Activity E back by only two days.

Resource leveling, therefore, extends the project duration to 28 days.

Let’s assume that the seven-day delay in Activity B means an Activity B engineer assigned to Activity C becomes unavailable. To manage the crisis, the project manager applies more resource-leveling.

Thus, an engineer crucial to Activity D is held back at Activity C to replace the suddenly unavailable Activity B engineer. Consequently, Activity C now has to finish before work on Activity D can commence.

the same critical path as the previous two images, but with the critical path tasks and the non-critical path tasks changed

The above changes required an adjustment to the critical path.

All of these things—project duration is extended by two days, Activity D loses free float, and Activity C becomes a predecessor of Activity D—have changed the critical path. The critical path not only became longer, but it also changed from A-C-E to A-C-D-E.

Resource Allocation According To Priority

If two projects on the same time slot are competing for the same resources, the organization’s resource manager allocates resources according to the competing projects’ order of priority. Thus, the higher-priority project takes the time slot, while the lower-priority project takes a later time slot.

Likewise, if two overlapping activities under one project require the same resources, the project manager allocates the resources according to the competing activities’ order of priority. The higher-priority activity uses the resources first, while the lower-priority activity takes a different schedule.

Related Read: 4 Key Resource Allocation Methods In Project Management

A Resource Leveling Example

Suppose you have a simple project that has three component activities—Activity A, Activity B, and Activity C—with the following dependencies and estimated duration:

  • Activity A, two days, has start for Activity B to start
  • Activity B, one day, has to finish for Activity A to finish
  • Activity C, one day, can start after Activity A and B finish
a resource leveling example with 3 activities and their durations plotted in order

An example of resource leveling with dependencies and estimated duration.

As it is, the project has an estimated duration of three days.

  • Activity A starts on Day 1.
  • Activity B starts halfway through Day 1.
  • Activity B finishes halfway through Day 2.
  • Activity A finishes on Day 2.
  • Activity C commences on Day 3.

Below is a representation of the project on a simple Gantt Chart.

a table of three activities with start dates, end dates, and duration next to a Gantt chart with those same three activities plotted on it

Our example represented on a simple Gantt chart.

That’s a pretty simple project schedule, don’t you agree? If only project schedules are that simple in real life. Complications arise when resource allocation comes in.

Let’s suppose that our hypothetical project requires the following human resources.

a sample table for resource leveling showing team members, which tasks they are assigned to, and the amount of time they need for each task

Some sample team members for our resource leveling example.

For simplicity’s sake, let’s assume that there are no other project management resource constraints aside from the availability of human resources. There are no constraints on equipment, materials, or even time.

Therefore, human resource availability is the only consideration in coming up with a resource-optimized project schedule.

But Roger and Greg are working on another project aside from this one. They are available for only part of a day: Roger for four hours and Greg for three hours.

For clarity, let’s plot the required human resources’ daily availability against the resource allocation for each activity.

a table comparing resource availability and demand on resources for each team member from our example and the previous image

Team member availability vs resource allocation for our resource leveling example.

From the above, you should see glaring project resource constraints. The following are a few of them:

  • Activity A requires 16 hours of Roger’s time. But Roger can work only four hours per day on this project. Moreover, the planned duration of Activity A is just two days.
  • Activity B requires four hours of Roger’s time. But Activity B partly coincides with Activity A.
  • Activity A requires eight hours from Minerva. Activity B requires four hours from her. But Activity B partly coincides with Activity A.

In other words, the project’s daily demand for specific human resources far exceeds the daily availability of those resources.

At this point, therefore, we—the savvy project managers that we are—resolve this imbalance between the demand and supply of resources by performing resource optimization.

Since there is project scheduling flexibility, we use the resource leveling technique. Thus, we adjust our project schedule to accommodate resource availability subject to existing task dependencies.

We also consider resource capacity and utilization. Even if Lorraine can work 12 hours on Activity B, that doesn’t mean we should let her do so. We should not tax a resource’s capacity and overutilize it if we don’t have to.

These considerations lead to the resource leveled schedule shown below.

a schedule for each team member from our example that is divided up by the time they will spend on each task

A resource leveled schedule for our example.

And here is our new Gantt chart.

an updated table of start dates, end dates, and duration for each task in our example, along with an updated gantt chart with the same changes

The updated Gantt chart for our example.

Resource leveling extended our schedule from three to 11 days. We had to redistribute the resources according to resource availability.

Note that we did not violate any task dependencies. Moreover, while A-C remains the critical path (Activity A’s five days plus Activity C’s six days is equal to the project duration of 11 days), the path has become longer.

When To Use Resource Leveling

Use resource leveling when:

  • Required resources have limited availability. A DevOps engineer can work on a software development project for only one week. The project manager adjusts the schedule to accommodate his availability.
  • Required resources have to be shared. A quality assurance officer has to split his time between two production lines. The project manager adjusts the QA monitoring and inspection schedules for the two lines to accommodate the QA officer’s availability.
  • Required resources are available in limited quantities. A construction project requires two cranes but has only one and no way to get an additional crane. Consequently, the project manager reorganizes the project schedule so that the higher-priority task uses the crane first.
  • Required resources are over-allocated. Two overlapping activities need the project’s structural engineer. The project manager reschedules the lower-priority inspection activity so that the structural engineer can perform the higher-priority inspection activity first.
  • Resource usage must be level. An activity has an estimated duration of five days, but its resource allocation says Developer A has to work 16 hours for three days and do no work for two days. The project manager performs resource leveling so that Developer A works eight hours per day for six days, thereby extending the activity duration by one day. Mathematically, the adjustment looks like this:

16 hours/day x 3 days = 48 hours = 8 hours/day x 6 days

equation showing 16 hours per day over three days is the same number of hours as 8 hours per day over 6 days - 48 hours

A resource leveling equation.

To summarize, use resource leveling when dealing with resource constraints, but only if there is schedule flexibility. If you have a time constraint, perhaps you should consider resource smoothing.

What Are The Benefits Of Resource Leveling In Project Management?

Resource leveling, as a resource optimization technique, allows you to create an optimal resource utilization plan. Below are the specific benefits of resource leveling.

Lean Operation

The main benefit of resource leveling is it lets resource managers and project managers fully utilize available resources while managing competing demands on resources. There is no need to hire more people or acquire more equipment if one can adjust the project schedule to accommodate resource availability.

Example: If two activities require Engineer John, the project manager can give these activities different schedules. This way, the two activities will not compete for the same resource (i.e., Engineer John), and the project manager will not need to hire a new engineer or borrow one from another project.

Engineer John, moreover, will be fully utilized. After finishing the first activity, he can immediately move on to the next activity.

Realistic Scheduling

Resource leveling (and resource optimization in general) gives you a systematic way of incorporating project management resource constraints in project schedule planning. The result is a realistic schedule, one with a much higher chance of getting followed than a non-resource-optimized schedule.

If you stubbornly stick to your non-resource-optimized schedule model, you are much more likely to experience setbacks and delays.

Allows For Maximum Resource Optimization

In resource leveling, the availability of resources is the primary consideration. The schedule model is built around resource availability or modified according to resource constraints. Thus, resource leveling allows for maximum optimization of resources.

You might need: 10 Best Resource Planning Software Tools

Higher Chance Of A Successful Outcome

If the necessary resources are available when you need them, chances are that you will deliver expected outcomes. Your project is much more likely to succeed.

Resource leveling gives you a higher chance of success because it allows you to arrange the project schedule according to the availability of project resources.

What Are The Shortcomings Of Resource Leveling?

Resource leveling cannot be used in situations when there is no flexibility in project scheduling. Resource leveling accommodates resource availability conflicts by rescheduling activities and even extending the critical path. You cannot perform resource leveling when you are not allowed to do that.

The fact that resource-leveling changes project schedule models is also its biggest weakness.

In projects where losing time means significant costs or hefty losses, planning the project schedule around resource availability can be costly. In such a scenario, perhaps a better approach would be to bring in new resources to satisfy resource demand instead of waiting around for existing resources to become available.

The Resource Leveling Process

Begin your resource leveling process by dividing your project schedule into manageable time intervals, say one day.

For every time interval in the project schedule, identify the resources (people, materials, equipment) required by the task or tasks scheduled for that day.

  • If the resources are sufficient, the schedule remains unchanged, and you move on to the next time slot—i.e., the next day.
  • If any of the resources required by the task scheduled for the next day are not available, reschedule that task to another day when that unavailable resource is available.

But what if two activities are scheduled for the same day and are competing for the same resources?

Let’s say you are in charge of a tunnel construction project, and you need to pour concrete at two different places on the same day. The two overlapping activities both require skilled labor, concrete mixers, and truck-mounted concrete pumps.

  • If you have sufficient resources to supply the demands of these two overlapping activities, that’s great. Move on to analyze the resource requirements for the next time interval.
  • But if you don’t have enough resources, you will need to prioritize one of the two activities by answering this question: which of the two is more important?

Different project managers will arrive at distinct answers depending on their resource leveling criteria. If you deem activities with negative or zero float as more important or of a higher priority, allocate the scarce resources to the negative- or zero-float task, and relegate the competing task to another time interval, say the next day on your timeline.

The resource leveling process is iterative. Thus, you will continue in like manner, going from one time interval to the next, examining resource requirements for each interval.

When faced with project resource constraints, you will reschedule activities as appropriate until you have optimized resources across the board and have arrived at a resource-leveled project schedule model.

Of course, there will be instances when an activity simply may not be rescheduled even if the required resources are unavailable or another task has priority-use of such required resources.

Whenever this happens, you may have no option but to let competing activities remain as scheduled, note the resource insufficiency, and solve the resource constraint some other way.

a flowchart showing the process for resource leveling - deciding whether there are sufficient resources, whether there is competition for resources, and how to proceed

A flowchart to help with decision-making when it comes to resource leveling.

Tools And Techniques For Resource Leveling

You can do resource leveling manually or automatically.

Manual resource leveling is a great option for small projects with a manageable scope. It can be a tedious job, going through your schedule and analyzing your daily resource requirements, and then rescheduling activities as necessary.

However, a manual approach is more likely to lead to optimal results: a resource-optimized schedule with the shortest possible project duration.

Unfortunately, manual resource leveling is not very efficient in complex projects. In this case, automatic resource leveling or software-assisted resource leveling is the better option.

  • Project management software with automatic resource leveling has a resource leveling algorithm that automatically resolves scheduling conflicts caused by the over-allocation of resources. They allow you to designate the ranking factors or the criteria for scheduling and ranking activities whenever resource availability conflicts arise.
  • Resource management software will assist with resource planning. It will give you an overall view of your resources and their allocations in your projects and organization.
  • Resource scheduling software should help you efficiently schedule resources, especially with tools like the resource histogram and timeline that let you visualize resource availability and allocations throughout your project schedule.
  • And project scheduling software will guide you in creating a baseline schedule that you can optimize through resource leveling.

Even if you are a proponent of manual resource leveling, I’m sure you will agree that project and resource management is a lot easier with the help of project management software.

If you prefer manual resource leveling, you can still run your project through a project management software’s resource leveling algorithm. Then you can analyze the resulting schedule and tweak it to come up with a more optimal solution.

Related Read: Why Use Project Management Software?

Need expert help selecting the right tool?

We’ve joined up with to give all our readers (yes, you!) access to Crozdesk’s software advisors. Just use the form below to share your needs, and they will contact you at no cost or commitment. You will then be matched and connected to a shortlist of vendors that best fit your company, and you can access exclusive software discounts!


Let me summarize what we covered in this article.

Resource leveling is a resource optimization technique that lets you optimize resource usage by adjusting the project’s start and end dates to meet resource allocation demands.

Resource leveling is something you can do only when there’s scheduling flexibility. When you have no such liberty, resource smoothing may be a more suitable resource optimization technique.

You can complement resource leveling with resource smoothing for even better optimization of resources. Read this article on resource leveling related techniques.

With resource leveling, your resource allocation and project schedule are informed by resource availability. Thus, you benefit by coming up with a more realistic project schedule, maximum resource utilization, as lean an operation as possible, and a higher chance of a successful outcome.

You can perform resource leveling manually or automatically. Manual resource leveling is likely to provide you the best resource-optimized schedule.

However, automatic resource leveling with the help of project scheduling software is easier to do than manual resource leveling. It can also be more efficient, especially with complex and complicated projects.

If you prefer manual resource leveling, you can use an automatically resource-leveled schedule as your baseline for manual resource leveling.

Finally, if you can have only one take-away from this article, let it be this one. Resource leveling prioritizes optimizing resource usage over schedule stringency. Thus, it requires a fair amount of schedule flexibility.

When the resources required by a scheduled activity are unavailable, resource leveling dictates that you reschedule that activity to another time when the resources it needs are available. That’s it. That’s resource leveling in a nutshell.

For more on resource leveling and management, subscribe to The Digital Project Manager newsletter.

Related Read: 10 Best Free Resource Management Software In 2022

List of Related Tools: Resource Tracking Software

By Jinky Elizan

I have been a freelance writer and WordPress website developer for 15 years. I am a partner at a local digital marketing agency, where I manage campaigns for corporate clients. I am thrilled to be taking on even more project management roles at four new startups.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.