What a Recruiting Audit Reveals (Real Examples)
The five findings that come up in almost every recruiting audit, what each one costs per day of delay, and what teams actually change in the first month.
A recruiting audit almost never produces a surprise. It produces the things everyone half-knew and nobody had a number for. Five findings come back in nearly every pipeline I have looked at: candidates parked in a stage with no named owner, a rejected pool that is larger and better than the active one, roles open past 90 days that nobody has closed or killed, interviewers whose scores never disagree, and a talent pool nobody has contacted in a year. None of them appear in the report your system produces, because that report measures what you did, not what is sitting still.
I ran a recruitment agency before I built Pickr, and I could never get a straight answer about where a search had gone wrong. How you actually run an audit is a separate subject, and I have written about auditing your hiring process elsewhere. This piece is about what comes out of one, and what each finding costs.
Why do candidates sit in one stage for weeks?
Because nobody's name is on that stage. The most consistent finding in any audit is a cluster of candidates ageing in "submitted to client" or "awaiting feedback" for 12 to 20 days, with the recruiter believing the client owns the next move and the client believing the recruiter does.
The tell is not the average. Averages hide this: a stage with a 4-day mean can hold a third of its candidates past 15 days. What you want is the age distribution and the oldest record in each stage. In the agency pipelines I have looked at, that group is never empty and rarely small, and a good share of those people are still available. Nobody has asked them.
It is also the finding that comes back fastest if you fix it once and stop looking, which is why time in stage belongs in a report someone opens every week rather than in an audit someone runs once a year. That is what a pipeline analytics view is for.
Is your rejected pool bigger than your active pipeline?
Almost always, and often by a factor of 5 to 20. That in itself is fine. What matters is why people are in it.
Sort rejections by reason and the picture changes. In most systems a large share carry no recorded reason at all, and much of the rest says something like "not a fit" or "client passed". Those are not rejections for cause. They are rejections for timing, for a salary band that has since moved, or for a role that no longer exists. A recruiter who reads 20 of those files by hand will usually find 3 or 4 people worth putting forward tomorrow.
This is the finding with the fastest payback and the one teams are most reluctant to act on, because reopening a rejection feels like admitting the first decision was wrong. It usually was not. It was a decision about one role, on one day, for one client.
Here is the limit of the exercise, and it is a real one: an audit only sees what was written down. If your team never recorded rejection reasons, all you get back is the finding that the field is empty. That is a discipline problem, not a shortlist, and no amount of analysis turns it into one. Somebody still has to read the files.
Why do roles stay open past 90 days?
Filter for roles with a created date more than 90 days ago and an active status. In most teams there are between 3 and 10 of them, and at least half are dead. The client went quiet, the budget moved, the hiring manager left, or the requirement was rewritten and nobody updated the record.
Zombie roles are not harmless. They inflate your pipeline, they distort every conversion rate you calculate, and they keep candidates attached to searches that will never close. Worse, they make real capacity invisible. A team of 4 recruiters carrying 11 roles, of which 4 are dead, is a team of 4 carrying 7, and the workload argument you keep having is built on the wrong number.
What does it mean when interviewers never disagree?
It means the scorecard is theatre. Pull the last 50 interview scores. If every panel lands within half a point of itself, those are not 4 independent signals. They are one impression recorded 4 times, usually because the criteria are vague enough that everyone is scoring likeability.
The rule of thumb I use: a panel that never splits is not separating candidates, it is confirming a first impression. The disagreement is the point. It is where the useful half-hour of discussion happens, and it is usually where a plausible candidate who is wrong for the job gets caught.
This finding usually arrives paired with a second one: scorecards completed days after the interview, or not at all. Pickr transcribes interviews and returns scorecards pre-filled with evidence mapped to each criterion, so an interviewer edits a draft on the same day instead of facing an empty form on Friday. Interviewer and hiring-manager seats are free, because a score nobody fills in is worth nothing.
How much of your talent pool has nobody contacted in a year?
Every agency has a database it calls an asset. Run the query: how many of those records have had any outbound contact in the last 12 months? In the databases I have looked at the answer is usually well under 20%, and the bigger the database, the worse the share gets.
An uncontacted pool is not an asset, it is storage. It stays uncontacted because keyword search over it returns the same 200 obvious profiles every time, and the 201st is invisible. Pickr is the AI-native recruiting platform I built for that problem: it scores every candidate on evidence of skills rather than on keyword matches, including adjacent and transferable ones, which is what surfaces the people whose CV never used the word the search was built around.
What does the delay actually cost?
Work it out the way a finance person would, not the way a recruiter does. Take the annual value the role produces, divide by working days, multiply by the days your bottleneck adds.
| Input | Example |
|---|---|
| Annual value of the filled role | 150,000 EUR |
| Working days per year | 220 |
| Vacancy cost per day | ~680 EUR |
| Avoidable days added by the bottleneck | 9 |
| Searches per year | 12 |
| Annual cost of that one finding | ~73,000 EUR |
That is one finding, on 12 roles, in one year. It is not a rounding error, and it is why I would rather hand a client a number than a diagnosis. The full cost of a slow hiring process compounds beyond this, because the candidates you lose to a faster competitor are disproportionately the strong ones.
The calculation is only as good as its first input. If nobody can say what the role is worth, the arithmetic is decoration. But "we don't know" is itself a finding, and it usually settles the argument about whether the vacancy is actually urgent.
Which five filters find all of this?
Stage age and stage owner. Rejection reason, grouped and counted. Role status against role age. Scorecard completion and score variance. Last contact date across the database. Everything else in an audit is commentary on those five.
You can run them this afternoon in whatever system you already have, and nothing on that list requires new software. If you would rather not build the queries by hand, the free recruiting audit reads your existing hiring history read-only and produces the same five findings. Nothing in your system is modified, and candidate data is hosted in Frankfurt.
What do teams change in the first month?
The cheap structural work, almost always in this order. An afternoon closing or killing stale roles. A morning assigning a named owner and a maximum age to every stage, so an ageing candidate becomes somebody's problem automatically. Then about a week working the strongest 50 records out of the rejected pool, which in my experience produces a placement more often than a week of fresh sourcing does.
Rewriting interview criteria so panels can genuinely disagree takes a quarter rather than a month. It needs the hiring managers in the room and at least one live search to test it against. Start with the other three.
What should you do with the findings?
An audit is not a verdict on your team. It is a list of places where work is sitting still and nobody's name is on it. Check for the five findings yourself, put the cost table against the worst one, and only then decide whether the problem is your process or your system. In my experience it is the process more often than it is the software, and buying a new platform to fix a process problem is the expensive order of operations.
If you want the findings without writing the queries, run the audit against your own pipeline. The report is yours either way, including in the case where it tells you your process is in better shape than you feared.
Frequently Asked Questions
What does a recruiting audit typically find?
Five findings recur in most pipelines. Candidates sitting in one stage for weeks with no named owner, a rejected pool larger than the active pool containing people who were declined for the wrong role rather than for cause, roles open past 90 days that nobody has closed or killed, interviewers whose scores never disagree with each other, and a talent pool that has not been contacted in over a year. None of them show up in a standard pipeline report, because that report measures activity rather than what is sitting still.
How do you calculate the cost of a slow hiring process?
Take the annual value the role is expected to produce, divide it by roughly 220 working days, and multiply by the number of days your bottleneck adds to time-to-hire. A role worth 150,000 euros a year costs about 680 euros for every working day it stays empty, so 9 avoidable days of waiting across 12 searches a year runs to roughly 73,000 euros of vacancy cost. The number is only as good as your estimate of what the role is worth.
Why is it a problem when interviewers always agree?
Identical scores usually mean the panel is measuring the same surface impression rather than several independent signals, which makes the scorecard a formality instead of evidence. A panel that never splits on any candidate is not separating them; it is confirming a first impression. Disagreement is where the useful half-hour of discussion happens, and consensus that never breaks is a sign the criteria are too vague to distinguish anyone.
Do you need to change your ATS to run a recruiting audit?
No. An audit reads your existing hiring history rather than replacing it, and most of what it finds can be fixed inside the system you already run by assigning stage owners, setting ageing limits and closing dead roles. Pickr can connect to a current ATS read-only for the audit without modifying anything, and the report is worth having whether or not you ever change systems.
How long does it take to act on audit findings?
Most teams do the cheap structural work in the first month. Closing or killing stale roles takes an afternoon, assigning a named owner to every stage takes a morning, and re-contacting the strongest 50 people in the rejected pool is about a week of work that regularly produces a placement before any new sourcing does. The harder change, rewriting interview criteria, takes a quarter because it needs hiring managers in the room and a live search to test it on.
Free recruiting audit · 2 minutes
Find out what your hiring process is actually costing you.
Answer eight questions, or connect your current system read-only, and get a report on where your funnel loses candidates and which changes are worth making. No signup, no API key stored, data stays in the EU.
Written by Andreas Amann
Founder of Pickr. Former operator at startups in Berlin and Silicon Valley, where he helped scale companies from 40 to 200+ people. Built Pickr after years of using every major ATS as a recruitment agency owner at ScalingPPL.