Hiring funnel analytics: measure each stage without misreading the numbers
Hiring funnel analytics should tell a recruiter where candidates are waiting and whether each step is doing useful work. Start with counts by stage and time period. Add conversion rates only when their numerator and denominator describe the same cohort. A dashboard that says “40% pass rate” without identifying who was actually screened may be worse than a simple list of pending candidates.
The smallest useful funnel has submissions, completed application screens, assessment invitations, assessment submissions, interview-link invitations, and final decisions. Keep “manual review,” “waiting for AI capacity,” and “failed delivery” visible as operational states. They are not the same as rejection.
Define the denominator before the percentage
For a given role and date range:
| Measure | Formula | What it answers |
|---|---|---|
| Screening coverage | Completed application screens ÷ submitted applications | How much of the incoming queue has been processed? |
| Screen advancement | Assessment invitations ÷ completed application screens | How often does the first filter advance someone? |
| Assessment completion | Submitted assessments ÷ delivered invitations | Is the exercise accessible and reasonable? |
| Interview invitation rate | Interview-link invitations ÷ reviewed assessments | How often does the second filter invite someone to book? |
| Decision closure after interview | Final decisions ÷ externally confirmed completed interviews | Are interview outcomes being recorded? Reconcile this metric with the booking provider; Badal alone cannot calculate it. |
Use a fixed cohort where possible. If five candidates applied yesterday and their screen is still pending, counting them in a same-day pass-rate denominator makes the screen look more selective than it is. If an email job is queued, it is not a delivered invitation. Badal’s interview_invited stage means the booking-link step was reached; it does not confirm that the candidate selected a slot.
A worked example
Suppose a role receives 40 applications in a week. Twelve have completed AI screening, six were invited to an assessment, four submitted it, and two received an invitation to book an interview. Screening coverage is 12 ÷ 40 = 30%. Screen advancement is 6 ÷ 12 = 50%. Assessment completion is 4 ÷ 6 = 67%, assuming all six invitations were delivered. Interview invitation rate is 2 ÷ 4 = 50%. Saying “two interviews were booked” would be inaccurate until the recruiter checks the external booking provider. The example also hides 28 applications that are still waiting and cannot yet be counted as screened out.
This distinction matters in Badal because the first ten AI screenings per recruiter are included, while public forms and Stage 1 Google Sheets sync can keep collecting candidates beyond that capacity. If a cohort includes waiting applicants, show both the total submissions and the processed subset. Do not assign waiting candidates a zero or count them as rejected.
Track time as well as conversion
For stages Badal records, measure median time from the preceding event: application to screen, screen to assessment invitation, assessment invitation to submission, and submission to booking-link invitation. To measure actual booking or attendance, bring verified events from the external booking provider; Badal's invitation stage alone cannot supply those timestamps. Averages can be distorted by a few very old cases; report a median and the number of candidates behind it. A growing queue with a stable pass rate still creates a poor candidate experience.
Choose a simple service target you can meet, such as reviewing manual-review cases within two working days. Monitor whether failed email or Sheets jobs are accumulating. If a recruiter cannot act on a metric, it may not need a prominent dashboard card.
Use analytics to improve the process
Low assessment completion could mean the assignment is too long, the instructions are unclear, the email is not reaching candidates, or the deadline is unrealistic. Read a sample of cases before changing the rubric. A high application count with few relevant candidates may mean the job description is broad or the distribution channel reaches the wrong audience. A low externally verified interview-to-decision completion rate may point to an internal handoff problem, not candidate quality.
When you change the role, rubric, questions, or assignment, annotate the date. Compare cohorts only after separating versions and allowing enough time for later stages to complete. The live criteria guide shows how to document version changes. Avoid claiming a causal improvement from a tiny sample or from a simultaneous change in both sourcing and screening.
What Badal exposes
Badal's Analytics tab and GET /api/analytics provide account-scoped funnel counts. Candidate reports and stage filters let a recruiter inspect the records behind a number. Google Sheets can mirror three stage tabs per role when connected, but the app remains the source of truth. The API also exposes jobs so delivery and processing failures can be inspected and retried. See Badal's analytics documentation for the current interface.
An agent can help interpret the data if it states the role, time range, numerator, denominator, and number of unprocessed candidates for every rate. It should separate observed counts from hypotheses. “Assessment completion is low because the exercise is too long” is a hypothesis until candidate feedback or a controlled change supports it.
Weekly recruiting review template
- Incoming: How many applications were submitted in the period?
- Capacity: How many were screened, waiting, or in manual review?
- Movement: How many invitations were delivered, exercises submitted, and booking-link invitations sent?
- Delay: Which stage has the longest median wait and oldest open case?
- Quality: What evidence did reviewers find repeatedly missing?
- Operations: Which email, Google, upload, or AI jobs failed?
- Action: What one change will the team test next week, and how will it be measured?
Agent-ready question
Pull my hiring analytics for [role] and [date range]. Show counts and correctly defined conversion rates for each stage, plus waiting and failed-job counts. Name the denominator for every percentage. Separate facts from possible explanations. Propose one small process improvement and ask before editing a live role or recording any final candidate decision.
The point of a funnel is to locate the next operational decision, not to create an impressive number.
Frequently asked questions
Why does a candidate appear in multiple stage counts?
A person can have completed an application, submitted an assessment, and received an interview booking link. Some charts count cumulative milestones; others show mutually exclusive current stages. Read the metric definition before summing columns.
Can I use one week's pass rate to judge the rubric?
Only cautiously. Small cohorts, unfinished processing, changing sources, and rubric edits can move the rate substantially. Review underlying evidence and compare cohorts with the same criteria before drawing conclusions.
Badal turns a recruiter conversation into a public form, evidence-based screening, a practical assessment, and a reviewable candidate report.
Open your workspace →