Recruitment Agency KPIs: A Weekly Scorecard From Your CRM Export

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Recruitment Agency KPIs: A Weekly Scorecard From Your CRM Export.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Recruitment Agency KPIs: A Weekly Scorecard From Your CRM Export.

Track six counts every week: business-development calls, candidate calls, CVs sent to clients, first interviews, offers and placements, plus fees invoiced. Export the activity log from your ATS or CRM, let a spreadsheet compute the conversion ratios, and use AI to write the formulas and a short commentary. Candidate scoring is a separate job.

A scorecard exists to answer one question every Monday: where did last week's pipeline leak? A consultant who made 75 business calls and placed nobody has a different problem from one who made 30 calls, sent eight CVs and placed one. The numbers below let you tell them apart in ten minutes, which is the whole point. Everything here measures the agency's own performance: activity, conversion and revenue. Nothing in it rates or ranks candidates.

Follow me on Instagram@sagnikteaches

The metrics, and what each one tells you

Keep the list short. Each extra metric is another export column to maintain and another conversation nobody has time for. This set follows the path of a vacancy from first conversation to invoice.

Connect on LinkedInSagnik Bhattacharya
MetricWhat it countsA drop usually means
Business-development callsCalls to clients and prospectsFewer new roles next month
Candidate callsCalls to candidates (sourcing, screening, updates)A thin shortlist, slower submissions
CVs sentCandidate profiles submitted to a client for a live roleWeak pipeline or slow turnaround on new roles
First interviewsCandidates put in front of a client for a first interviewShortlist quality, or client delay
OffersOffers made to candidatesInterviews not converting; mismatch
PlacementsCandidates who accepted and started or are due to startOffers falling through, counter-offers
Fees invoicedFees raised in the weekPlacement timing or fee-rate changes

Then add four ratios, calculated by the sheet, not typed:

Subscribe on YouTube@sagnikteaches
  • CVs per interview or its inverse, the CV-to-interview rate. It shows how well your submissions match what clients want.
  • Interview-to-offer rate. It shows whether the interviews are with the right people.
  • Offer-to-placement rate. It shows how often offers are accepted and stick.
  • CVs sent per placement. It is the simplest effort measure for a desk, and it travels well from week to week.

Definitions matter more than the metrics. Write one line for each in a "Definitions" tab: is an interview counted when it is booked or when it happens? Is a placement counted at offer acceptance or at start date? If two consultants log differently, the scorecard compares nothing. Pick the rule and tell the team once.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

What your export needs to contain

