The Death of Last-Click: a Measurement Model Your CFO Will Trust
Attribution has quietly become a board-level argument. A pragmatic, defensible framework for moving beyond last-click without losing the finance team's confidence, drawn from three years of rebuilding measurement at scale.
For the better part of a decade, last-click attribution was the lingua franca between marketing and finance. It was simple, it was reproducible, and it was wrong. As privacy changes erode tracking and AI-led bidding blurs channel boundaries, the spreadsheet that credits a single touch is no longer just imprecise. It is actively steering budget in the wrong direction.
This is not another think piece arguing that attribution is dead. It is a practical account of how we rebuilt measurement at a mid-market retailer, the mistakes we made, and the model that finally earned a nod from a sceptical finance director. The goal throughout was not perfection. It was a number the business could agree to act on.
Why last-click quietly fails
Last-click rewards the channels that close, never the channels that create demand. In practice this means brand search, retargeting and email get fat with credit while the upper-funnel work that made any of it possible looks like a cost centre. Cut the top, and three months later the bottom dries up, and nobody can quite explain why.
The deeper problem is incentive. When your reporting credits the last touch, your team optimises for the last touch. You will get very good at harvesting demand and very bad at building it.
Your attribution model is not a reporting choice. It is an incentive system. Whatever it rewards is what your team will quietly optimise towards, for better or worse.
The three-layer model
We settled on a model with three layers that answer three different questions, rather than one model pretending to answer all of them. Each layer has a different owner, a different cadence, and a different tolerance for error.
Layer one: incrementality as the source of truth
Geo experiments and holdout tests tell you what actually changed because of your spend. They are slow and they are coarse, but they are causal. We run a rolling programme of geo tests on the channels big enough to measure, and treat those results as the anchor every other number is calibrated against.
Stop asking your attribution model to be precise. Ask it to be directionally honest, then let experiments correct the drift.
From WeDiscover's internal measurement playbook
Layer two: a data-driven model for the day to day
For weekly optimisation you need something faster than a geo test. A data-driven attribution model, calibrated against your incrementality results, gives the team a usable signal between experiments. The trick is to never trust it in absolute terms. Trust the direction, sanity-check the magnitude against layer one.
The table below shows how credit shifts for a typical converting journey once you move from last-click to a calibrated data-driven model.
| Touchpoint | Last-click credit | Calibrated model |
|---|---|---|
| Paid social (prospecting) | 0% | 31% |
| YouTube (consideration) | 0% | 18% |
| Generic paid search | 0% | 22% |
| Brand paid search | 100% | 21% |
| Retargeting | 0% | 8% |
Layer three: a marketing mix model for the board
Finance does not want channel-level minutiae. They want to know whether the total marketing investment is paying back, and what happens to revenue if the budget moves by twenty percent. A marketing mix model, refreshed quarterly, speaks their language and survives the loss of user-level tracking entirely.
Getting finance to say yes
The model is the easy part. Winning the argument is the work. Three things moved the needle for us, and none of them were technical.
- Show the cost of the status quo. We ran one quarter following last-click guidance, then showed the geo-test evidence of the demand we had under-funded.
- Agree the error bars up front. Finance can live with uncertainty if you name it. We presented ranges, not false-precision point estimates.
- Tie it to a decision, not a dashboard. Every measurement output mapped to a specific budget decision. No orphan metrics.
Here is the calibration step we run weekly, simplified, to keep the data-driven model honest against the latest experiment:
def calibrate(model_credit, geo_lift, prior_weight=0.4):
# blend the fast model with the slow, causal signal
calibrated = (prior_weight * model_credit
+ (1 - prior_weight) * geo_lift)
return round(calibrated, 3)
Where to start on Monday
You do not need a data science team to begin. Start with one honest holdout test on your largest channel. That single experiment will tell you more about your real return than a year of last-click reports, and it will give you the evidence you need to fund the rest of the work.
Measurement maturity is a direction, not a destination. The teams that win are not the ones with the most sophisticated model. They are the ones whose marketing and finance functions trust the same number enough to make a decision together.
