EnableYourData.com

KPI · HR

Cost per hire: formula and example.

Cost per hire is the average recruitment cost of one new employee. You divide all recruitment costs in a period, external and internal, by the number of hires. It helps you compare recruitment channels and justify the recruitment budget.

Cost per hire formula

(External recruitment costs + internal recruitment costs) ÷ number of hires

Worked example

In 2025 Acme Groothandel spent €72,000 on recruitment: agencies, job boards, advertising and the recruiter's time. It hired 24 people. The cost per hire is €72,000 ÷ 24 = €3,000.

Fictitious figures for Acme Groothandel, a sample wholesaler.

How to read this KPI

A lower cost per hire is good, but only if the quality of hires holds up. Compare by job family and by channel, and set it against early turnover: cheap hiring that leads to quick departures ends up expensive. Track the trend over several years, because a few costly vacancies can skew a single year.

Pitfalls with cost per hire

  • Counting only external costs and forgetting the time spent by recruiters and hiring managers.
  • Comparing costs and hires from different periods, even though recruitment often spans a year end.
  • Lumping job families together, so expensive specialist hiring distorts the average.

SQL & DAX

Calculating cost per hire 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 date_trunc('year', filled_at)::date AS year,
       SUM(offers_accepted) AS hires,
       SUM(recruitment_cost) AS recruitment_cost,
       ROUND(SUM(recruitment_cost) / NULLIF(SUM(offers_accepted), 0), 0) AS cost_per_hire
FROM vacancies
WHERE filled_at IS NOT NULL
GROUP BY 1
ORDER BY 1;
DAX · Power BI
Recruitment Cost = SUM ( Vacancies[RecruitmentCost] )
Cost per Hire = DIVIDE ( [Recruitment Cost], SUM ( Vacancies[OffersAccepted] ) )

In ENABLE

Tracking this KPI in ENABLE

Plain-language questions

Ask for cost per hire 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 cost per hire?

Add up all recruitment costs in a period, such as agency fees, job boards, advertising, assessments and internal time spent on hiring. Divide that total by the number of people hired in the period. Record which cost types you include.

What costs are included in cost per hire?

External costs such as agencies, job boards, advertising and assessments, plus internal costs such as recruiters' and hiring managers' time. Onboarding costs after the start date are usually excluded. Be consistent, or years and channels will not be comparable.

How can you reduce cost per hire?

Look at which channels deliver the most suitable candidates per euro and move budget there. Internal moves and referrals are often cheaper than agencies. Do check that the quality and retention of new hires stay the same.

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.