EnableYourData.com

KPI · HR

Employee retention rate: formula and example.

Employee retention rate is the percentage of employees who were employed at the start of a period and are still employed at the end. People who joined during the period are excluded. It shows how well you hold on to the people you already have.

Employee retention rate formula

Employees employed at both start and end of the period ÷ employees at the start × 100%

Worked example

On 1 January 2025 Acme Groothandel had 140 employees. On 31 December 2025, 126 of them were still employed. The employee retention rate is 126 ÷ 140 × 100% = 90.0%.

Fictitious figures for Acme Groothandel, a sample wholesaler.

How to read this KPI

A higher rate means you keep more of your existing people. Retention and turnover are not mirror images: retention only follows the group that was there at the start, while turnover also counts new starters who leave. Compare by department and by year, and focus on groups you particularly want to keep, such as specialists.

Pitfalls with employee retention rate

  • Including people who joined during the period in the numerator or denominator.
  • Treating retention as 100% minus turnover; that only holds when nobody joins.
  • Showing retention for very small groups, such as a team of three, where one leaver is identifiable and has an outsized effect.

SQL & DAX

Calculating employee retention rate in SQL and DAX

Two examples on a fictitious data warehouse for Acme Groothandel: a PostgreSQL query and a measure for a Power BI model. Adjust table and column names to your own model.

SQL · PostgreSQL
SELECT COUNT(*) AS headcount_at_start,
       COUNT(*) FILTER (WHERE termination_date IS NULL OR termination_date > DATE '2025-12-31') AS still_employed,
       ROUND(100.0 * COUNT(*) FILTER (WHERE termination_date IS NULL OR termination_date > DATE '2025-12-31')
             / NULLIF(COUNT(*), 0), 1) AS retention_pct
FROM employees
WHERE hire_date <= DATE '2025-01-01'
  AND (termination_date IS NULL OR termination_date > DATE '2025-01-01');
DAX · Power BI
Retention % =
VAR StartDate = MIN ( 'Date'[Date] )
VAR EndDate = MAX ( 'Date'[Date] )
VAR Starters = FILTER ( ALL ( Employees ), Employees[HireDate] <= StartDate && ( ISBLANK ( Employees[TerminationDate] ) || Employees[TerminationDate] > StartDate ) )
VAR Stayed = FILTER ( Starters, ISBLANK ( Employees[TerminationDate] ) || Employees[TerminationDate] > EndDate )
RETURN DIVIDE ( COUNTROWS ( Stayed ), COUNTROWS ( Starters ) )

In ENABLE

Tracking this KPI in ENABLE

Plain-language questions

Ask for employee retention rate per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.

Read more →

In your Power BI dashboard

Define the KPI as a measure in your Power BI model and show it in the portal, with "Last refreshed" next to it. Access profiles and optional row-level security decide who sees which figures.

Read more →

Custom dashboards (pilot)

Add the KPI as a tile to a custom dashboard, compared with last year. The Dashboard Builder is a pilot and can be switched on per client.

Read more →

Monthly targets

With the built-in Targets app you set a target for the KPI per month, so you see actuals and target side by side.

Read more →

FAQ

Frequently asked questions

How do you calculate employee retention rate?

Take the number of employees at the start of the period and count how many of them are still employed at the end. Divide the second number by the first and multiply by 100%. People who joined during the period are left out.

Is retention rate the same as 100% minus turnover?

No. Turnover counts all leavers against the average headcount, including new starters who left quickly. Retention only follows the group that was there at the start. When you hire a lot, the two figures diverge.

Over what period should you measure retention?

Usually a year, because shorter periods show few leavers and fluctuate a lot. A separate measure for new starters over their first year is also useful. Keep the period fixed so you can compare years.

Use AI on your own data. Securely, and without the headache.

In an online demo we show how ENABLE makes your data securely available and how you build on it: describing an app in the AI Builder, plain-language questions, dashboards and APIs. And how we set it up and manage it for you.