Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
snwileu7
Regular Visitor

Help with Turnover Rate Calculation – Keeping Headcount Stable While Filtering

Hi Fabric Community,
I'm working on a turnover rate calculation in Power BI and running into a challenge with how filters affect my headcount denominator.
Here’s the setup:

Table A contains employee profile data (e.g., employment status, career stream, worker type).
Table B contains termination records (e.g., termination date, reason).
I calculate turnover rate as:
Turnover Rate = Terminations / Average Headcount

What I Need:

The termination count should respond to filters (e.g., career stream, location, time).
The average headcount should:

Be calculated over completed months in a selected time period (monthly, quarterly, annually).
Respond to filters from Table A (e.g., career stream).
Ignore filters from Table B (to avoid inflating the turnover rate).

 

What’s Going Wrong:

When I apply filters from Table B (like termination reason), the headcount shrinks.
When I try to remove filters using REMOVEFILTERS(Table B), the headcount becomes static and doesn’t respond to filters from Table A.

🔍 What I’ve Tried:

Using CALCULATE([Monthly Headcount], REMOVEFILTERS(Table B))
Wrapping AVERAGEX over filtered months
Creating disconnected tables for filtering

💡 What I’m Looking For:

Best practices for keeping headcount filter-responsive to employee attributes but immune to termination filters.
Whether disconnected tables or alternate modeling approaches are better.
Any DAX patterns or modeling tips that have worked for others.

Thanks in advance for your help!

3 REPLIES 3
v-venuppu
Community Support
Community Support

Hi @snwileu7 ,

May I ask if you have resolved this issue? Please let us know if you have any further issues, we are happy to help.

Thank you.

v-venuppu
Community Support
Community Support

Hi @snwileu7 ,

I wanted to check if you had the opportunity to review the information provided and resolve the issue..?Please let us know if you need any further assistance.We are happy to help.

Thank you.

v-venuppu
Community Support
Community Support

Hi @snwileu7 ,

Thank you for reaching out to Microsoft Fabric Community.

You can fix this by making your headcount measure ignore filters from the Terminations table while still responding to Employee filters.

Average Headcount =
CALCULATE(
AVERAGEX(VALUES('Date'[MonthYear]), [Monthly Headcount]),
REMOVEFILTERS('Terminations'),
KEEPFILTERS(VALUES('Employees'))
)

This keeps the denominator stable while reflecting attributes like career stream or location.
Ensure relationships flow Date --> Employees --> Terminations (single direction).
Your turnover rate = Terminations / Average Headcount will then behave correctly across all filters.

Helpful resources

Announcements
Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.