Revenue Attribution: Models, Worked Examples and GA4 Setup

Revenue attribution is the process of crediting the money from each sale or closed deal to the channels, campaigns and pages that touched the buyer before they paid. A rule called an attribution model decides how the credit is split: all of it to the first or last touch, or shares across several. The result tells you how many dollars each channel brought in, not just how many clicks or leads.
This guide covers how revenue attribution works, every common model with the same sale run through each, how to set it up (including in GA4, which most guides skip), how lead-gen businesses do it without a checkout, and how to check that your numbers add up.
What Is Revenue Attribution?
Every sale has a path behind it. Someone finds a blog post on Google, comes back a week later from an AI assistant’s answer, opens an email and finally buys. Revenue attribution looks at that path and answers one question: how much of this sale’s value should each step get?
Three parts are always involved:
- Touchpoints: the recorded interactions before the sale, such as an organic visit, an ad click, an email click, a referral or a sales call.
- A revenue record: the amount you trust, such as an order total, a closed-won deal amount or a first subscription payment.
- A model: the rule that splits that amount across the touchpoints.
Attributed revenue (or attributable revenue) is the output: the dollars a model credits to one channel, campaign or page. Add up a channel’s shares across all sales in a month and you have its attributed revenue for that month.
How it works: one sale, step by step
- Day 1: a visitor finds your “how to choose” guide through Google organic search.
- Day 6: they ask ChatGPT for options, click your link in the answer and browse two product pages.
- Day 10: they join your list and click a discount email.
- Day 14: they search your brand name, click a paid search ad and place a $1,200 order.
Four touchpoints, one $1,200 order. Revenue attribution decides whether organic search gets $1,200, $300, $0 or something in between. The next sections show each answer.
Revenue Attribution vs Marketing Attribution vs Conversion Tracking
Several guides treat “revenue attribution” and “marketing attribution” as the same thing. They overlap, but the difference is what gets credited.
| Conversion tracking | Marketing attribution | Revenue attribution | |
|---|---|---|---|
| What it records | That an action happened (form, sign-up, purchase) | Which touchpoints get credit for a conversion | Which touchpoints get credit for the money |
| Unit | Count of actions | Credited conversions | Credited dollars |
| Needs | A tag or event | Touchpoints per user or session | Touchpoints plus a trusted revenue value |
| Answers | Did it happen, and how often? | Which channel drove it? | Which channel drove the most value? |
Conversion tracking comes first: without it there is nothing to attribute. Revenue attribution is the last layer, and it is the only one that tells you a channel with fewer conversions might still be worth more. For the setup underneath, see our guide to SEO conversion tracking.
Why Revenue Attribution Matters
- Budget follows money, not clicks. A channel with a high conversion rate can still bring small orders. Another with fewer sales can bring larger ones. Only revenue shows which is which.
- ROI becomes a calculation, not a debate. Attributed revenue divided by channel cost gives return on ad spend or return on investment per channel.
- You see which channels are fading. Tracking attributed revenue month over month shows decline earlier than raw traffic does.
- Sales and marketing argue less. When both teams read the same revenue record with the same model, the question becomes “what should we change?” instead of “whose number is right?”
- You learn which buyers are worth more. Revenue by source often shows that some channels bring repeat buyers or larger deals, which feeds targeting and messaging.
Revenue Attribution Models
Models fall into two families. Single-touch models give 100% of the revenue to one touchpoint. Multi-touch models split it. Data-driven models estimate the split from your own data instead of a fixed rule.
| Model | How revenue is split | Good for | Blind spot |
|---|---|---|---|
| First touch | 100% to the first recorded touchpoint | Which channels bring in new buyers | Ignores everything that closed the sale |
| Last touch | 100% to the final touchpoint before purchase | Closing tactics, short purchase cycles | Ignores whoever created the demand |
| Linear | Equal share to every touchpoint | Seeing every channel that took part | Treats a quick visit like a demo request |
| Time decay | More credit the closer a touch is to the sale | Short promotions, sales-led closing | Under-credits awareness |
| U-shaped (position based) | 40% / 40% to two key touches, 20% to the middle | Valuing both the opener and the converter | Which two touches get 40% varies (see below) |
| W-shaped | 30% each to first touch, lead creation and opportunity creation, 10% to the rest | B2B funnels with clear stages | Needs clean stage data in your CRM |
| Full path | W-shaped plus the closing touch as a fourth key touch | Long B2B cycles | Most data-hungry rule-based model |
| Data-driven / algorithmic | Estimated from converting and non-converting paths | Accounts with large conversion volume | A black box; only sees the touches it can track |
| Custom | Your own weights | Teams with a clear theory of their funnel | Easy to bake your own bias in |
For deeper dives on two of these, read last click attribution and how an attribution report lays models side by side.
How to Calculate Revenue Attribution
For a single sale, the arithmetic is one line per touchpoint:
For a channel over a period, add up its shares across every sale:
Under single-touch models this shortcut also works: conversions credited to the channel × average order value. It breaks under multi-touch models, because a channel can own 25% of one order and 60% of another.
Worked example: one $1,200 order, five models
Back to the order above. The numbers are illustrative. For time decay we use a 7-day half-life (a touch loses half its weight every 7 days before the sale), which is the setting HubSpot documents for its time decay model.
| Touchpoint (day) | First touch | Last touch | Linear | U-shaped (first/last) | Time decay |
|---|---|---|---|---|---|
| Organic search, blog guide (1) | $1,200 | $0 | $300 | $480 | $138 |
| ChatGPT referral (6) | $0 | $0 | $300 | $120 | $226 |
| Email (10) | $0 | $0 | $300 | $120 | $336 |
| Paid search, brand ad (14) | $0 | $1,200 | $300 | $480 | $500 |
| Total | $1,200 | $1,200 | $1,200 | $1,200 | $1,200 |
How the time decay column is built:
- Days before the sale: 13, 8, 4 and 0.
- Weight = 0.5 ^ (days / 7): 0.276, 0.453, 0.673 and 1.000. Total: 2.402.
- Shares: 0.276 / 2.402 = 11.5%, then 18.9%, 28.0% and 41.6%.
- Dollars: $1,200 × 11.5% ≈ $138, and so on. The four rounded amounts still add up to $1,200.
Two things to take from this. First, the total never changes: models move credit, they do not create revenue. If your total changes when you switch models, you are looking at a different data source. Second, organic search ranges from $0 to $1,200 for the same order. Any decision about SEO budget depends on which question you asked.
Where the Top Results Disagree: What “U-Shaped” Means
Guides describe the U-shaped model in two different ways. Some give 40% to the first touch and 40% to the lead creation touch (the visit where someone filled a form). Others give 40% to the first touch and 40% to the last touch before purchase. Both versions are in use:
- B2B and CRM tools usually mean first touch plus lead creation. HubSpot’s attribution reporting documentation defines U-shaped that way, and lists separate J-shaped and inverse J-shaped models for other splits.
- Ecommerce and ad-focused guides usually mean first plus last touch, because in a one-session purchase there is no separate lead step.
Neither is wrong, but they produce different numbers. When someone shows you a U-shaped report, ask which touch got the second 40%. In a store, the two versions often match. In B2B, where lead creation can come months before the deal closes, they can differ a lot.
How to Choose a Revenue Attribution Model
| Your situation | Start with | Then add |
|---|---|---|
| Most buyers purchase in one or two visits | Last touch | First touch, to see which channels open journeys |
| Content and SEO drive discovery, other channels close | First touch next to last touch | Linear or U-shaped (first/last) |
| Inbound B2B with a form fill, then sales | U-shaped (first/lead creation) | W-shaped once opportunity stages are reliable |
| Outbound-heavy B2B sales team | Last touch, plus a sales-sourced category | Time decay or W-shaped |
| Large volume of conversions and paid media | Data-driven | Holdout tests on your largest channels |
| Few sales per month (dozens, not thousands) | First and last touch only | A “how did you hear about us?” field |
A habit that prevents most bad calls: read two models side by side before you cut anything. A channel that gains a lot under first touch opens journeys. One that gains under last touch closes them. One that barely moves is the only channel its buyers used.
How to Set Up Revenue Attribution in 6 Steps
Step 1: Decide which revenue counts
Pick the record you will attribute and write it down: order total before or after tax and shipping, net of refunds or not, closed-won deal amount, first-year contract value. Keep pipeline separate from revenue. An open opportunity is not revenue until it closes.
Step 2: Track every conversion with a value
Purchases need their real amount. Leads need an estimated value until the deal closes (the lead-gen section below shows how). Without values, every model just counts actions.
Step 3: Tag the touchpoints you control
Add UTM parameters to every email, social, partner and ad link with one naming convention. Untagged email clicks often show up as Direct and steal credit from the channel that earned it.
Step 4: Connect the revenue record to the touchpoints
For a store, the purchase event on the thank-you page does this. For lead gen, store the original source and landing page on the lead in your CRM, so the closed deal can be traced back weeks later.
Step 5: Choose a model and a lookback window
Use the decision table above. Set a window at least as long as your usual time from first visit to purchase, or early touches fall out of the path. Our guide to the attribution report explains how lookback windows change the numbers.
Step 6: Wait one full cycle, then read and reconcile
Give it at least one full sales cycle before acting, plus time for refunds to settle. Then run the reconciliation check further down before anyone moves budget.
Revenue Attribution in GA4: What Actually Works
Most model lists you will read include first touch, linear, time decay and position-based. In Google Analytics 4, those are gone. According to Google’s attribution documentation, GA4 offers three models: data-driven, paid and organic last click, and Google paid channels last click. First click, linear, time decay and position-based were removed in November 2023. The same page says every model gives Direct no credit unless the whole path was Direct.
To get usable revenue attribution out of GA4:
- Send the purchase event with value, currency and transaction_id. Google’s ecommerce documentation says to set currency at the event level whenever you send value. Without it, revenue is not reported correctly.
- Send refund events. The same documentation describes a refund event that references the original transaction_id. If you never send it, attributed revenue stays inflated by every return.
- Use a real transaction ID. GA4 deduplicates web purchases that share a transaction ID, so a reloaded thank-you page does not count twice. An empty transaction ID makes all purchases look like duplicates of each other.
- Know which report uses which logic. Traffic acquisition (session source) uses last click logic. Advertising reports and key event reports use the model you selected. Two reports can show different revenue for the same channel in the same week, and both can be correct.
If you need first touch or linear views, export paths or purchases with their first and last source and build them in a spreadsheet, or use a tool that still offers them.
Revenue Attribution Without a Checkout: A Lead-Gen Worked Example
Service firms, B2B software and agencies rarely take payment on the website. The revenue arrives weeks later in a CRM or invoice. You attribute it in two passes: an estimated value now, the real value later. Every number below is illustrative.
Pass 1: estimated value per lead
In March, the site receives 55 demo requests. Last touch by landing page:
| Source / landing page | Demo requests | Estimated value ($600 each) |
|---|---|---|
| Organic: /pricing | 18 | $10,800 |
| Organic: /blog/how-to-choose | 12 | $7,200 |
| Organic: /compare | 10 | $6,000 |
| Paid search | 15 | $9,000 |
| Total | 55 | $33,000 |
Pass 2: closed revenue, net of cancellations
By June, the CRM shows which of those March leads closed. Each deal keeps the source and landing page stored on the original lead.
| Source / landing page | Deals won | Closed revenue | Cancelled | Net revenue |
|---|---|---|---|---|
| Organic: /pricing | 4 | $12,000 | $0 | $12,000 |
| Organic: /blog/how-to-choose | 1 | $3,000 | $0 | $3,000 |
| Organic: /compare | 2 | $6,000 | $3,000 | $3,000 |
| Paid search | 4 (avg $3,500) | $14,000 | $0 | $14,000 |
| Total | 11 | $35,000 | $3,000 | $32,000 |
What the second pass changes:
- Organic search was estimated at $24,000 and delivered $18,000 net. Paid search was estimated at $9,000 and delivered $14,000, because its deals were larger than average.
- /compare looked like a $6,000 page. After one cancellation it is a $3,000 page. Without the cancellation step, it would keep getting credit for money you refunded.
- If paid search cost $6,000 that month, its return on ad spend is $14,000 / $6,000 = 2.3. The estimate alone would have said 1.5.
- Update the close rate and deal size per channel from pass 2, and next month’s estimates get closer. Our guide on how to calculate conversion value walks through setting these values.
Revenue Attribution for Organic Search and AI Assistants
Two channels behave differently from paid media and need their own reading.
Organic search: report by landing page
Google and Bing do not pass the search keyword to your site, so revenue attribution for SEO happens at the landing-page level. The useful report is revenue by organic landing page, as in the lead-gen table above. Informational pages tend to start journeys and lose under last touch, so check them under first touch before deciding they produce nothing. More detail in organic conversion attribution.
AI assistants: only what the referrer shows
When someone clicks a link in ChatGPT, Perplexity, Claude, Gemini or Copilot, the visit can carry a referrer or UTM tag that identifies the assistant. Then it can be credited like any other source. When the assistant or the app passes nothing, the visit lands as Direct, and in GA4 Direct gets no credit when any other touch exists. That revenue is not lost; it is credited to whatever else the buyer touched. Treat AI-attributed revenue as a floor, not a total. Our guide to AI conversion tracking shows which assistants are identifiable.
SEOConversion focuses on these two channels: it reports conversions and revenue from organic search and AI assistants by landing page, and when an assistant sends no referrer, the visit stays Direct instead of being guessed.
Revenue Attribution in B2B Sales
In B2B, the revenue record is usually a closed-won deal in a CRM, and the path includes people as well as pages: several contacts at the same company, sales calls, events and partner introductions. Three conventions help:
- Sourced vs influenced. “Marketing-sourced” means marketing created the lead. “Sales-sourced” means the first touch was outbound. “Marketing-influenced” means marketing touched the deal at any point. Report them separately, or the same deal gets counted twice.
- Pipeline is not revenue. Report pipeline created and revenue closed in different columns. A large opportunity that is lost creates pipeline and zero revenue.
- Log the offline touches. Unlogged calls, meetings and messages create gaps that make the logged digital touches look more important than they were.
In HubSpot, revenue attribution reports credit the Amount of closed-won deals that have an associated contact plus create and close dates, and the documentation lists them as Marketing Hub Enterprise only. Partner programs use the same idea with deal registration, so the partner who introduced a deal gets the credit.
Metrics Revenue Attribution Feeds
| Metric | Formula | What attribution adds |
|---|---|---|
| Return on ad spend (ROAS) | Attributed revenue ÷ ad spend | Revenue per channel instead of platform-claimed revenue |
| Customer acquisition cost (CAC) | Channel cost ÷ new customers credited to it | Which channel’s customers are cheapest |
| Revenue per lead | Attributed revenue ÷ leads from the channel | Lead quality, not just lead volume |
| Customer lifetime value (CLV) | Revenue per customer over the relationship | Which sources bring repeat buyers |
| Average deal size | Closed revenue ÷ deals won | Which channels bring larger deals |
| Sales cycle length | Close date minus first touch date | How long a lookback window you need |
Challenges and Limits
- Fragmented data. Ad platforms, analytics, email tools and the CRM each hold part of the path, and each has its own idea of who gets credit.
- Privacy and signal loss. Cookie limits, consent choices, ad blockers and missing referrers remove touchpoints. Models can only split credit among the touches they see.
- Cross-device journeys. Research on a phone and purchase on a laptop look like two people unless you can connect them.
- Offline and clickless influence. Podcasts, events, word of mouth and AI answers that are read but not clicked leave no touch. A “how did you hear about us?” field catches some of it.
- Attribution is not causation. Credit says a channel was present, not that the sale would not have happened without it. For large budgets, holdout or geo tests answer that question.
When Revenue Attribution Numbers Are Wrong: Failure Modes and Fixes
| Symptom | Likely cause | Fix |
|---|---|---|
| Attributed revenue higher than actual revenue | Adding up platform reports that each credit the same sale; duplicate purchase events | Use one tool as referee; send a unique transaction_id per order |
| Revenue in GA4 far below your store | Purchase tag missing on some checkouts, or value sent without currency | Test each checkout path; always send value and currency together |
| Revenue never goes down after returns | No refund events, or CRM cancellations not synced | Send refund events; report net revenue from the CRM |
| Payment provider listed as a top revenue source | Buyer returns from the payment page in a new session | Exclude the payment domain as an unwanted referral |
| Direct holds a large share of revenue | Untagged email, app traffic or assistants with no referrer | Tag owned links; accept that unidentified visits stay Direct |
| Old campaigns get no credit | Lookback window shorter than the sales cycle | Lengthen the window to match time to purchase |
| Leads attributed but deals never matched | Source not stored on the lead, or contact missing from the deal | Save source and landing page on every lead; associate contacts with deals |
The reconciliation check
Once a month, compare attributed revenue with the revenue your store or CRM recorded for the same period:
Illustrative example: the store recorded $52,000 in September and GA4 attributes $47,500 to channels. Coverage is $47,500 / $52,000 = 91%. The missing 9% is usually untracked checkouts, blocked tags or orders placed offline. Coverage above 100% means something is being counted twice. Fix coverage before you argue about models.
Revenue Attribution Tools
- Web analytics (GA4): free, good for ecommerce revenue by channel and landing page, limited to the three models above.
- CRM reporting (HubSpot, Salesforce): best when the revenue record and most touches already live in the CRM.
- Dedicated attribution platforms: join ad, web, CRM and billing data and offer more models. Worth it when spend is large and paths cross many systems.
- Channel-specific tools: email, SMS, affiliate and partner tools each attribute revenue to their own messages or partners, usually with first or last touch and their own window. Useful inside the channel, not for comparing channels.
For a side-by-side comparison, see marketing attribution tools.
What Attribution Means in Finance
If you came here from a finance context, “attribution” there usually means performance attribution: explaining why an investment portfolio beat or trailed its benchmark, by splitting the difference into effects such as asset allocation and security selection. It attributes returns to investment decisions, not revenue to marketing channels. The shared idea is the same: break one result into the parts that contributed to it.
Using the Numbers
1. Run the reconciliation check. Fix coverage first.
2. Update estimated lead values with last cycle’s closed and cancelled deals.
3. Read revenue by channel and by landing page under two models.
4. Move budget only on trends that hold for more than one cycle.
5. Send qualified revenue back to ad platforms if you bid on conversions.
FAQ
What does attributable revenue mean?
Attributable revenue is the share of a sale’s value that an attribution model credits to a specific channel, campaign or page. Under first or last touch, one touchpoint gets 100% of the order. Under multi-touch models, the order is split, so a channel’s attributable revenue is the sum of its shares across all sales in the period.
What are the four types of attribution?
In marketing, the four most cited models are first touch, last touch, linear and time decay. Lists often add position-based (U-shaped), W-shaped and data-driven models, so you will see anywhere from four to nine. In psychology, “attribution” means something else entirely: how people explain the causes of behavior.
What does attribution mean in sales?
In sales, attribution means deciding which activities, people or sources get credit for a closed deal. B2B teams often split revenue into marketing-sourced, sales-sourced and partner-sourced, then measure how many deals had marketing touches along the way. The credit usually feeds commission plans, partner payouts and budget decisions.
What is an example of revenue attribution?
A buyer reads your blog post from Google, comes back from a ChatGPT answer, clicks an email and finally buys through a branded search ad for $1,200. Last touch gives the $1,200 to the ad. Linear gives each of the four touchpoints $300. The order is the same; only the credit rule changes.
Can you do revenue attribution in Google Analytics 4?
Yes, if your purchase events send a value, a currency and a transaction ID. GA4 then reports purchase revenue by channel, source and landing page, and its attribution reports split key event value by model. Only data-driven and two last click models remain; first click, linear, time decay and position-based were removed in November 2023.
How long does it take to get reliable revenue attribution data?
At least one full sales cycle, plus enough time for refunds and cancellations to settle. A store where most buyers purchase within a week can read trends after a month. A B2B company with a 90-day cycle needs several months before closed revenue catches up with the leads it is attributing.
See which landing pages turn organic and AI visits into revenue.
SEOConversion tracks conversions and their value from Google, Bing and AI assistants like ChatGPT and Perplexity, reported by landing page. One script, cookieless, with a 7-day free trial and no credit card.
Start free