AI, automation & integrations — made simple for your business
Hiring

Hiring Attribution: Give Every Channel Its Share of the Hire

A candidate sees your ad, applies through a vendor site, gets a recruiter link, applies again, and hires months later. Your ATS credits one channel; three vendors claim the hire. This is how to build attribution that credits every channel honestly — and how to read the whole funnel, not just the finish line.

← Back to Blog

Here is the story behind more hiring invoices than any other: a truck driver sees your paid social ad, clicks, and applies through a vendor job board. A recruiter calls, texts a short link to your careers page, and the driver applies again from that link. Three weeks later they start orientation, and two months after that they are on the road. When you open your ATS, the hire is attributed to the careers site — because that was the last link touched. The job board sends an invoice claiming the hire. The ad platform reports the click that started everything. All three have a claim, and all three have a piece of the truth.

This is the attribution problem in hiring, and it is worse than the sales version because the hiring funnel is built out of vendors. Job boards, aggregators, outreach platforms, paid social, programmatic, your own careers site — every one of them records the candidate in its own system and every one of them will happily take credit for your hires. Without an attribution model, you judge channels by whoever happened to be present at the finish line, you cut the channel that actually started the journey, and your cost-per-hire is fiction. This article is the fix: the different ways attribution can be done, which models to run in a hiring funnel, and how to look at the whole funnel instead of just the last click before a hire.

Why Hiring Attribution Breaks Faster Than Sales Attribution

Sales attribution breaks because buyers touch many channels. Hiring attribution breaks faster because the funnel is not just multi-channel — it is multi-vendor, multi-application, and multi-person. The candidate in the opening story touched paid social, a job board, a recruiter call, a texted link, and the careers site before anyone said yes. Each of those touches happened in a different system with its own tracking, its own dashboard, and its own salesperson on the phone.

The first reason hiring attribution breaks is that your ATS records the intake pipe, not the channel. When an application arrives through a vendor integration or an application form, the system logs the endpoint it came through — the vendor's submission, the API, the embedded form. That is useful for plumbing and useless for marketing. A lead that started as a paid social click can arrive through a vendor's application flow, and the ATS will credit the vendor. The channel that created the interest is invisible to it.

The second reason is that recruiters change the source. This is the curve ball that surprises most operators: the recruiter sends the candidate a short link to apply directly, the candidate applies again from that link, and the recorded referrer changes. The same person who entered through paid social now looks like a careers-site or direct applicant. It is not a data error — it is how the work actually happens. Recruiters are trying to close candidates, not to keep your attribution clean, and they should not be asked to.

The third reason is duplicates. The same candidate applies two, three, five times across vendors, links, and devices. Raw application counts overstate everything, and if you compute cost per hire without deduplicating people, you will understate the cost and overstate the volume. We routinely see fifteen to twenty percent of raw rows in a hiring export turn out to be the same people.

The fourth reason is the calendar. A hire is the end of a journey that can run weeks or months, with touches spread across platforms and long silences in between. By the time someone starts, nobody on the team remembers which channel brought them in — and the systems disagree anyway. The ATS shows the last link, the vendor dashboard shows its own lead, and the recruiter remembers a phone call. Attribution has to be built from data captured at the moment of entry, not from anyone's memory.

The result of all four is predictable: the finish line takes the credit. The careers site, the recruiter link, and the last vendor get the hires; the channels that created the demand get nothing. Budget follows the finish line, the early-stage channels get cut, and the funnel quietly empties. That is the spiral this article exists to stop.

  • The ATS records the intake pipe (which integration delivered the application), not the channel that created the interest
  • Recruiters re-link candidates, so the recorded referrer changes mid-journey
  • The same candidate applies multiple times — dedupe before you count anything
  • Hires happen weeks after first touch, so the systems disagree and memory is useless

What Every Vendor Tells You

Every vendor in your funnel has a dashboard that shows exactly why you should spend more with them. The job board shows applications. The outreach platform shows conversations. The ad platform shows clicks and cost per click. None of them shows the whole journey, and each one is structurally biased toward its own metric. This is not malice — it is the same single-touch view your ATS has, wearing a different logo. The only way to arbitrate between them is data you own: a candidate-level record of every touch, joined across systems, with the original source preserved.

First-Touch vs Last-Touch: The Fight Between Them

Attribution models are answers to one question: when a candidate hires, which channel gets the credit? The two simplest answers are last-touch and first-touch, and they fight each other in every hiring review.

