Staff Turnover Calculation In Power BI Using DAX – HR Insights
I’m going to do a quick review of how staff turnover calculation is done. This will show you how to check the number of staff you have at any point in time. You may watch the full video of this tutorial at the bottom of this blog.
I also want to show you how you can compare how many people are getting onboard versus how many people you’re losing. This is going to give you interesting insights about your organization’s growth in terms of manpower.
Once I’m done with this, you’ll realize that once you learn how to calculate the data on your current staff, then calculating staff turnover won’t be that difficult. It’s just a matter of slightly tweaking the formula.
Analyzing The Demo Data
The first thing to note is that there has to be no active relationship between the Dates table and the Staff Population table.
This is because I have two dates in the staff table — the Start Date and the End Date.
This table has a separate row for each staff member as well.
There are also rows where the staff member still hasn’t left. That’s why there are blank results here under End Date.
Looking at this person here, for example, you’ll see that this person joined the team in February 2018 and left around a year and a half later.
Calculating For The Current Staff
This is the formula I used to get my Current Staff.
To find out how many staff members I had prior to today, I used the FILTER function. Then in VALUES, I referenced Staff Population and the Start Date.
This part, on the other hand, shows how many staff has end dates after that day. Again, I used the FILTER function here but this time referenced the End Date.
As for the staff members who are still in the team, the ISBLANK function covers that.
From there, I can just look at my visualization to see how many staff I had at any point in time.
Calculating For Staff Turnover
The formula I used for Staff Turnover is much simpler compared to the one I used for my Current Staff.
The COUNTROWS function comes in handy here to count up the number of staff I have.
But the more important thing is to go through every single End Date. This is what the FILTER function is for.
I also need to see how many of the End Dates are less than or equal to the current date in that particular table.
In this particular scenario, the first day where there was a turnover was in May 31, 2019 with 3 staff members leaving.
If I analyze the data further, I’ll see that there were indeed 3 people who had different Start Dates, but all left on the same day.
Now remember that the only reason why this part of the formula below is able to work through every single End Date in the Staff Population is because there are no active relationships in the model that would force a different context.
I also want to make sure that the blanks are taken out of the equation. Obviously, since these staff members are still part of the team, they should not be part of the staff turnover.
That’s what this part of the formula is for. It completely disregards all BLANK fields.
Going back to the visualization, it’s easier to see the time period when people started to leave.
I can even get more insights here by looking at when the organization peaked. It’s possible that this area here with the huge jump in numbers was a period of growth for the organization, thus there was the need for more staff.
***** Related Links *****
Attrition Analysis: Finding Lost Customers Using Power BI & DAX
Power BI Customer Attribution Analysis Using Advanced DAX
How To Implement Cohort Analysis In Power BI – Advanced DAX Concepts
This staff turnover calculation is definitely going to give you an amazing insight, especially if you’re in this type of work. It doesn’t just show you the number of staff you’ve had over time; it can also be a good way to see any growth or decline in the organization.
Just remember that it’s critical to have inactive relationships in your model for this to work. From there, it will be easy enough to master this calculation.
All the best,