Adding Overtime in Microsoft Project – This Super-Easy Example Teaches You How

In projects, it’s common that you have to work with different pay rates for your team members. Everybody has a standard rate for the regular working time of 8 hours, but then overtime work is usually compensated at 150%, and Sunday work is usually compensated at 200% of the normal pay rate. How can you manage different pay rates in Microsoft Project? This article will teach you how.

Our example

Here’s the scenario we are going to set up in Microsoft Project. I think it’s pretty comparable to what you usually want to achieve:

EngineerRacquel, delivery engineer of our thriving machinery business, has been tasked to help the customer get his new machine up and running. She is going to spend two weeks on site with the client (from 20 February – 5 March). There, she is expected to work from Monday through Saturday for 10 hours per day. Also, Racquel will work on the Sundays in between to do some customization work.

Racquel’s normal hourly rate is $100 (for 8 hours per day, from Monday to Saturday). Her overtime rate is $150 per hour. This is for hours exceeding 8 hours per day. For Sunday work we are going to charge the client $200 for Rachel’s time.

Step 1: Define regular working hours

First we need to enter the regular working hours. This is done in the program options. Go to FileOptionsSchedule:

MS Project Options

I have set up the following working hours:

Setting up default working times in Microsoft Project

Step 2: Create a custom calendar

Our sample project involves weekend work, which is an exception. Therefore we need to set up a custom calendar where Saturday and Sunday are marked as working days (see also my video tutorial).

But the thing is: we don’t want all Saturdays and Sundays to be working days. We only want to make those weekends working time for the specific task where Racquel is onsite with the client.

To create a new calendar, go to ProjectChange Working Time:

Click Create New Calendar. Give the calendar a name, such as in my example:

Create a new calendar for overtime work on Saturday and Sunday

In the following window, go to the Work Weeks tab and double click on the first line:

custom calendar

Set all days as working days:

Maintaining working days in Microsoft Project

Press OK.

Now we have to assign the “weekend work” calendar to the specific task of Racquel.

To do so, double click on the task, and in the Task Information window, go to tab Advanced to set the calendar for this task:

Assign calendar to resource

Click OK.

Remark: In my e-book The 80/20 Guide to MS Project, I cover working times extensively. Take a look at the e-book if you want to get a better understanding of how you can configure Microsoft Project for your needs.

Now the task appears in our Gantt view as follows (work is now scheduled also on the weekends):

Microsoft Project with task highlighted that involves overtime work

Step 3: Maintain overtime rates

The schedule is now set up correctly. Now we are going to define the overtime rates for Racquel.

We are going to do this in the Resource Sheet, where we have to set up Racquel as a resource (see image below).

Here we define overtime rates – double click on the resource and go to the Costs tab:

Maintaining overtime rates in Microsoft Project (Resource sheet)
Maintaining overtime rates in Microsoft Project (Resource sheet)

Notice: I have also assigned Racquel to the “Weekend work” calendar. If we don’t assign her to this calendar, her tasks will not be scheduled on the weekend.

Why have I entered the rates like that?

Racquel is with the client from 20-February until 5-March. There are two Sundays in this period, 21-February and 28-February. As we can only enter pay rates for time periods with a cutoff date, we have to specify the exact periods and the cost rates to be used:

  • On Sunday, 21 February, Racquel’s rate is $200 per hour
  • From Monday 22 February onwards till Saturday, 27 February, the cost rate will be $100 per hour for normal hours and $150 for overtime work.
  • On Sunday, 28 February, the rate will be $200 again because it’s Sunday work.
  • From Monday, 1 March onwards, the normal rate of $100 per hour should apply again. If we hadn’t made that fifth entry, we would continue to charge for Racquel the “Sunday rate” for normal working days. But that’s not what we want.

Now we have set up the pay rates for our sample project.

As a next step, we are going to assign Racquel to the Machine rollout task:

Assign resource to task in MS Project 2016
Our resource will be assigned to the Rollout task and will receive overtime pay in Microsoft Project

Let’s check our working hours and costs

Let’s recap: Until now we have set up our 14-day task, we have maintained the standard and overtime rates for our resource, Racquel, and we have assigned Racquel to the task.

Let’s take a look at the working hours for Racquel:

