Attribution dies at the boundaries between systems — the click that never reaches the CRM, the call that lives only in the call platform. Fix the joints rather than buying a bigger dashboard. Perfect attribution is a myth; defensible attribution is not.
Most attribution problems are not analytics problems. Teams respond to unreliable attribution by buying a more sophisticated tool, adopting a multi-touch model, or commissioning a new dashboard. Then the new dashboard shows the same gaps, just more attractively.
The reason is that attribution rarely fails inside a system. It fails at the boundaries between systems. A buyer’s journey passes through an ad platform, a website, a form, a CRM, perhaps a call-tracking platform, a sales conversation and finally a closed deal. At every hand-off, information can fall on the floor. Once it has, no model downstream can recover it.
Threading is the discipline of making sure the information survives every hand-off.
Where the thread breaks
These are the joints where attribution most commonly dies:
- Click to form. Campaign tags and click identifiers exist in the landing page URL but are never captured when the form is submitted. The lead arrives in the CRM with no idea where it came from.
- Inconsistent tagging. The same campaign tagged five different ways by five different people, so reporting fragments into dozens of near-duplicate sources.
- Phone calls. A buyer clicks an ad and calls instead of filling in a form. The call exists in the call-tracking platform and nowhere else.
- Manual opportunity creation. A rep creates an opportunity by hand with no source, so a deal that began with a paid click shows up as unattributed.
- Merges and overwrites. A contact is merged or re-imported and the original source is overwritten by whatever touched it last.
- Revenue never goes back. The deal closes in the CRM, but the ad platform never learns about it, so its bidding keeps optimising for form fills.
Repairing each joint
Capture at the point of entry. Every form should store campaign parameters and click identifiers in hidden fields that write to the CRM record. Google’s documentation is explicit that the click ID should be stored with the prospect’s information, and notes that it is case-sensitive — small details that break imports when missed.
Enforce a tagging convention. A written convention for campaign parameters, and a URL builder that makes following it the path of least resistance. Free-text tagging always drifts.
Wire calls into the CRM. Call-tracking platforms can pass call records, with their source, into the CRM as activities or leads. The CallRail and Salesforce integration guide covers one common setup.
Require a source on every opportunity. Make it a required field, and default it from the originating contact where possible, so reps are not asked to remember.
Protect original source. Keep separate first-touch and most-recent-touch fields, and write first-touch once. Merges and imports should never overwrite it.
Send revenue back. Sync qualified opportunities and closed deals back to the ad platforms through offline conversion imports. Platforms limit how long after a click a conversion can be uploaded, so this needs to run automatically on a schedule rather than as an occasional export. Once it runs, the platforms can learn from revenue instead of from form fills — the change at the heart of optimising on revenue, not activity.
Why perfect attribution is a myth
It is worth being honest about the ceiling. No attribution approach will give you a perfect, complete picture of why every buyer chose you:
- Much of the real buying journey happens where you cannot see it — conversations between colleagues, peer recommendations, communities, podcasts, a search six months ago on a personal device.
- Privacy changes and consent requirements mean a growing share of digital behaviour is legitimately not observable.
- Multi-touch models assign credit using rules that are ultimately assumptions. They can be useful, but they are not measurements.
That is why the goal is defensible attribution rather than perfect attribution: a record where every closed deal can be traced back to at least a credible source, the gaps are known and small, and the numbers hold up when a finance lead asks how they were produced. Complementing tracking with self-reported attribution — simply asking buyers how they heard about you — fills in some of what tracking cannot see.
A ten-deal test
You can find out how healthy your thread is in an hour. Pick your last ten closed-won deals and try to trace each one back to its original source using only what your systems record. If you can do it for eight or more, your thread is in reasonable shape. If you can do it for fewer than half, no dashboard will help until the joints are fixed.
Where to go next
Cost per pipeline dollar is the metric this plumbing makes possible. The four layers of ad waste explains how broken tracking corrupts bidding. And the revenue data workflow covers the operational setup end to end.