Last-touch gives the hire to the channel of the final recorded touch before the application — usually a recruiter link, a careers-site visit, or a vendor form. It is the default of most ATSs and most vendor reports, because it is the easiest thing to compute: whatever happened last gets everything. What it gets right is that the last touch is real — somebody did click that link and submit that application. What it misses is that the last touch is almost never the reason the candidate exists. The driver in our story would not have been in the funnel at all without the paid social ad; the recruiter link just moved an already-warm candidate across the finish line.

First-touch gives the hire to the channel that first brought the candidate in. It answers the question that actually matters for budget decisions: who created the demand? The paid social ad, the job board, the programmatic campaign that produced the first application gets the credit. What it gets right is that demand creation is the job of marketing, and rewarding it keeps the top of the funnel fed. What it misses is the closing work — the recruiter call, the text, the follow-up that turned a maybe into a hire. If you reward only first touch, you will under-credit the operations that convert, and your team will stop doing it.

The fight happens every month. The ATS says the careers site produced the hire, the vendor dashboard says the job board did, and your own send log says the candidate came from paid social. All three claims are defensible, and none of them is complete. That is the moment most teams pick a side and argue — and the moment a multi-touch model becomes worth having.

The chart below shows the same set of hires credited three different ways. Watch what happens to paid social and the job boards when the model changes: they go from zero to meaningful, while recruiter outreach goes the other direction. Nobody is cheating; the model is just deciding what the numbers mean.

  • Last-touch: simple, matches vendor invoices, rewards whatever happened last
  • First-touch: answers who created the demand, but needs the original source captured at intake
  • The ATS, the vendors, and your own send log will all disagree — that is normal, not a bug
  • Pick a model on purpose instead of inheriting one by default

Illustrative hire credit by channel under three attribution models — last-touch rewards the finish line, first-touch rewards demand creation, and multi-touch splits the difference.

Multi-Touch Models You Can Actually Run

Multi-touch attribution splits the credit for one hire across every channel that touched the candidate. The models differ in how they split it, and the differences matter less than you think. The important thing is to pick one, run it consistently, and let it arbitrate the vendor fight.

The linear model gives every touch an equal share. If a candidate touched paid social, a job board, a recruiter link, and the careers site, each channel gets twenty-five percent of the hire. It is the easiest to explain and the fairest when you have no reason to believe one stage matters more. Its weakness is that it treats the ad that created interest and the recruiter call that closed the deal as equals, which they rarely are.

The time-decay model gives more credit to touches closer to the hire. The idea is that recent touches are more influential on the final decision. It is a reasonable model when the decision is made late in the journey — which is true of many hires, because the last conversations are often the ones that close. Its weakness is that it drifts toward the same bias as last-touch: the finish line gets most of the credit.

The position-based model, sometimes called U-shaped, gives forty percent of the credit to the first touch, forty percent to the last touch, and splits the remaining twenty percent across everything in between. This is the model we recommend as the default for hiring, because it matches the structure of the work: the first touch created the demand and the last touch closed it, and the middle kept the candidate alive. It credits both marketing and recruiting, which is exactly what a hiring funnel needs.

Data-driven models use machine learning to learn the credit weights from thousands of journeys. They are genuinely more accurate at scale, and they are also the most expensive and the least explainable. They are worth considering when you have high volume, clean touch data, and a budget large enough that a small shift in allocation is real money. For everyone else, a position-based model in a spreadsheet is more honest than a black box you cannot defend in a review.

A practical way to start is a monthly sample: pull ten recent hires, map every touch for each one, and assign credit with your chosen weights. Ten journeys will not give you statistics, but they will show you the shape of the problem — how often the first touch and the last touch are different channels, and how often the middle matters. That shape tells you which model to trust. And whatever model you choose, keep the weights fixed for a full quarter — changing the model mid-stream is how teams talk themselves into conclusions the data never supported.

  • Linear: equal credit for every touch — easiest to explain
  • Time-decay: recent touches weigh more — drifts toward last-touch bias
  • Position-based (40/40/20): first and last touches dominate, middle splits the rest — the honest default for hiring
  • Data-driven: ML-learned weights — accurate at scale, expensive and hard to defend
  • A monthly ten-hire journey sample will tell you which model your funnel needs

The Hand-Off Effect

