Cookie preferences

Choose what we may use. Strictly necessary cookies keep you signed in and can't be turned off; everything else is your call and changes nothing about how the site works. You can change your mind any time from the footer.

Marketing attribution for staffing and recruitment firms

Which channels produced clients who hire?

Match filled placements and the margin they earned to the campaigns that produced the client relationship.

  • No card required
  • Nothing to install
  • Cancel anytime
Staffing & Recruitment workspace FY2026 Sample data
Placement margin traced to a channel

$549,000 61% of $900,000 paid

  • LinkedIn Ads $297,000 · 33%
  • Google Ads $162,000 · 18%
  • Email marketing $90,000 · 10%
  • Direct / Unknown $351,000 · 39%
Direct / Unknown is shown, never shared out across the channels above.
LinkedIn Ads · LeadFY2026 14 · (•••) •••-0134
Closed sale · FY2026 27$4,500
Matched · high confidence

The blind spot

What's actually happening

Client-side inquiries and candidate applications are measured together, produce entirely different value, and are frequently bought with the same budget.

What you get

Built for staffing and recruitment firms.

Placements, not applications

Rank channels by placements filled and margin earned rather than by form fills.

Repeat hiring counts

Run over a year and every placement for a client traces to the channel that won them.

Client and candidate split

Two funnels, measured separately, because their economics have nothing in common.

A worked example

The number you can take into a budget meeting.

Not impressions, not leads, not cost per click. Closed revenue, by the channel that produced it, for a period you choose — with the portion we could not trace shown rather than quietly shared out across your paid channels.

Total revenue$900,000paid placement margin
Attributed to a channel$549,00061% of revenue
Average deal$4,500per paid sale
Match rate63%of sales matched
ChannelSalesRevenueShare%
LinkedIn Ads61$297,00033%
Google Ads39$162,00018%
Email marketing24$90,00010%
Direct / Unknown74$351,00039%
01

Candidate volume is not client value

Most staffing marketing budget produces candidate applications, because that is what job advertising does and it is easy to measure. Revenue comes from clients, and client acquisition is a slower, quieter, more expensive funnel.

Measuring both on cost per lead blends them into a number that describes neither. Ranking by placement margin separates them and usually shows that the client-side spend, which looks expensive per inquiry, produces nearly all the revenue.

02

A client won once hires repeatedly

The value of winning a client is every placement they make afterwards, often across years and several roles. Judging acquisition on the first placement undervalues whichever channel brings clients who keep hiring.

Because the match is on the client contact and there is no attribution window, a report run across a year credits the full placement history back to the channel that produced the relationship.

03

Contract placements bill every week and the credit stops at the first one

A permanent placement is one fee on one date, which is why staffing attribution tends to get written around perm. Contract and temporary revenue behaves nothing like that. A worker starts on Monday, the timesheet bills weekly, and the assignment runs for seven months or three years. If the export carries only a placement date and an estimated fee, most of the revenue a channel produced is simply missing from the report, and the channels that specialize in contract clients look worse than the ones that do not.

Exporting billed revenue rather than placements corrects it. Each week, month or invoice period becomes a row against the same hiring contact, and every one of them credits the channel that won the client. A campaign that produced two contract clients in January can then be read against what those clients billed by December, which is normally a different number by a large multiple from the one January's report showed. The gap widens the longer the range, which is why a contract-heavy firm should never judge an acquisition channel on a single quarter's figures.

It also makes the perm-versus-contract comparison honest. Perm fees arrive early and look impressive on a quarterly slide. Contract margin arrives slowly and compounds quietly. Ranked on the same axis across a full year, the channels producing contract clients can overtake the ones producing perm, which would mean the two had been funded as though they were the same activity with the same payback. A column naming the placement type, mapped as Product / service, is a five-minute change that shows perm and contract revenue as separate lines, with how much of each traces to a channel.

04

Job boards and seat licenses are channels with invoices

Most staffing firms spend more on job boards, database access and professional network seats than on advertising, and that spend gets renewed on usage statistics: profiles viewed, applications received, postings live. None of those numbers touch revenue. The renewal conversation therefore happens every year without anybody in the room able to say what the subscription produced in placement margin, which is the only figure that would settle it. The awkwardness is not that the data is missing. It is that the usage report and the revenue report have never once been put on the same page.

