The question your marketing spend can't answer

Ask a small team where their leads come from and you'll usually get a confident answer: a chunk from referrals, some from a trade show, a steady trickle from the website, a paid campaign here and there. Ask the follow-up question — which of those channels actually turned into closed revenue? — and the confidence evaporates. Lead counts are easy to see; revenue by source is not, because it requires connecting a contact's origin all the way through to a won deal weeks or months later.

That gap is expensive. Without it, you fund whatever feels productive: the channel that generates the most leads, the event everyone enjoyed, the campaign with the best open rate. But leads are not revenue. A channel can flood your pipeline with contacts who never buy while a quiet referral source closes a handful of deals worth ten times as much. Lead source attribution is the discipline of tagging every contact with where it came from and then reporting revenue — not just lead volume — back against that source. Done well, it turns "we think events work" into "events cost us this much and returned that much."

The one field that makes it possible

Attribution lives or dies on a single field: lead source, captured on every contact record the moment it enters the CRM. It sounds trivial, and it is exactly the thing teams get wrong. The field either doesn't exist, or it has forty inconsistent values ("Website," "web," "site," "Web form," "Inbound") that make reporting meaningless. If you haven't already, this is the same clean-by-default habit we argue for in CRM data hygiene and what to track on a contact record.

Three rules keep the source field usable:

  • Keep the list short and fixed. A handful of sources you can actually act on — Referral, Website, Event, Paid, Outbound, Partner — beats a sprawling free-text field. If you can't imagine changing a decision based on a value, don't add it.
  • Capture it automatically where you can. A web form should stamp its own source; an imported event list should be tagged on import. Human memory is the least reliable source of source data.
  • Set it once, don't overwrite it. The first touch that created the contact is the attribution you're tracking. If a referral later attends an event, that's an interaction to log, not a reason to rewrite the origin.

First touch, last touch, and why small teams should start simple

Attribution theory can get baroque — multi-touch models that split credit fractionally across every interaction a buyer had. For a small team, that's a trap. The honest answer is that you rarely have enough volume for fractional models to mean anything, and the effort to maintain them swamps the insight.

Start with first-touch attribution: credit the source that originally created the contact. It answers the most useful question — which channels bring us people who eventually buy? — and it's the one thing you can capture cleanly with the single source field above. Once first-touch is solid and you're actually using it, you can layer in last-touch (what was the final interaction before they became an opportunity?) to understand what closes rather than what originates. Most teams never need more than those two, and the ones that do usually have a dedicated marketing operations person to run them.

Connecting source to revenue, not just leads

Here's where attribution earns its keep. The report you want is not "leads by source" — it's the pipeline and revenue those sources produced. Because the source field rides on the contact, and the contact is linked to its deals, your reports and analytics can roll won-deal value up by source. Now you can see the numbers that actually matter per channel:

  • Deals won and total revenue — the headline, and often a surprise. The highest-volume source is frequently not the highest-revenue one.
  • Win rate by source — a channel with fewer leads but a far higher close rate is telling you those leads are better qualified, which connects directly to lead scoring.
  • Average deal size by source — referrals and partner leads often close larger than cold inbound.
  • Sales cycle length by source — some channels produce faster deals, which matters as much as size (see sales velocity).

Put those side by side and "cost per lead" quietly gives way to the real question: cost per dollar of closed revenue. That's the number that should steer your budget.

Turning the report into decisions

Attribution is only worth the effort if it changes what you do. When the revenue-by-source picture is in front of you, a few decisions usually follow. Double down on the sources with strong win rates and deal sizes, even if their raw lead counts look modest. Scrutinize the high-volume, low-close channels — they may be feeding reps junk that erodes trust in marketing leads entirely, the failure mode we describe in MQL vs SQL. And revisit it on a cadence, because channel performance drifts; what worked last year quietly stops.

Attribution won't make a bad channel good, and it won't replace judgment. What it does is replace anecdote with a number you can defend — the same standard we hold forecasts to in deal forecasting you can defend. If you're trying to prove marketing and CRM are paying off at all, this is the backbone of that case; measuring CRM ROI builds on exactly this data. Start with one clean source field, wire it to your revenue reports, and let the money tell you where to spend next.