Where did this lead come from?

A South African financial services client was buying media across several channels and getting leads, without being able to say which spend produced which lead. Every channel claimed the wins and the budget meetings ran on anecdote. We built them a lead attribution structure: a way to measure source and campaign performance across the funnel, from the click that started a journey to the submission that ended it. The client is unnamed because the lessons apply widely.

Why attribution breaks

Attribution rarely breaks in one place. It erodes. Links go into market carrying tracking tags, the small labels a link carries to say where it came from, which campaign placed it, and what it cost to place. Each agency tags in its own style, campaign names drift with every brief, and half the placements ship with no tags at all. Whatever survives that journey usually dies at the final step anyway, because the form that captures the lead throws the tracking away and stores a name and a phone number.

The result is a funnel that is measurable at the top, where the ad platforms report their own numbers, and blind from there down. The platforms grade their own homework while the business, which pays for all of it, cannot connect a single lead back to the spend that produced it.

What we built

Three things, and the order matters.

First, a UTM structure: a fixed naming scheme for the tracking tags every link carries, covering source, medium, and campaign. The scheme was designed backwards from the questions the business wanted answered, so that grouping leads by any tag produces a report someone actually asked for, rather than a list of creative spellings of the same channel.

Second, a media runbook, designed and then enforced. It specifies how every placement is named, tagged, and put into market, and following it is a condition of going live rather than a suggestion. Enforcement is what separates a structure from a convention, because an unenforced convention decays into folklore within two campaign cycles.

Third, a forms service to close the loop. It captures each lead submission and stores it together with the tracking metadata the visitor arrived with, so the lead record itself says which source, campaign, and placement produced it. The funnel stopped losing its memory at the last step, which is the step that matters.

What changed

Source and campaign performance became something the client measures rather than debates. Leads connect back to the spend that produced them, weak placements lose their budgets on evidence, and the channel conversations moved from claiming credit to reading the same report.

What we would tell you

  • Attribution is a discipline rather than a tool. A dashboard bought without a naming structure, a runbook, and capture that keeps the metadata will faithfully visualise noise.
  • Design the naming scheme backwards from the reports. Every tag should exist because a question exists, since tags nobody queries become tags nobody maintains.
  • Enforce the runbook or skip the exercise. One untagged campaign quietly poisons every report that follows it, and the erosion starts the day enforcement stops.
  • Keep the tracking through the form. Most funnels lose attribution at the moment of conversion, which is precisely the moment attribution exists to explain.

Arguing about which channel deserves the credit? Tell us what’s on fire