Concepts
How Traqio attributes an install
The evidence behind every attributed install — the Play Install Referrer, SKAdNetwork, Apple Ads — the rules that refuse a claim, and what organic means.
Install attribution is deciding which ad, if any, caused an app install. Traqio attributes an install only on evidence it can show, and records which kind of evidence it was. Where there is none, the install is organic — not a guess.
Android: the Play Install Referrer#
The Google Play Install Referrer is a string Google Play hands to an app after install, through the Install Referrer API: whatever was in the referrer parameter of the Play Store URL the user came from. Traqio uses it to carry its click id through the store:
- The user taps a Traqio tracking link (
https://<host>/c/<code>). Traqio records a click with a fresh click id and the link's network, campaign, ad set and ad. - Traqio redirects to the app's Play Store page with
referrer=traq_click=<click id>(plus the source and the campaign ids). - On first launch the SDK reads the referrer and sends it with the install. The server extracts the click id and finds the click — the match is exact.
The result is a deterministic install, stamped with the click's network and campaign hierarchy, provided the click is inside the app's attribution window (7 days by default). Only installs made by Google Play carry a referrer: an adb install, a sideloaded APK or a build from another store is organic.
iOS: SKAdNetwork and Apple Ads#
iOS has no install referrer, and Traqio does not read the IDFA by default, so a Traqio click cannot be carried through the App Store. iOS attribution comes from Apple's two channels instead:
| Source | What it is | Granularity |
|---|---|---|
| SKAdNetwork | Apple sends a cryptographically signed postback per install to the ad network and — when your app declares Traqio's endpoint — to Traqio, with the campaign and a six-bit conversion value. | per campaign, delayed 24 h or more |
| Apple Ads | The SDK reads the AdServices attribution token; Traqio resolves it with Apple, which answers for its own ads. | per install |
SKAdNetwork installs are counted from winning postbacks of the first conversion window only — Apple sends up to three postbacks per install, and counting them all would triple iOS installs. Their revenue, modelled from the conversion value, is reported apart and never mixed into measured revenue or ROAS. Details in iOS attribution.
The kinds of attribution you will see#
| Label | Evidence | Billed |
|---|---|---|
| Deterministic | a Traqio click id in the Play Install Referrer, inside the attribution window | yes |
| SKAN | a winning SKAdNetwork postback, first conversion window | yes |
| Self-attributed | Apple Ads, through the AdServices token | yes |
| View-through | an impression of the same app from the same address, inside the view-through window — off unless you turn it on | yes |
| Probabilistic | no click id; a click on your link from the same hashed address, inside the probabilistic window, for a user who consented — off unless you turn it on | yes |
| Organic | no evidence, or a claim refused by a fraud rule | no |
View-through attribution#
A tracking link has a second URL, /i/<code>, that records an impression instead of a click. When an app turns on a view-through window, an install that matched no click can be attributed to an impression of the same app recorded from the same address inside that window. A view leaves no referrer, so this match rests on the hashed IP address alone — weaker evidence than a click, which is why it is off by default and always ranks below a click. See Attribution windows.
Probabilistic web-to-app matching#
Attribution is deterministic by default. One case has no carrier for the click: a tap on your link in a browser, then an install on iOS. An app can turn on probabilistic matching in Settings for that case. An install that carries no click id is then matched to a click on your link from the same hashed IP address inside a short window (2 hours unless you choose another, 24 hours at most), and only when every such click credits the same ad. It runs only for users whose app reported consent with Traqio.setConsent(true) — on iOS, report it only after the user has also authorized App Tracking Transparency. It never overrides a click id, and every install it attributes is labelled Probabilistic. Apple's privacy guidance counts the network connection among the device signals it forbids for identification, and may reject apps whose SDKs use them: the console shows that risk before it can be turned on. Hashed IP addresses are deleted after 30 days.
Reinstalls and reattribution#
Before matching, Traqio asks whether the install is a new user. A device or user it already knows, active recently, is a reinstall and keeps the attribution it had. One that has been inactive longer than the app's inactivity period and clicked an ad since can be reattributed to that click. Recognising a returning user depends on the first-party ids described in Identity.
Claims Traqio refuses#
Four rules can refuse an attribution. They are checked against data Traqio already holds, and a rule that fires takes the attribution, never the install: the install is still recorded — as organic, with the reason — so your install count keeps matching the store's, and a rule can only ever lower a bill.
| Reason | Fires when |
|---|---|
click_injection | the matched click is younger than 10 seconds at install — the signature of malware that fakes a click while an install is in progress |
duplicate_device | the same device already produced an attributed install of the app in the last 24 hours |
referrer_malformed | an Android install claims a click id that no valid Play referrer carries |
anonymous_ip | the click arrived with no usable client address |
Every refusal is counted and readable — in the console, and through the API's rejections report. Traqio does not score traffic with a statistical model.
Ceilings on the public endpoints
Related#
- Tracking links — where the click id comes from.
- Attribution windows — how long a click can claim an install.
Frequently asked questions#
- What is deterministic attribution?
- Attribution backed by an exact identifier carried from the ad to the install — on Android, Traqio's click id inside the Google Play Install Referrer — as opposed to probabilistic attribution, which guesses a match from shared signals such as an IP address. Traqio's Android click attribution is deterministic.
- Why are some installs organic even though they came from an ad?
- An install is attributed only when there is evidence: a Traqio click id in the Play Install Referrer within the attribution window, a SKAdNetwork postback, or an Apple Ads token. An ad whose destination is not a Traqio tracking link, an install from outside Google Play, a click older than the window or an install refused by a fraud rule leaves no usable evidence, and the install is organic.
- Is an organic install billed?
- No. A conversion is one attributed install, nothing else; installs Traqio could not attribute to an ad are not billed, and the events you track are measured and reported but never billed.