A user taps your ad, installs your app, and by the time they open it, your ad has no idea it exists.
That is the mobile attribution problem in one sentence, and it is a different problem from the one the web solved with cookies. I work on the data side of an ad business, a DSP and an exchange that process 200M+ devices’ worth of ad events a day, and the overwhelming majority of that volume comes from inside apps, not mobile web. So understanding how the industry closed that gap tells you almost everything about how mobile advertising actually works today.
So that’s today’s post.
Today’s Post
How an install gets credited to an ad, and why nobody trusts an ad network to make that call alone, in six sections.
- Why the App Store breaks the web’s whole tracking model
- The one identifier that survives the gap
- Two ways to make a match, and why one of them is a guess
- Why the industry built a neutral referee instead of trusting the networks
- The three rules that make one answer stick
- The identifier everything depends on, and the deadline already on the calendar
1. The install gap
Picture the simplest mobile ad you can. A user is playing a free game. An ad for another game appears. They tap it, land in the App Store, install, and open the new app the next day.
Now ask the question that actually matters: which ad caused that install?
On the web, this is trivial. A click carries a URL with tracking parameters, the landing page reads them, and you are done. On mobile, the App Store sits in the middle of that flow, and it does not pass anything through. The tapped ad hands control to Apple’s or Google’s store. The store does the download. Then the store hands control to a brand new app that has never seen the ad, never seen the click, and has no idea where the user came from.
That discontinuity is the install gap, sometimes called the attribution gap, and closing it is the entire founding problem of mobile attribution. A cookie cannot survive it, because the journey crosses three sandboxes: the publisher app, the store, and the new app. None of them share storage with each other. So the industry needed something that could persist across all three, and the only thing that qualified was the device itself.
2. The identifier that survives the gap
Every phone ships with a resettable advertising identifier, and for roughly a decade it was the backbone of the entire mobile ad ecosystem.
IDFA, the Identifier for Advertisers, is Apple’s version: a UUID-style string assigned per device. Apple’s “Limit Ad Tracking” toggle defaulted to off, so the IDFA was available by default, an opt-out model rather than opt-in.
GAID, Google’s Advertising ID on Android, does the same job. Resettable, user-controllable, one per device. You will also see it called AAID, the older name for the same identifier.
The property that matters is that both apps on the same device can read the same ID. The game that showed the ad reads the IDFA. The newly installed game reads the same IDFA. They never talk to each other directly, but if both report that ID to a neutral third party, the third party can connect the two events on its own: this device saw the ad at 2:01pm, and this device opened the new app at 2:04pm. Nothing passes data along the chain. The gap gets bridged because both ends independently report to a referee who matches them up.
3. Deterministic versus probabilistic attribution
There are two ways to make that match, and the difference between them defines most of the drama that follows in this track.
Deterministic attribution uses a hard, unique identifier present on both records, the IDFA or GAID. When the click record and the install record carry the same device ID, the match is certain. No guessing. This was the gold standard, and while ad IDs were freely available, it was the default.
Probabilistic attribution is the fallback for when you do not have a shared hard ID. Instead you fingerprint. You collect signals available at click time and install time, IP address, device model, OS version, screen size, timestamp, sometimes carrier, and build a statistical guess. A click from a given IP on an iPhone, on a given OS build, at 2:01pm. Four minutes later, an install from the same IP, same device model, same OS. Probably the same person.
Probabilistic matching is a model, not a fact. It carries a confidence level, gets weaker as the window between click and install stretches, and breaks badly on shared IPs, think forty people on the same coffee shop or corporate Wi-Fi. For years it was the second-class citizen of attribution, useful for filling gaps, never trusted the way a deterministic match was trusted. Hold onto that hierarchy. Later posts in this track invert it.
4. Why nobody lets a network mark its own homework
Here is the part newcomers to ad-tech usually underestimate. You might assume the ad networks would just report which installs they drove themselves. They have the click data. Why not let them?
Because their incentive is misaligned with the truth in a way that gets expensive fast. Say an advertiser runs campaigns on five networks at once, and a user sees ads on three of them before installing. Ask each of those three “did you drive this install?” and all three will raise a hand and bill for it. The advertiser pays for one install three times over, and every network has a direct financial reason to claim credit aggressively and interpret ambiguous cases in its own favor.
Letting a network attribute its own performance is letting a contractor sign off on its own building inspection. This is exactly the marking-your-own-homework problem, and it is the reason the industry built a category of company whose only job is to referee.
That company is the Mobile Measurement Partner, or MMP. Structurally, it sits between the advertiser’s app and every network at once. It receives the install signal directly from the advertiser’s own SDK, so no single network can game it. It receives click and impression notifications from every network in the campaign. It applies one consistent, advertiser-controlled rulebook to decide which single touch gets credit, and it returns one canonical answer that everyone agrees to abide by.
Neutrality is not a feature bolted onto the MMP. Neutrality is the product. An MMP that quietly favored one network would be as worthless as a referee betting on one of the teams. Four names carry most of the market:
| MMP | Known for |
|---|---|
| AppsFlyer | Market share leader, broad network integrations, deep analytics |
| Adjust | Strong fraud prevention, later acquired by AppLovin |
| Branch | Deep linking and deferred deep linking |
| Singular | Marketing analytics and cost aggregation alongside attribution |
I have seen this evaluation happen from the other side of the table. Building the AI marketing platform Advance at Pixis, part of my mandate was the MMP and third-party integration work, evaluating measurement partners including AppsFlyer against the connectors the product fed on. The pitch a vendor makes and the reconciliation a data team actually needs are two different conversations, and the second one is where trust gets built or lost.
From where I sit on the exchange side today, an MMP’s single-source-of-truth claim is exactly what makes the downstream spend numbers usable. When a DSP or an exchange reasons about whether a campaign actually drove value, it is reconciling against an MMP’s attributed installs, not a network’s self-reported ones. The referee is load-bearing infrastructure for the entire spend, not a nice-to-have dashboard.
5. The rulebook that makes one answer stick
A referee needs a rulebook, and three concepts do almost all of the work.
Click-through attribution credits an install to an ad the user actually clicked. This is the strong signal, a deliberate action.
View-through attribution credits an install to an ad the user merely saw, an impression, without clicking. Much weaker evidence, far easier to abuse, so view-through windows stay short and often serve as a tiebreaker rather than a primary claim.
Attribution windows, or lookback windows, set how long after a click or view an install still counts. Typical defaults run 7 days for clicks and 24 hours for views. Tap an ad Monday, install Wednesday, that counts. Install the following month, the window has closed and that ad gets nothing. Set the window too short and you under-credit slow converters. Set it too long and you over-credit ads that had nothing to do with the install.
Last-touch attribution breaks the tie when several touches qualify inside their windows. The MMP awards credit to the most recent qualifying engagement, usually the last click, with clicks generally beating views. It ignores every assisting touch before the last one, which is blunt, but it is deterministic, auditable, and it produces exactly one answer. Most spend in this era ran on plain last-touch, and it is still the mental default a lot of marketers carry.
The single answer is the whole point. It is what makes the referee’s call something a network can be held to.
6. The identifier everything depends on
Step back and look at what every piece of this rests on: a stable, readable, deterministic device identifier present across apps. Deterministic matching needs it. Last-touch reconciliation across networks needs it. Even the SDK’s first-open handshake needs it. Probabilistic fingerprinting only ever existed as the fallback for when that identifier was missing.
Everything described above, the neutral MMP, deterministic matching, the multi-network referee, was the settled architecture of mobile advertising. It worked, and it was the world before April 2021.
Then Apple shipped iOS 14.5, introduced App Tracking Transparency, and turned the IDFA off by default for hundreds of millions of devices overnight. The deterministic identifier the entire system had been built on became the exception instead of the rule, and the weak fallback became the only thing left standing.
The next post in this track is The Day Tracking Broke. Bring everything from this one with you, because most of it is about to break.
Takeaways
Six panels, one per section. Save this before you read the next post, because the next one breaks half of it.
Final Words
The mobile attribution system that ran for a decade was built entirely on the assumption that a device identifier would always be there to read. It was not a fragile assumption by accident, it was the only lever the industry had before privacy regulation caught up with it. Next time you see an install dashboard, ask whether the number behind it is a match or a guess, and whether anyone still knows the difference.
Reply and tell me which MMP your team runs on and why.
Cheers, Hoshank