What is campaign attribution? Models, methods, and limits
Your social platform says it drove 600 purchases. Your search platform says 400. Your email tool wants credit for another 200. That adds up to 1,200, and your actual sales say 700. Campaign attribution is how you settle that argument: it connects each conversion back to the campaigns on the path and decides how to split the credit between them. Which number you end up defending depends on the model you choose, the windows you set, and whether one independent layer counts each conversion once.
TL;DR
- Campaign attribution connects a conversion to the campaigns that led to it, then uses a model to decide how much credit each campaign gets.
- Every attribution model over-credits some touchpoints and under-credits others. Run the same customer journey through last-touch, first-touch, and linear, and you get three different winning campaigns.
- Ad platforms each report on their own campaigns, so their combined totals can exceed the conversions that actually happened. Deduplication counts each conversion once.
- Attribution windows change your results. They’re set separately for clicks and views, and each platform sets its own, so keep yours deliberate and consistent.
- Campaign attribution shows which campaigns were present on the path, not which ones caused the conversion. Incrementality testing and media mix modeling fill that gap.
- Consistency matters more than finding the “perfect” model. One model, applied the same way every quarter, gives you numbers you can compare and defend.
What is campaign attribution?
Campaign attribution is the method of connecting a conversion back to the campaigns that led to it, and then deciding how to split the credit between them. It shows you which campaigns contributed to an outcome, so your budget can go to the campaigns and channels driving the results you want.
Customers rarely convert on their first interaction with you. They click an ad in their social feed, search for you a few days later, come back through an email over the weekend, and somewhere along the way they buy. Campaign attribution works out which of those campaigns played a part, and how much credit each one gets.
A quick note on scope: this article is about attribution at the campaign level specifically, rather than at the channel, creative, or keyword level.
Good campaign attribution also needs to see the whole journey. Your customers move across paid and owned media, mobile, web, and CTV. If your attribution only sees one of those surfaces, you’re measuring a slice of the journey and calling it the whole thing.
How does campaign attribution work?
Stripped back, campaign attribution comes down to three steps:
- Record each touchpoint.
- Connect the conversion back to those touchpoints.
- Assign credit using an attribution model.
Most teams handle the first two without thinking twice. The third step, choosing the model, is the one that gets overlooked, left on default settings, or skipped entirely. It’s also the step that decides what your numbers end up saying.
Here’s how that plays out. A customer clicks a paid social ad for your brand, clicks a search ad two days later, clicks through from a follow-up email, and then makes a purchase.

Each of those touchpoints carries its own campaign, ad set, and creative identifiers. When the purchase happens, your model checks which touchpoints fall inside the attribution window you’ve set, and those become eligible for credit. How that credit gets split is up to the model.
Before we get to the models, there’s one mistake I see all the time: treating three closely related terms as if they mean the same thing.
Campaign attribution vs. marketing attribution vs. multi-touch attribution
Marketing attribution is the umbrella term for connecting marketing activity to outcomes like purchases. Campaign attribution applies that idea at the campaign level. Multi-touch attribution is a family of models that split credit across more than one touchpoint instead of handing all of it to one, and you can apply those models at the campaign level.
Getting these straight matters more than it sounds. If your team says “attribution” and your CFO hears “proof,” you’re already having two different conversations.