The most important idea in hiring attribution is the hand-off. Marketing creates the candidate; recruiting closes them. A hire that entered through paid social and closed through a recruiter link is not a paid social hire and not a recruiter hire — it is a hire that two parts of the operation earned together. Multi-touch attribution exists to record that hand-off instead of erasing it. When you see a channel that produces almost no last touches but appears in the first-touch column of your hires, you are looking at the demand side of the funnel. When you see the opposite — a channel that closes hires it never started — you are looking at the conversion side. Both are real, and both deserve credit.

Running It in a Spreadsheet

You do not need attribution software to run a position-based model. Build a table with one row per candidate and one column per channel; mark which channels touched that candidate and in what order. Apply the weights — forty percent first, forty percent last, the rest split across the middle — and sum each channel's share of the hires. That is the model. Run it for ninety days before you act on it, compare it to what last-touch was telling you, and expect the two pictures to disagree. The disagreement is the finding: it means some channel was being over- or under-credited, and now you know which.

The Whole-Funnel View: From Click to First Day

Attribution on hires alone is still too late. A channel can look great at the finish line and terrible everywhere else — or the reverse. The fix is to judge every channel at every stage of the funnel: candidates, applicants, qualified, orientation, and hired. The chart below shows a real recruiting funnel, de-identified. Notice the shape: nearly all the volume is at the top, and the funnel narrows hard at every stage.

The funnel tells you where the money goes and where it dies. If a channel produces candidates but almost none of them apply, the problem is usually the offer or the application friction. If they apply but few are qualified, the targeting is wrong — the channel is reaching people who were never your candidate. If they are qualified but never respond to follow-up, the lead quality is low and your team is paying for it in wasted calls. Each failure mode points at a different fix, and none of them is visible in a hires-only report.

The channel verdicts follow from the funnel. A channel that produces qualified candidates and hires at an affordable cost is Good — feed it. A channel with volume but wobbling quality or creeping cost is Fair — diagnose it. A channel that spends without producing, or produces candidates who never respond, is Problem — fix it fast or kill it. Write the verdict down every month; the act of naming a channel changes the conversation.

Cost-per-hire by channel is the number that ties it together: spend on the channel divided by hires credited to it under your model. It is an estimate — the model is a model — but an estimated cost per hire beats no number, because it is comparable across channels and across months. Watch the trend, not just the level: a channel whose cost per hire is drifting up is a channel whose quality is eroding, and the funnel will show you why.

The last thing the whole-funnel view reveals is the capacity trap. We routinely see hiring funnels where more than ninety percent of candidates are never touched by a human — no call, no text, no follow-up. No attribution model fixes that. If your funnel is full of untouched candidates, the bottleneck is follow-up capacity, not channel performance, and the honest next dollar goes to operations, not media. Attribution tells you where to spend; the funnel tells you whether you can convert what you buy.

  • Track every stage per channel: candidates, applied, qualified, orientation, hired
  • Not interested means the ad is overselling; not qualified means targeting; no response means lead quality
  • Cost per hire by channel = spend divided by hires under your model — an estimate, but comparable
  • If 90% of candidates are never touched, the bottleneck is follow-up capacity, not channels

Illustrative candidate funnel from first touch to hire — most volume is at the top, and the funnel narrows hard at every stage.

The Setup: What to Track So Attribution Is Possible

Attribution is only as good as the data captured at the moment of entry, so the setup has one job: preserve the original source of every candidate and record every touch after it. The first rule is to capture first touch at intake. When a candidate first enters your funnel — through an ad, a job board, a programmatic campaign, or the careers site — record the original referrer and the campaign tag before anything else happens. This is the number that first-touch and position-based models need, and it is the number that disappears the moment a recruiter sends a new link.

The second rule is one source of truth. Build a candidate-level table — one row per person, joined by email with phone as the fallback — that keeps the original source, the latest source, and the touch order together. This is the table your ATS does not have, because the ATS sees applications, not people. Joining your send log to the ATS export on email and phone is what turns two partial pictures into one complete one, and it is how you discover the hires that changed source mid-journey: sent as paid social, recorded as careers site, still yours either way.

The third rule is dedupe before you count. Same candidate, multiple rows, one person. Count each hire once, and count everyone who was ever hired — including the ones who later left, because a terminated driver is still a hire for attribution purposes. This one rule fixes more bad numbers than any model choice.

