🙌 Our latest webinar is live!
Nov 7
Attribution

Lead Attribution: How to Credit Every Lead to Its Source

Andre Sottil
Founder & CEO, Admira

Lead attribution is the practice of recording which marketing touches produced each lead and assigning credit to those touches, so you can compare channels, campaigns and ads by the leads, and later the sales, they generate. In practice it means capturing source data at the moment a lead is created (UTM parameters, click IDs, landing page, entry channel), storing it in CRM fields that never get overwritten, and applying a clear rule or model for credit. Most lead attribution fails at the capture step, not the model.

This guide covers the data each lead needs, which model fits which question, a step-by-step setup, a worked example and the problems that break lead attribution in real CRMs.

What is lead attribution, and how is it different from revenue attribution?

Lead attribution credits the creation of a lead. Revenue attribution credits the money that lead eventually brings. You need the first to do the second, but they answer different questions.

Lead attributionRevenue attribution
Unit creditedA new lead or contactA closed sale and its value
AvailableSame dayWeeks or months later
Main questionWhich sources bring leads, and at what cost?Which sources bring money, and at what return?
Main riskRewarding channels that bring cheap, unqualified leadsSlow feedback, missing links between lead and sale

The honest goal of lead attribution is to be the first link in a chain that reaches revenue. For the second half, read revenue attribution.

What data should every lead carry?

FieldExampleRule
Original source / mediumfacebook / paid_socialWrite once, never overwrite
Original campaign, ad set, adq1_leads / lookalike_3 / video_demo_v2Write once
Latest source before conversiongoogle / cpcUpdate on each new conversion
Click IDsgclid, fbclid, ctwa_clidStore as captured; needed to send outcomes back to ad platforms
Landing page/financing-plansFirst page of the converting session
Entry channelWeb form, Meta lead form, WhatsApp, call, walk-inRequired picklist
Lead created date2026-03-14System field
Self-reported source"Saw you on TikTok"Optional free text or picklist

CRMs handle part of this for you. HubSpot, for instance, sets Original and Latest Traffic Source properties with drill-down values (a contact whose latest visit came from a Facebook ad shows "Paid social" with "Facebook" as drill-down 1), and the drill-downs are set automatically and cannot be edited by hand, per HubSpot's traffic source documentation. Click IDs come from the platforms: Google Ads auto-tagging appends a GCLID to ad URLs and is required for offline conversion tracking, per Google's auto-tagging help page. Capturing them into the CRM is covered in how to pass UTM parameters into your CRM.

Which model should you use to attribute leads?

ModelCreditsBest for
First touchThe touch that first brought the personJudging awareness and prospecting channels
Lead-conversion touch (last touch before the lead)The touch that triggered the form, chat or callJudging conversion campaigns and landing pages
Position-basedMost credit to first and lead-conversion touches, the rest to the middleTeams that want one blended number
LinearEqual credit to every recorded touchLong journeys with many similar touches
Self-reportedWhat the lead saysChannels links can't track: podcasts, word of mouth, dark social

A practical default: report first touch and lead-conversion touch side by side, and add self-reported source as a third column. See self-reported attribution for how to ask the question without biasing the answer.

How do you set up lead attribution step by step?

  1. List every entry point. Web forms, Meta and Google lead forms, Click-to-WhatsApp ads, phone numbers, chat widgets, events, walk-ins. Each needs a capture method.
  2. Fix your UTM convention. Lowercase, one spelling per source, campaign names that match the ad account.
  3. Turn on click IDs. Google Ads auto-tagging (GCLID), Meta's fbclid on links, and the ctwa_clid for WhatsApp chats on the WhatsApp Business Platform.
  4. Add hidden fields to every form. Store UTMs, click IDs and landing page with the submission.
  5. Cover non-form channels. Use call tracking numbers for calls (see phone call attribution) and a WhatsApp integration that writes the source ad onto the CRM record.
  6. Create write-once original fields. Protect original source fields from imports and manual edits.
  7. Define duplicate rules. Decide what happens when an existing lead converts again: keep the original source, update the latest source, and log the new touch.
  8. Ask the self-reported question. One optional field: "How did you hear about us?"
  9. Report beyond lead counts. Group by source and show leads, qualified leads, sales and cost per each.

Example: the same 400 leads under different views

Example (hypothetical numbers): a month with $8,000 in ad spend and 400 leads.

SourceSpendLeads (first touch)Leads (conversion touch)QualifiedSalesCost per sale
Meta ads$4,000200150459$444
Google Ads$3,000801405614$214
TikTok ads$1,000603092$500
Organic / direct$06080308n/a

(Qualified and sales here are counted on the conversion-touch leads.) On first touch, Meta looks like the lead machine with $20 per lead. On conversion touch with sales attached, Google Ads closes leads at less than half Meta's cost per sale. Neither view is "the truth": Meta is opening journeys that Google often finishes. The useful decision is to keep both, cap Meta spend on ad sets whose leads don't qualify, and move budget toward the ad sets that produce qualified leads. For more on this tradeoff, see cost per lead vs cost per sale.

What breaks lead attribution in practice?

  • Overwritten sources. An import or a salesperson changes "original source" to "Referral" and the ad history is gone.
  • Duplicates. The same person fills two forms and becomes two leads with different sources, double-counting one channel.
  • Too much "direct" or "unknown". Usually missing UTMs, redirects that drop parameters, or leads typed in by hand.
  • Native lead forms without context. Meta and Google lead forms don't pass UTMs; you need the integration to carry the campaign and ad identifiers into the CRM.
  • WhatsApp and calls logged manually. The lead exists, but the ad that started it doesn't.
  • Counting leads instead of people or deals. In B2B, five leads from one company may be one opportunity.

Where does Admira fit?

Admira captures source data for each lead from Meta, Google Ads, TikTok and Click-to-WhatsApp ads, keeps first and latest touches, connects them to your CRM (HubSpot, Salesforce, Kommo, Clientify, ActiveCampaign) and follows each lead to revenue, then sends qualified and sale events back to the ad platforms. Its lead tracking page shows how. Limits to know: it is a young brand with few public reviews, it cannot attribute leads your team never records, and if your sales happen at an online checkout, an ecommerce attribution tool may fit better.

Who lead attribution is for, and when it doesn't apply

For: lead-gen and sales-led businesses where marketing produces leads and a sales team closes: B2B, real estate, education, lending, clinics, services.

Less useful alone: ecommerce with instant checkout (attribute orders instead), and very low-volume B2B where a handful of deals per quarter makes channel comparisons noisy; combine it with self-reported data and sales notes. If you are new to the basics, start with what lead tracking is.

FAQ

What is lead attribution in simple terms?

Recording where each lead came from and giving credit to the marketing touches that produced it, so you can compare channels by the leads and sales they bring.

What is the difference between lead source and lead attribution?

Lead source is one field, usually the original source. Lead attribution is the whole system: the touches captured, the rules for credit and the reports built on them.

Should I use first touch or last touch for leads?

Use both. First touch shows which channels start relationships; the lead-conversion touch shows which campaigns turn interest into a lead.

How do I attribute leads from WhatsApp?

Use the WhatsApp Business Platform so chats from Click-to-WhatsApp ads carry the ctwa_clid, and store it with the ad details on the CRM record.

Why do I have so many "unknown" or "direct" leads?

Common causes are missing UTMs, redirects stripping parameters, native lead forms without an integration, and leads created by hand in the CRM.

Is lead attribution enough to judge campaigns?

No. Leads are a fast signal. Judge campaigns on qualified leads and sales once enough time has passed.