Any of those tools that can export a list of people with contact details can go into the lead file, tagged with the tool as its source, and it is then ranked on margin next to everything else you fund. Where the tool is candidate-side, the honest answer is often that it produced very little client revenue directly. That is not the same as saying it is worthless — it is saying it belongs in the fulfilment budget rather than the acquisition one, which is a different conversation with different people.

Making that split explicit in the export is worth the effort. A column naming which side of the business a row belongs to, mapped as Product / service, separates client revenue from candidate-side revenue in the breakdown, and in many firms those two are funded from one pot while obeying completely different economics. A blended cost per lead across both is probably the single most misleading figure this industry reports to itself. It also hides the effect that matters most: candidate supply is a cost of delivery while client demand funds the desk, and a source can be excellent at one and useless at the other.

05

Rebates, fallout and the figure worth exporting

Permanent fees are not final when they are invoiced. A candidate resigns inside the guarantee period, a rebate is issued, and the fee is partly or entirely reversed. Firms that report on invoiced fees carry those reversals as a separate line somewhere in finance and never propagate them back into the marketing view, so a source producing placements that do not stick keeps its position at the top of the table indefinitely. Nobody intends this. The reversal happens in a different system, weeks later, and by then the marketing report for that month has been circulated and filed.

Exporting net fee income instead — what survived after rebates and credit notes — reorders things. Retention differs by client type, client type differs by channel, and the effect is large enough that this is not a rounding adjustment. A source producing price-sensitive clients with heavy fallout can look like the best performer on gross fees and a poor one on what the firm actually kept at year end. Contract books have their own version of the same problem, where an assignment ends early and the revenue everybody forecast never bills at all.

Whichever figure is chosen, the discipline is to keep it consistent across every period being compared. Gross fees in one year and net in the next produces a trend that is entirely an artefact of how the file was built. Deciding once, writing the decision down where the next person will find it, and using the same column every time is the least interesting part of this exercise and the part that most often determines whether anyone believes the output.

Why it matters

What changes when you can prove it.

You stop defending the budget and start growing it

"We generated 400 leads" invites an argument. "This channel closed $186,400 last quarter, here is the reconciliation" ends one. The teams that can show closed revenue by channel are the teams that get the next increase approved, because they are asking with evidence rather than with conviction.

You can cut the wrong channel without a fight

Killing spend is politically harder than adding it, because someone always owns the channel being cut. A number that reconciles to the sales export takes the argument out of the room — you are not overruling a colleague's judgment, you are reading the same ledger they are.

Your reporting survives the finance review

Platform-reported conversions do not reconcile to revenue, and eventually someone in finance notices. Reporting built from your own closed-sales export starts from the number finance already trusts, which is why it holds up when it is checked.

You answer in an afternoon, not a quarter

Because this reconciles exports rather than tracking visitors, it works on months that have already closed. You are not instrumenting now to learn something in ninety days — you can answer for last quarter today, which is usually when the question is being asked.

Honest answers

The pushback we hear from Staffing & Recruitment.

They say

Our ATS holds candidates, not clients.

We say

Export the client side — filled placements with the hiring contact, the margin or fee, and the date. Candidate data is not needed and should not be included.

They say

Much of our business is referral and repeat.

We say

It lands in Direct / Unknown, which is honest, and its size is a finding in itself. In this industry it is usually the largest single bucket.

They say

Margin varies enormously by placement.

We say

Which is exactly why ranking on margin rather than placement count matters — export the figure your team plans on and keep it consistent.

Pricing

Flat monthly pricing. No per-call fees.

The price here is the price on the invoice, plus any sales tax that applies — no per-call, per-minute or per-form fees. Enterprise usually fits staffing firms and recruitment agencies — ten seats for the team and the highest monthly record allowance, since a year of closed deals is a lot of rows.

Enterprise

One business closing at volume

$499/mo

billed monthly

  • 1 workspace · 10 seats
  • 25,000 sales records / month
  • 24-month history
  • Campaign drill-down and period comparison
  • Single sign-on through your identity provider
  • Your logo on every report
  • Roles, permissions and guided onboarding
  • Priority support

Questions

Questions we get about Staffing & Recruitment.

Anything else? Talk to us — a person answers, usually the same day.

Filled placements: a hiring-contact email or phone, the fee or margin, and the placement date.

Start today

Stop guessing which ads pay off.

Upload two exports and see your real revenue by channel in minutes. 14 days free, no card.