Normal working hours in MS Project

What has happened? After assigning Rachel to the task, Microsoft Project has calculated the total effort and distributed it evenly across the 14 day period. The overtime is not included yet — Racquel is scheduled to work 8 hours each day. However, the double rate for Sunday has been considered (Racquel works 8 hours at a cost of $1600).

The total costs for the machine rollout task amount to $12,800:

Total costs does not include overtime work

How did we get to this number?

  • The task has a total duration of 14 days or two weeks. In these two weeks, Racquel works from Monday – Saturday for 8 hours each day at her normal rate ($100). The resulting costs are 6 days x 8 hours x $100 per hour x 2 times = $9,600.
  • Racquel also works on two Sundays (21 & 28-February) at the double rate ($200). This corresponds to labor costs of  2 Sundays x 8 hours x $200 = $3,200.
  • Hence, the total costs are $9600 + $3,200 = $12,800

But what about overtime?

Remember we said Racquel was supposed to work 10 hours per day, but here it still shows 8 hours per day.

We have to assign overtime work separately, as I will show you next.

Step 4: Enter overtime work

Here’s the key insight that users oft Project often are missing when trying to add overtime work: You have to assign overtime work deliberately. Microsoft Project does not automatically allocate any “extra hours” as overtime work.

To make this point clear: if you assign 10 hours of daily work to a resource with an 8-hour working schedule, MS Project does not, by itself, record 8 hours as normal work and 2 extra hours as overtime work. You have to tell MS Project specifically how much of the total work should be recorded as overtime work.

Now, let’s add the overtime hours for our example:

To do so, open the Task Form in the detail view:

Overtime must be added via the Task Form in Microsoft Project

Now you should see the Task Form in the bottom half of the screen. Right-click in the task form and choose Work, because we want to modify the work values:

Task Form: Showing work values to enter overtime

Let’s do the math before we change any values:

As per the current status, Project has recorded 112 hours for Racquel (8 hours x 14 days). This is the total workload based on an 8-hour working day. But we want Racquel to work for 10 hours each day — 8 hours as normal working time and 2 hours as overtime. This would amount to a total of 14 days x 10 hours = 140 hours. This means we need to record 140 – 112 hours = 28 hours as overtime.

To enter the total hours and overtime hours, use the following fields: The total hours must be entered in the Work column, and the overtime hours go into the Overtime field. Finally, enter OK to record the values you entered:

Overtime is maintained in the Task Form of MS Project
Overtime is maintained in the Task Form of MS Project

Did you notice? The Work value must include overtime work hours! In other words: overtime is a subset of work. This is very important to consider. Otherwise, overtime work will not be recorded correctly.

Microsoft confirms this point in their documentation. Quote:

“Microsoft Project calculates total task work as the sum of the work that all assigned resources are to perform on a task. This is based on the assignment span, the number of resources assigned, and the assignment units for the assigned resources. Work includes actual work and remaining work, as well as overtime work.”

Let’s take a look at the cost overview:

Cost after overtime was added

$17,200 is the correct total cost for the 14-day task and it includes overtime pay.

If you want to know how we arrive at this value, here is a breakdown:

Cost overview including overtime work

Now we have added overtime work in the way we wanted! You see, it’s not that hard.

I hope this example has helped you understand how overtime is added in Microsoft Project.


To ensure overtime is correctly accounted for in Microsoft Project, you have to follow the right steps. Firstly, you have to check the calendar and working times for your resources. For weekend work, you have to create a separate calendar and assign this calendar to the respective task(s). Secondly, you have to maintain the standard and overtime rates in the Resource Sheet. Finally, you have to manually specify the number of overtime hours. If you follow this process, overtime will be handled correctly in Microsoft Project!

By the way … if Microsoft Project gives you headaches and you are struggling to understand how it works, take a look at my e-book, The 80/20 Guide to MS Project which gives you an easy-to-understand overview of all the important features:


  • Adrian Neumeyer

    Hi! I’m Adrian, founder of Tactical Project Manager and Ex-Project Manager with over ten years of experience in project management. Led large-scale IT implementations and business projects. I started Tactical Project Manager to offer you a straightforward and pragmatic approach to project management, enabling you to lead any project with confidence.

    View all posts