Dynamics 365 Project Service Automation: Resource Utilization Grid

Tested on:
PSA version

I was talking with fellow MVP Mohamed Mostafa about utilization in PSA and our conversation got me thinking it’s time to revisit that old topic. MVP Scott LeFante did a thorough investigation into utilization back in 2018 but back then the utilization grid was “same but different”. As the grid has since changed and there is now even official documentation by Microsoft, I thought it’s time to revisit the topic of utilization in PSA.

The use case on this blog post is that internal projects should not be billed to an internal customer. Hours spent on internal projects should still count toward billable utilization (I hate the idea of punishing people for doing internal projects by slashing their billable utilization). There is a concept of internal utilization in PSA. It’s recorded when time entries are approved for a Project without an Order. The utilization grid hides the value for internal utilization behind a few gotchas:

  • The cells on the grid are not what get updated. It’s the Resource Card that does. Right-click on a resource’s name to open the card.
  • The Resource Card show’s a work week’s utilization correctly when setting “Number of days per page” from the grid’s settings to 5.

If your use case is different and you want to use the concept of internal utilization in PSA, go right ahead. Just keep the points mentioned above in mind.

Internal utilization on the Resource Card.
Utilization grid’s settings.

Based on all that you just read you can understand why I oftentimes tell customers it’s best to define what a customer-specific logic for utilization calculation is and then create Power BI reports displaying utilization. This way you get exactly what you ask for. You’re probably using Power BI to visualize PSA’s data anyway.

Based on the use case we can deduce that to make sure Unbilled Sales Actuals (these essentially lead to an Invoice and Billed Sales Actuals) are not created, a T&M Order Line is not the best idea. Instead, a Fixed Price Order Line will generate Cost Actuals, and Time Entries against a Fixed Price Order Line will also count toward utilization. Or will they? How will a default role or billing type (chargeable, non-chargeable) on a role affect the outcome? What about changing the billing type during time entry approval? What happens to utilization when an approval is canceled?

Let’s get the aforementioned questions answered. The following chapter will illustrate the setup used for Order Lines, Roles (Bookable Resource Categories), default roles for Bookable Resources, and Project Approvals. At the end of the blog post, there’s a table that shows the tests I’ve run to figure out what affects billable utilization in PSA. There’s probably quite a few scenarios I haven’t covered, but the tests I’ve made should be enough to come up with a solution for the use case.

Test Setup

A Role’s (Bookable Resource Category) billing type should be set to Chargeable if approved time entries for the respective role should be included in utilization. If a Role is set as Non Chargeable, it’s possible to change the billing type to Chargeable at Project Approval, when approving time entries.

If a Role’s billing type is Non Chargeable, the Role will not show on an Order Line’s Chargeable Roles tab. Target utilization is also important so remember to set a target for a Role or a Bookable Resource. The official documentation describes the difference in more detail.

Verify what a Role’s billing type is when considering utilization.
A Role is chargeable on an Order Line when the Role’s billing type is set to Chargeable.

The next important piece in the puzzle is an Order Line with the Include Time flag set to Yes. The use case in this example is to include work done toward internal projects in billable utilization without invoicing internal parties. This means that instead of using a T&M Order Line, a Fixed Price Order Line is used. This way we’ll get Cost Actuals but no Unbilled Sales Actuals, when time entries are approved.

A Fixed Price Order Line with the Include Time flag set to Yes.

Test results

Time to examine the test results. I rant tests with T&M and Fixed Price Order Lines, tried different role chargeability options, and canceled approvals to see how time entry cancellations affect utilization. The following values were fixed in all tests:

  • Bookable Resource’s Work Hours: 8 h per day, Mon-Fri.
  • Target Utilization on Bookable Resources: 75 %.
  • Target Utilization on Roles: 75 %.

As the table illustrates, a Fixed Price Order Line with the Include Time flag set to Yes is a solution to the use case. This way there won’t be a T&M billing backlog full of Unbilled Sales Actuals for an internal project. A project approver also doesn’t have to remember to set the billing type to Non Chargeable, when approving time entries.

All my blog posts reflect my personal opinions and findings unless otherwise stated.