Glossary/Attribution mechanics
Probabilistic attribution
Definition
Probabilistic attribution estimates which ad interaction most likely caused an install by inferring a match from signals such as timing, network and device characteristics rather than from an identifier shared by both records.
It is the answer to a real problem: on iOS, a large share of installs arrive with no carrier at all, and a business still has to decide where to spend. The difficulty is that the term covers two very different practices — legitimate aggregate modelling, and device fingerprinting, which Apple prohibits outright. Treating them as one thing is how teams end up with a policy violation they did not intend to buy.
Three different things wear this label
The word *probabilistic* is doing a lot of work in vendor marketing, and the three practices it covers have almost nothing in common except that none of them is a join on a key. Separating them is the first useful step, because their accuracy, their unit of analysis and their policy standing all differ.
| Method | Unit | Answers | Platform standing |
|---|---|---|---|
| Device fingerprinting | Individual install | Which click was this one? | Prohibited on iOS |
| Aggregate modelled conversions | Campaign | How many of these were caused? | Permitted; network-provided |
| Incrementality / geo tests | Cell | What happened without the ad? | Permitted; strongest evidence |
| Media mix modelling | Channel over time | How does spend move outcomes? | Permitted; no user data |
Only the first row is the one people mean when they say "probabilistic matching"
Per-install probabilistic matching on iOS is fingerprint attribution under a softer name, and App Store Review Guideline 5.1.2 does not permit deriving data from a device to identify it — regardless of whether the user granted ATT permission. If a vendor offers per-install matching for iOS with no identifier involved, ask which device signals it reads.
The other three rows are ordinary statistics and are how serious measurement gets done in a world without user-level joins. They give up the ability to name the click behind a specific install, which is a real loss, in exchange for answers that survive scrutiny.
Why per-install accuracy collapses at low volume
The failure mode is structural rather than a matter of model quality. Matching works by narrowing candidate clicks until one remains; how well that works depends entirely on how many candidates share the same coarse signals in the same time window.
-- How many clicks could plausibly explain each install, given only
-- coarse signals? If this number is not close to 1, a "match" is a
-- coin toss dressed up as a result.
SELECT
i.install_id,
COUNT(c.click_id) AS candidate_clicks
FROM installs i
JOIN clicks c
ON c.country = i.country
AND c.os_version = i.os_version
AND c.device_model = i.device_model
AND c.clicked_at BETWEEN i.installed_at - INTERVAL '24 hours'
AND i.installed_at
GROUP BY i.install_id;
-- Rural, low-traffic campaign -> candidate_clicks = 2 (plausible)
-- Metro, high-traffic campaign -> candidate_clicks = 8400 (a guess)Run that query against your own data and the shape of the problem is immediate. Accuracy is not a single number a vendor can quote; it is a function of traffic density, campaign concentration and window width, and it is worst exactly where budgets are largest.
| Condition | Effect on accuracy | Why |
|---|---|---|
| High click volume in one geo | Much worse | Many indistinguishable candidates |
| Narrow time window | Better | Fewer candidates survive |
| Many concurrent campaigns | Worse | Candidates spread across sources |
| Carrier-grade NAT / shared IP | Much worse | Thousands of devices, one address |
| Long install delay | Worse | Window must widen to catch it |
| Small, distinctive audience | Better | But least likely to matter commercially |
We decline to quote a single accuracy figure, and so should anyone else
Published accuracy claims for probabilistic matching range from the high nineties to little better than chance, and both ends can be true — of different datasets. Any figure quoted without the traffic density, window width and campaign count it was measured under is a marketing number, not a measurement.
Using it honestly
The workable posture is to stop asking probabilistic methods to do a deterministic job. They are poor at naming the click behind one install and genuinely good at estimating how much a channel moved a total — so use them at the altitude where they are strong.
- Maximise the deterministic base first. Tagged links, correct referrer encoding and the AdServices token cost nothing and shrink the population you have to model. See deterministic attribution.
- Report modelled numbers in their own column. Merging a modelled install into the same total as a matched one destroys the only signal about confidence you had.
- Use aggregate platform reporting for iOS ad channels. SKAdNetwork and AdAttributionKit are the sanctioned aggregate paths; they are coarse, delayed, and permitted.
- Validate with a holdout. A geo split or a scheduled pause is the only method that tells you what would have happened anyway, which is the question budget decisions actually turn on.
- Never let a modelled number become a payout basis. Paying a partner on an estimate they can influence is an incentive problem, not a measurement one.
There is one more reason to keep the two columns apart, and it is operational rather than philosophical. A modelled attribution changes when the model is retrained, so last quarter's report can move after the fact. A deterministic match cannot. If your reporting cannot say which of its numbers are stable, nobody downstream can either.
UTM builder
The cheapest way to need less modelling is to lose fewer deterministic signals. This builds correctly-encoded campaign URLs so that every click that can carry an identifier does, shrinking the population you have to reason about statistically.
Open the utm builder →Frequently asked questions
- What is probabilistic attribution?
- It estimates which ad interaction caused an install without an identifier shared between the click and the install, inferring the link from signals such as timing, geography, device type and network. Because it is an estimate rather than a match, its output carries an error rate that varies enormously with traffic density and window width.
- Is probabilistic attribution allowed on iOS?
- It depends entirely on the method. Aggregate approaches such as SKAdNetwork reporting, incrementality tests and media mix modelling are permitted and widely used. Per-install matching that derives a device signature from characteristics such as IP address, screen dimensions and system configuration is fingerprinting, which App Store Review Guideline 5.1.2 prohibits regardless of ATT status.
- How accurate is probabilistic attribution?
- There is no single figure, and anyone quoting one without conditions is selling something. Accuracy depends on how many clicks share the same coarse signals inside the matching window, so it is best for small distinctive audiences and worst for high-volume campaigns in dense markets — which is exactly where the largest budgets sit.
- When should I use probabilistic attribution?
- Use it at the campaign or channel level to estimate how much a spend moved a total, and only after you have maximised the deterministic signals available to you. Report modelled numbers in a separate column from matched ones, and validate the important decisions with a holdout or geo test rather than with the model alone.
- What is the difference between probabilistic attribution and incrementality testing?
- Probabilistic attribution tries to assign credit for conversions that already happened, while incrementality testing withholds ads from a comparable group to measure what would have happened without them. The second answers the causal question directly and is much harder to game, which is why it remains the strongest evidence available for a budget decision.
Related terms
- Deterministic attribution — Deterministic attribution credits an install to a specific click by matching an identifier that is present in both records, producing a one-to-one link rather than a statistical estimate.
- Fingerprint attribution — Fingerprint attribution matches an install to a click by building a signature from device and network characteristics such as IP address, screen dimensions, OS version and locale, rather than from an identifier either party consented to share.
- SKAdNetwork — SKAdNetwork is Apple's StoreKit framework that attributes app installs to advertising campaigns without exposing a device identifier, by having the operating system send a delayed, aggregated postback to the ad network that won the install.
- View-through attribution — View-through attribution credits an install or conversion to an ad impression the user saw but never clicked, provided the conversion happens inside a view window that is usually much shorter than the click window.