What are the main campaign attribution models?
There’s no single “best” model. Every model is a set of rules, and every set of rules over-credits some touchpoints and under-credits others. Knowing which way each one leans is how you choose well. Not every platform still offers all of these, so check what yours actually supports before you settle on one.
| Model | How credit is assigned | Best for | How it over- or under-values |
|---|---|---|---|
| Last-touch / last-click | 100% to the final touchpoint | Short consideration cycles; clear, consistent reads of performance | Over-credits whatever closes the conversion; misses what created the demand |
| First-touch | 100% to the first touchpoint | Understanding demand creation | Misses what got the customer over the line |
| Linear | Split evenly across every touchpoint | Simple numbers that are easy to explain | Gives a low-intent touch the same weight as the one that sealed the deal |
| Time-decay | More weight to recent touchpoints | Short consideration cycles | Under-credits the upper-funnel work that started the journey |
| Position-based (U-shaped) | Most credit to the first and last touchpoints, with the remainder split across the middle | A practical middle ground between single-touch and linear | The split is a fixed rule rather than something learned from your data |
| Data-driven | Derived from your own conversion patterns | High-volume accounts | Reflects patterns in past conversions, so it can over-credit touchpoints that simply show up often on converting paths; needs volume to be stable |
Now let’s run our customer (paid social → search ad → email → purchase) through three of these.
With last-touch, the email gets all the credit. Your social campaign looks like it did nothing, even though it’s where the customer first found you.
With first-touch, it flips. Paid social gets everything, and the search ad and email drop out of the story.
With linear, each touchpoint gets a third. That feels fairer, but it hides which one did the heavy lifting. The search click, where the customer went looking for you, may have done far more than the email that followed.
Same customer, same journey, three different winning campaigns. That’s each model doing exactly what you asked it to do.
So which of those three would you want to defend to your CMO? That’s the real question, and it’s why your choice of model deserves more than a default setting.
Single-touch models do earn their place. They give you a clean, consistent rule, and that’s worth a lot. But they only tell you what closed the conversion. They can’t tell you what created the demand, and they can’t tell you what actually caused the purchase. Hold on to that thought, because it comes back later.
Why do campaigns get credited twice?
Each ad platform measures and reports on its own campaigns. So when a customer touches three platforms on the way to a purchase, all three can legitimately claim it. Every platform is telling the truth about the slice it can see. The trouble is that nobody’s looking at the whole path.
The result is a total that’s bigger than the number of conversions that actually happened, like the 1,200 versus 700 from the start of this article. Add up the platform reports and you’ll overstate what your marketing delivered, and you’ll have a hard time explaining the gap when someone asks.
Deduplication fixes this. One independent layer applies the same attribution rules across your media sources, so a conversion is counted once instead of once per platform. You get one number to work from instead of three competing ones.
How do attribution windows change your numbers?
An attribution window is how far back you’re willing to look and still count a touchpoint as a contributor to a conversion. If a conversion happens after the window closes, the touchpoint that led to it gets no credit. The campaign may still have worked. You’d just stopped counting.
It gets more tangled than a single number, too. Windows are usually set separately for clicks and for views, and every platform sets its own. Line those up differently and the same campaign can report two different results.
Windows are configurable, which gives you control. It also explains why two teams can look at the same campaign and reach different answers. One team runs a 7-day window, another runs 30. They’re both “right,” which is exactly the problem when someone in the room asks why your number doesn’t match theirs. Choose your windows deliberately, write them down, and keep them the same whenever you compare results.
What campaign attribution can’t tell you
Let me be straight about something uncomfortable: campaign attribution distributes credit, but it doesn’t establish causation.
There are two reasons. First, attribution can’t see interactions it never recorded, and there are often more of those than marketers would like. In a May 2026 eMarketer × AppsFlyer survey of 157 US marketing leaders, 58.6% said their organization underinvests in channels it can’t adequately measure, and 93% recognized the need for mobile-grade measurement across other channels.
Second, attribution can’t tell you what would have happened without your campaigns. A customer who was always going to buy still leaves a trail of touchpoints, and the model still hands out the credit.
Two other methods help fill those gaps. Incrementality testing compares an exposed group with a holdout group to estimate how many people would have converted anyway, and what’s left over is the lift your campaigns actually caused. Media mix modeling estimates each channel’s contribution at an aggregate level, including channels that are hard to measure one customer at a time.
The difference between “present” and “caused” can be bigger than you’d expect. FuboTV’s incrementality tests showed a lift of 15% to 34%, and up to 3x more incremental value than attribution alone suggested.
Think of attribution, incrementality, and media mix modeling as a stack rather than three rival options. Each one answers a different question, and together they give you a picture you can defend.
How do you choose a campaign attribution approach?
The right approach for your brand comes down to four questions:
- How long is your consideration cycle?
- How many channels are your campaigns running on?
- Do you have enough conversion volume?
- Who approves the budget?
Short cycles suit last-touch better than long ones. Two channels won’t need the same model as eight. A data-driven model needs real volume to be stable; feed it a trickle and it’ll draw confident conclusions from very little.
The last question matters most. If you can’t explain your model to the person who signs off on spend, it will fall apart the first time they push back. And that pushback is coming: in the same eMarketer × AppsFlyer survey, 49.7% of marketing leaders said they’re under significant pressure to prove ROI, and 29.9% said that pressure is extreme.
Whatever tool you land on, consistency matters more than the model itself. One model, applied the same way every quarter, gives you numbers you can compare and defend. Switching models because this quarter needs a better story gives you neither.
How AppsFlyer approaches campaign attribution
That idea of consistency is at the heart of how we’ve built AppsFlyer. We give you an independent measurement layer that applies one consistent set of rules across your media sources, so each conversion gets counted once and credited once, instead of once for every platform that reports it.
Cross-Platform Measurement brings mobile, web, and CTV into a single customer journey, so you’re reading one path instead of three disconnected ones. Marketing Analytics lets you build dashboards around the metrics that matter to you and configure each one by attribution method. And Incrementality runs geo-lift experiments that compare exposed and holdout regions, so you can test what your campaigns actually caused.
It all sits alongside the stack you already run. You keep your platforms, and you get an independent referee on top of them.
Credit is a choice you control
In campaign attribution, how credit gets assigned is a choice, made by whichever model you pick. That puts you in control. By applying one consistent, independent read across every campaign, you’ll know that the number you bring into a budget meeting is one you can defend.
The more platforms you run, the more self-reported stories you’ll need to reconcile, and the more an independent read is worth. But keep in mind that that read is just a starting point: it doesn’t establish causation, and tell you what would have happened organically even if you hadn’t run those campaigns at all. That lift can be provided by incrementality testing and media mix modeling, and you should consider campaign attribution as a complementary tool rather than something that provides the whole answer.
If you want to see what your campaigns look like once every platform’s story is checked against the others, take a look at AppsFlyer’s Cross-Platform Measurement and request a demo now to transform fragmented journeys into clear LTV insights.