Revenue attribution is the process of assigning the money from closed deals or purchases to the marketing touchpoints that led to them, so you can see revenue, ROAS and cost per sale by channel, campaign and ad instead of only leads or clicks. It works by linking each sale in your CRM or billing system to the contacts involved, linking those contacts to the ad clicks, visits and conversations in their journey, and splitting the deal amount across those touchpoints with an attribution model.
This guide explains how revenue attribution differs from conversion tracking, the data it needs, how each model splits a real deal, how HubSpot and Salesforce handle it, and the pitfalls that make revenue numbers wrong.
What is revenue attribution, and how is it different from conversion attribution?
Most attribution stops at the conversion: a form fill, a lead or a WhatsApp conversation. Revenue attribution goes one step further and asks which of those conversions turned into money, and how much.
| Conversion attribution | Revenue attribution | |
|---|---|---|
| What gets credit | Leads, signups, form fills | Closed revenue (deal amount or purchase value) |
| Main source of truth | Ad platform or web analytics | CRM or billing system |
| Key metrics | CPL, conversion rate | Revenue by channel, ROAS, cost per sale, CAC |
| Timing | Minutes to days | Days to months, depending on the sales cycle |
| Typical blind spot | Lead quality | Touchpoints never logged in the CRM |
For a general introduction to the topic, read what marketing attribution is. This article assumes you already track leads and want to connect them to revenue.
What data do you need for revenue attribution?
- Touchpoints: ad clicks with UTMs or click IDs (gclid, fbclid, ttclid), web visits, form fills, WhatsApp conversations, calls and emails.
- Identity: a way to know that the person who clicked the ad is the contact who later bought. Usually the form or chat that creates the contact captures the source.
- Contact-to-deal links: which contacts are associated with each deal or opportunity.
- Deal amount and close date, and ideally gross margin if you want profit instead of revenue.
- Ad spend by campaign and ad, so revenue can be divided by cost.
The weakest link is almost always the first one: the source never reaches the CRM. Our guide on passing UTM parameters into your CRM covers the hidden-field setup.
How does revenue attribution work step by step?
- Capture the source on every lead: UTMs, click IDs and landing page, saved on the contact.
- Record later touchpoints: return visits, new ad clicks, chats and calls, each with a timestamp.
- Associate contacts with deals in the CRM, including every decision maker on B2B deals.
- Mark deals as won with the real amount and the close date.
- Apply an attribution model to split each deal's amount across its touchpoints.
- Roll up by channel, campaign and ad and divide by spend to get ROAS and cost per sale.
- Send won revenue back to ad platforms through a Conversion API or offline conversion import, so their algorithms optimize for sales instead of cheap leads.
Which revenue attribution model should you use?
Example (hypothetical): a deal worth $12,000 closes after four touchpoints: (1) a Meta video ad click, (2) a Google brand search that creates the lead through a form, (3) a newsletter email, and (4) a Click-to-WhatsApp ad that leads to the sales meeting where the opportunity is created.
| Model | Rule | Meta ad | Google search | WhatsApp ad | |
|---|---|---|---|---|---|
| First touch | 100% to first touch | $12,000 | $0 | $0 | $0 |
| Last touch | 100% to last touch | $0 | $0 | $0 | $12,000 |
| Linear | Equal split | $3,000 | $3,000 | $3,000 | $3,000 |
| U-shaped | 40% first, 40% lead creation, 20% to the rest | $4,800 | $4,800 | $1,200 | $1,200 |
| W-shaped | 30% first, 30% lead creation, 30% opportunity creation, 10% to the rest | $3,600 | $3,600 | $1,200 | $3,600 |
The same deal can make Meta look like the hero or invisible. That is why the model must be chosen on purpose and kept stable. As a rule of thumb, use a position-based model (U or W) for sales-led businesses with several touches, linear when you are unsure, and data-driven models only with enough conversion volume. Our post on multi-touch attribution models compares them in depth.
What does revenue attribution look like at channel level?
Example (hypothetical): after applying a W-shaped model to all deals closed in a quarter, a company sees:
| Channel | Spend | Attributed revenue | ROAS | Platform-reported revenue |
|---|---|---|---|---|
| Meta Ads | $30,000 | $84,000 | 2.8 | $150,000 |
| Google Ads | $25,000 | $100,000 | 4.0 | $120,000 |
| TikTok Ads | $10,000 | $16,000 | 1.6 | $45,000 |
| Total | $65,000 | $200,000 | 3.1 | $315,000 |
The platforms together claim $315,000, but only $200,000 was actually closed. Revenue attribution keeps the total equal to real revenue and shows which channel earns its budget. In this example, TikTok needs a closer look before it gets more money.
Can HubSpot or Salesforce do revenue attribution?
Both CRMs offer it, with conditions.
- HubSpot: according to its knowledge base, revenue attribution reports are available on Marketing Hub Enterprise, while contact and deal attribution reports are also available on Professional. Reports only see interactions HubSpot tracks. We list the gaps in HubSpot attribution limits.
- Salesforce: Customizable Campaign Influence links several campaigns to an opportunity and splits its amount using models such as first touch, last touch and even distribution. It depends on campaign members having contact roles on the opportunity. See our guide to Salesforce marketing attribution.
The common limit is that ad clicks, ad spend and WhatsApp conversations often never become CRM touchpoints. That is the gap tools like Admira fill: it ties Meta, Google Ads, TikTok and Click-to-WhatsApp leads to revenue in HubSpot, Salesforce, Kommo, Clientify or ActiveCampaign, applies attribution models and reports ROAS, CAC and revenue by campaign. Revenue and multi-touch reporting are part of its Growth plan ($399 per month).
What mistakes make revenue attribution wrong?
- Only one contact per deal. In B2B, the champion may come from LinkedIn while the buyer came from Google. Associate all contacts.
- Mixing dates. Decide whether revenue is reported on the close date or the first-touch date, and label reports clearly.
- Ignoring refunds and cancellations. Subtract them, or ROAS will be overstated.
- Counting deals that never had a marketing touch as "direct" marketing revenue. Keep them in a separate bucket.
- Judging too early. With a 60-day cycle, this month's spend shows revenue in two months.
- Treating attribution as causality. Attribution splits credit; it does not prove a channel caused the sale. Use holdout tests for that.
Who is revenue attribution for, and when doesn't it apply?
It is most useful for lead-gen, B2B and sales-led companies where the sale happens after the click: real estate, education, financial services, B2B services and any business closing through WhatsApp. It helps less for brands with very few deals per month (too little data to compare channels) and for pure ecommerce stores, where purchase value is already tracked at checkout and ecommerce-first tools may fit better. For the money side of the calculation, see marketing ROI tracking.
FAQ
What is revenue attribution in simple terms?
It is giving each marketing channel credit for the share of real sales it helped produce, measured in money, not in leads.
What is the difference between revenue attribution and ROI?
Revenue attribution decides how much revenue each channel gets. ROI then compares that revenue, or profit, with what the channel cost.
Which attribution model is best for revenue?
There is no universal best. Position-based models suit sales-led journeys; linear is a safe default; data-driven models need high volume. Pick one and keep it stable.
Do I need a CRM for revenue attribution?
Yes, or a billing system that records sales with the customer's identity. Without a record of who bought and for how much, there is nothing to attribute.
How do I attribute revenue from WhatsApp sales?
Capture the ad that started each conversation, create the contact in the CRM with that source, and mark the deal as won when the sale closes.
Why is my attributed revenue lower than what ad platforms report?
Platforms each claim credit using their own windows, including view-through conversions, so their totals overlap. Attributed revenue is capped at what you actually sold.






%20(2).png)