The fourth rule is the monthly reconciliation. Pull spend by channel from your ad platforms, pull hires by channel from your joined table, and fill the same sheet every month: candidates, applied, qualified, orientation, hired, spend, cost per hire, verdict. This is the same monthly rhythm we describe in our attribution playbook for marketing teams, applied to hiring — and it is deliberately boring, because boring systems get maintained.

Finally, keep the honest expectation in view. No attribution model is perfectly fair, and every vendor will still argue with the one you choose. The goal is not a perfect model; it is a defensible answer to the question that matters — where should the next hiring dollar go? A position-based model in a spreadsheet, fed by first-touch data you captured on day one, is a better answer than any dashboard that credits the last click.

  • Capture the original referrer at intake — before recruiters re-link candidates
  • Join your send log to the ATS export on email and phone into one candidate-level table
  • Dedupe by email and phone; count each hire once; count everyone who was ever hired
  • Reconcile spend vs hires monthly and write a verdict for every channel
  • Buy tooling only when overlap, volume, or vendor disputes make the spreadsheet insufficient

The Monthly Verdict

Once a month, assign every channel a written verdict — Good, Fair, or Problem — with one action per channel, an owner, and a date. The verdict meeting is where attribution stops being a report and becomes a decision. The job board that claims hires it never produced gets shown the first-touch column. The paid social channel that looked dead in the ATS gets credit for the demand it created. And the channel with ninety percent dead candidates gets the conversation nobody wanted to have. The same funnel logic that powers our breakdown of the real cost of hiring is what makes the verdicts honest: every leak in the funnel is a line item somewhere.

When to Buy Tooling

You can run this setup for a long time without buying anything. Buy real attribution tooling when the channels overlap so heavily that your spreadsheet can no longer separate them, when your spend is large enough that a small allocation shift is real money, or when the vendor fight is costing you actual budget. When you buy, buy for one question — given everything a candidate touched, where should the credit go — and keep the simple sheet running alongside. The tool gives you a more sophisticated model; the sheet keeps you honest. When they disagree, that disagreement is the most interesting number in the room, and it is the conversation you want to be having. Hiring at volume changes the math further, which is the subject of our volume-hiring playbook — more candidates means more duplicates, more re-links, and more reason to have the system in place before you need it.

Frequently asked questions

Which attribution model should a hiring team start with?

Position-based, also called U-shaped: 40% to the first touch, 40% to the last touch, and 20% split across the touches in between. It is the honest default for hiring because it credits both demand creation (the ad or job board that brought the candidate in) and closing (the recruiter link or call that finished it). You can run it in a spreadsheet with a monthly sample of ten hires before you ever buy tooling.

Why does my ATS show a different source than the one we sent?

Because your ATS records the intake pipe — the integration or endpoint that delivered the application — not the channel that created the interest. And recruiters routinely send candidates new links, which changes the recorded referrer mid-journey. The original source lives in your own send log and lead data, not in the ATS. Joining the two on email and phone is how you recover the true first touch.

Do duplicate applications break attribution?

Yes. The same candidate can appear two to five times across vendors and links, and raw counts will overstate volume and understate cost per hire. Deduplicate by email with phone as the fallback, count each candidate once, and count everyone who was ever hired — including people who later left, because a terminated hire is still a hire.

Is cost-per-hire by channel worth anything if the model is imperfect?

Yes. An estimated cost per hire is comparable across channels and across months, which is what you need for budget decisions — and it beats a confident guess, which is what you have without it. Label the number as an estimate, keep the model consistent, and watch the trend. The direction of the trend tells you more than the absolute value of the number.

Key takeaways

  • Last-touch gives the whole hire to the channel at the finish line — usually a recruiter link or the careers site — and starves the channels that created the demand.
  • First-touch answers who created the demand, but it requires capturing the original source at intake, before recruiters re-link candidates.
  • A position-based model (40/40/20) is the honest default for hiring: it credits both demand creation and closing, and you can run it in a spreadsheet.
  • Judge channels across the whole funnel — candidates, applied, qualified, orientation, hired — because the leak pattern tells you the fix: overselling, targeting, or lead quality.
  • Preserve the original referrer at intake, dedupe by email and phone, and reconcile spend vs hires monthly — a defensible estimate beats a confident guess.

Want to see which channels actually produce your hires?

Send us your ATS export and your spend numbers — we will build the funnel view, run the attribution, and tell you which channels are earning their keep and which are billing you for someone else's work.

Start the conversation → More articles