You do not need a clever tool. You need one table with one row per activity. Many ATS and CRM systems can export the activity or pipeline history to CSV (check your own system's export or reporting menu), though the field names differ, so use whatever yours calls them. The columns that make the scorecard possible are these:

  • Date of the activity.
  • Consultant (the user who logged it).
  • Activity or stage type (call, CV sent, interview, offer, placement).
  • Contact type (client, prospect, candidate) for calls.
  • Job or vacancy ID.
  • Client name or ID.
  • Fee value, on placement rows only.

Leave out candidate names, contact details, salaries and free-text notes. The scorecard counts events; it does not need to know who the candidates were. Removing them at export is the cleanest privacy step, and it makes the file safe to put in a business-plan AI assistant. If your system's export includes names and you cannot drop the column, delete it in the spreadsheet before the file goes anywhere else. If your data is messy, with "CV Sent", "cv sent" and "Submitted" all in use, cleaning messy data with AI will help standardise it.

Build the sheet in four tabs

Use Excel or Google Sheets. The structure is simple and a person other than you can maintain it.

  1. Activity. Paste the export here, untouched except for the removed columns. Convert it to a table so new rows extend the formulas.
  2. Definitions. One line per metric, and the mapping from your system's labels to the scorecard's categories (for example "Submitted" and "CV out" both map to "CV sent").
  3. Weekly. One row per consultant, one column per metric, with the week's start and end dates in two cells at the top.
  4. Scorecard. The page the owner reads: totals, ratios, the last four weeks and a short comment.

On the Weekly tab, a count by consultant and activity looks like this, assuming dates in column A of Activity, consultants in B and activity types in C, and the week's dates in cells B1 and B2:

=COUNTIFS(Activity!$B:$B,$A5,Activity!$C:$C,"CV sent",Activity!$A:$A,">="&$B$1,Activity!$A:$A,"<="&$B$2)

Copy it across for each activity type, changing the text in quotes. For fees, use SUMIFS with the same conditions and the fee column as the sum range. Ratios are plain divisions, and wrap them in IFERROR so an empty week shows a dash, not an error: =IFERROR(F5/E5,"-").

You can ask an assistant to write these formulas. Paste the column headings (not the data) and say what you want:

My Activity sheet has these columns: A Date, B Consultant, C Activity (values: BD call, Candidate call, CV sent, Interview 1, Offer, Placement), D Job ID, E Client, F Fee. My Weekly sheet has consultants listed from A5 down, and the week start and end dates in B1 and B2. Write Excel formulas for each metric column (BD calls, Candidate calls, CVs sent, Interviews, Offers, Placements, Fees) and for these ratios: CV-to-interview rate, interview-to-offer rate, offer-to-placement rate, CVs sent per placement. Use COUNTIFS and SUMIFS, wrap ratios in IFERROR to show "-", and explain in one line where each formula would need changing if my column letters differ.

Test the formulas on a week you know. Count three consultants' CVs by hand from the export, and compare. If any number differs, find out why before you use the sheet for a decision. The usual culprits are dates stored as text, trailing spaces in the activity names, and a consultant who appears under two spellings.

A worked example: one week, four consultants

The figures below are invented for illustration and describe no real agency.

ConsultantBD callsCandidate callsCVs sentFirst interviewsOffersPlacementsFees invoiced
A62489521$9,200
B417012622$20,200
C75225200$0
D30558411$8,600
Total208195341754$38,000

The sheet calculates the ratios. Across the desk: 17 interviews from 34 CVs is a 50 per cent CV-to-interview rate; 5 offers from 17 interviews is 29 per cent; 4 placements from 5 offers is 80 per cent; and 34 CVs divided by 4 placements is 8.5 CVs per placement. By consultant, the CV-to-interview rates are A 56 per cent (5 of 9), B 50 per cent (6 of 12), C 40 per cent (2 of 5) and D 50 per cent (4 of 8).

What the sheet shows is not a verdict. Consultant C made the most business-development calls (75) and the fewest candidate calls (22), sent only 5 CVs and placed nobody. A sensible reading: C is bringing in work, and the candidate side is the bottleneck, so the Monday question is "which of C's roles lack a shortlist, and who can help source for them?" That is a better conversation than "you did not place anyone". Meanwhile B has the highest candidate-call volume and the most CVs and fees, but a 50 per cent CV-to-interview rate that is no better than average, so more CVs are not automatically better ones.

Let the assistant write the commentary, not the numbers

When the Scorecard tab is calculated and checked, paste the finished table, not the raw export, into the assistant and ask for a short Monday note.

Below is this week's recruitment desk scorecard and last week's. Write a Monday briefing of no more than 150 words for the agency owner. Use only the numbers in the tables; do not calculate new ones. Say: the one number that moved most and by how much; one thing that looks healthy; one thing to ask a consultant about, phrased as a question and not a criticism. Do not rank consultants or comment on any individual candidate. If the data cannot explain something, say so.

THIS WEEK:
[paste]
LAST WEEK:
[paste]

An illustrative reply: "Business-development calls rose from 171 to 208, but CVs sent fell from 41 to 34, so activity is moving to the client side while submissions slip. The offer-to-placement rate of 80 per cent is healthy. Question for C: which of your open roles have no shortlist yet, and what would help get one this week?" Check each number it quotes against the table. If the assistant adds a reason, such as "due to the holiday", that is a guess; delete it unless you know it to be true.

A before-and-after of the same sentence: "Performance was strong this week with great results across the board" (empty) against "CVs sent 34, down from 41; first interviews 17, up from 14". The second is what a busy owner can act on.

Reading the scorecard: patterns and the question each one raises

A number only helps if it leads to a question. These patterns come up again and again on recruitment desks, and each has a first question to ask. Treat them as hypotheses, because the export cannot see the reason.

Pattern in the numbersA likely cause to checkFirst question for the desk
High BD calls, low CVs sentRoles opened but no shortlist behind themWhich open roles have no candidate in progress?
High candidate calls, low CV-to-interviewSubmissions do not match the briefWhich briefs were thin, and did the client confirm the must-haves?
Good interview rate, low interview-to-offerInterviews are with the right people but something fails lateWhat reasons did clients give for not progressing?
Good offer rate, low offer-to-placementCounter-offers or slow paperworkAt which step did offers drop out, and how early did we talk about it?
Everything fine, fees lowLower fee rates or short-term rolesIs the mix of roles shifting towards cheaper ones?
Zeros for one consultantLogging gap, leave, or a long-running roleIs the activity missing from the system, or from the week?

When the sheet shows a pattern, write the question next to it in the Monday note and nowhere else. People respond better to a question than to a number with a red cell.

A second example: a contract desk with a late leak

Take a different illustrative desk: three consultants placing short-term contractors for a few regular clients. Over four weeks the scorecard shows these totals, again invented:

WeekCVs sentFirst interviewsOffersPlacements
1221265
2251365
3241474
4271584

The four-week total is 98 CVs, 54 interviews, 27 offers and 18 placements. That gives a CV-to-interview rate of 55 per cent (54 of 98), an interview-to-offer rate of 50 per cent, an offer-to-placement rate of 67 per cent (18 of 27) and about 5.4 CVs per placement. The four-week totals hide what the week-by-week rows show: offers rose from 6 to 8, but placements slipped from 5 to 4, so the offer-to-placement rate fell from 83 per cent in week 1 (5 of 6) to 50 per cent in week 4 (4 of 8).

The leak is late. The contract desk should ask whether contractors are accepting then withdrawing, whether clients are slow to confirm start dates, or whether the "placement" definition changed. In this case the head of the desk finds that two offers in week 4 were made on a Friday and not confirmed in writing until the following Wednesday. The fix is a process change, a same-day written offer, not a change of effort. The scorecard did not tell her that; it told her which question to ask and where.

Set targets from your own history

Resist the urge to copy a number from an article or a conference slide. Your fee levels, sectors and client mix are your own. After six to eight weeks of data, calculate the median of each ratio and the best and worst weeks, and set a target only for the one metric you want to move, such as moving CV-to-interview from 45 to 50 per cent in a quarter. A single target is easier to act on than a dashboard full of them.

A quick sum shows how a ratio turns into a plan. Say the desk sends about 130 CVs a month and places about 15 of them at 8.5 CVs per placement. If briefs improve and the ratio drops to 7 CVs per placement, the same effort gives roughly 18 to 19 placements, about three or four more a month. At an illustrative average fee of $9,500, three to four extra placements is roughly $28,000 to $38,000 of fees a month, which is why a coaching session on briefs can be worth the time. Treat it as arithmetic, not a promise: the ratio has to move first.

A mistake that corrupts the weekly numbers

A realistic one: the agency changes its ATS stage names in the second month, and "CV Sent" becomes "Submitted to client". The formulas still count the old label, so CVs sent drops to near zero for a week, and the commentary assistant reports a collapse in submissions with great confidence. The fix is the Definitions tab, which maps every label to a scorecard category, and a check on Monday morning: if any metric moves more than about half in a week, look at the data before the desk. A second check is a count of distinct activity labels in the export; a new one should prompt an update to the mapping.

Weekly rhythm: ten minutes on Monday

  1. Export the last seven days of activity (Friday evening or Monday morning).
  2. Remove or confirm the removed columns; paste into the Activity tab.
  3. Check the date cells for the new week; scan the Weekly tab for blanks (a consultant with all zeros may have logged nothing, not done nothing).
  4. Read the Scorecard and mark any number that looks strange.
  5. Generate the commentary; verify each figure.
  6. Share the scorecard in the Monday desk meeting and agree one action per consultant at most.

The most common failure is not the maths. It is under-logging. If consultants log activity at the end of the week from memory, or not at all, the scorecard turns into a measure of who is tidy. Fix that at the source: define a short daily logging habit, such as five minutes at 5pm, and talk about the scorecard in terms of "what did the data show" and not "who logged". If one number always looks wrong, ask the desk before you ask the formula.

Four more things to add once the basics run

  • Four-week rolling average. Weekly numbers jump around; a four-week average of CVs sent per placement shows the trend. Use AVERAGE across the last four Weekly totals.
  • Time to first CV. Days from a role being opened to the first submission. It needs a role-opened date in your export, but it is the best early sign of speed.
  • Open roles by age. A simple count of vacancies with no activity in 14 days. These are roles the desk has forgotten.
  • Client view. A table by client of roles, CVs and interviews. Some clients consume effort and place rarely; seeing it is the first step towards a conversation about terms.

The same numbers feed other work. Where the CV-to-interview rate is low, the summary you send with each profile is a likely lever, and how recruiters use AI to write candidate summaries clients read covers it. Where business-development calls are high and new roles are few, AI for recruitment business development looks at the message and the target list. And when you want a visual version of this sheet, building a KPI dashboard with AI without a data team shows how to turn it into charts.

Limits: what this scorecard must not become

  • Not a candidate score. It counts the agency's activity and outcomes. It does not rank, filter or rate candidates, and it never includes personal characteristics. If you do want AI near screening, that is a separate decision with its own risks; see AI CV screening for recruitment agencies before you go near it.
  • Not a pay or performance verdict. Activity numbers are a conversation starter. Desks have different clients and roles of different difficulty. Any use of the numbers in reviews or pay should be based on more than a weekly count and agreed with the people it affects.
  • Not a replacement for judgement. A week with zero placements may be a good week if three offers are pending. Read the scorecard with the pipeline list beside it.
  • Not a data dump. Keep the export free of candidate personal data, and delete old exports on a schedule.

Three questions after the first four scorecards

After four weeks, ask three things. Did the numbers match what the desk manager believed, or did they surface something unexpected? Did any consultant change what they did after a Monday conversation? Did the sheet take ten minutes, or has it crept to an hour? If the answer to the third is an hour, the cause is almost always the export or the definitions, not the formulas; fix those first. If one metric has never prompted a question, drop it. A scorecard of five numbers that gets read is worth more than one of twenty that does not.

Recruitment scorecard questions

Which KPIs matter most for a small recruitment agency?

Start with business-development calls, candidate calls, CVs sent to clients, first interviews, offers and placements, plus the conversion between them. Add fees invoiced if you can. Six to ten numbers are enough, and they should come from activity your team already logs.

Can I upload an ATS export to ChatGPT or Claude?

Strip candidate names, contact details and notes first, and keep only dates, consultants, job IDs, stages and activity types. Use a business-plan assistant. The scorecard needs counts, not people, so nothing about an individual candidate has to leave your system.

Should AI work out the ratios or should the spreadsheet?

The spreadsheet should. Ask the assistant to write the formulas, test them on a week you know by hand, then let the sheet calculate. Use the assistant for the commentary around the numbers, and check every figure it quotes against the sheet.

Is it fair to compare consultants on a scorecard?

Only with context. Desks differ in client mix, seniority and how long roles take to fill, so use the scorecard to start a conversation, not to rank people. Compare each consultant with their own trend before comparing them with each other.

Further reads

Sources: ChatGPT and Claude pricing pages (no training on business data by default); Microsoft Support and Google Docs Editors Help COUNTIFS pages; the reader's own ATS or CRM export field names.

Want your weekly scorecard to build itself?

On a 1:1 call we'll look at what your ATS or CRM can export, choose the handful of numbers worth reviewing weekly, and set up a routine your desk managers will actually use.

Book a 1:1 call with me