Strategy · Research note
Routing Is Not Attribution
A deep link decides which screen opens; attribution decides which campaign gets credit. When one link tries to do both through a tracking redirect, the tap lands first on a domain your app is not associated with, and the platforms decide there. Keep the verified link clean and measure with the tools built for it.
Scope and limits
This note reasons from how association works on each platform, as Apple and Android document it, and from the measurement APIs they publish. It does not evaluate any attribution vendor.
Two jobs, two answers
| Question | Routing | Attribution |
|---|---|---|
| What it decides | Which screen or page opens | Which campaign gets credit |
| Built on | Verified domains, intent filters, association files | Referrers, postbacks, analytics events |
| Needs personal data? | No | Depends on the method; Apple's attribution postbacks carry no user or device-specific data |
| Fails visibly when | The browser or a chooser opens instead of the app | Reports miss installs or credit the wrong campaign |
How tracking redirects break routes
Both platforms associate an app with a domain. Apple's association file lists the apps that may open URLs on that domain, and each subdomain needs its own entitlement entry and file. Android verifies the hosts named in the app's intent filters, each with its own assetlinks.json. The domain in the link the person taps is the one that counts. The two files are set side by side in assetlinks.json and apple-app-site-association compared.
A typical campaign link breaks this chain. The tap goes to a tracking domain, which records the click and redirects to your domain. If the tracking domain is not itself associated with your app, the tap was not on one of your app links. Whether the app opens after the redirect is then up to the browser, and neither Apple's nor Android's documentation promises that it will; their rules describe the link that is tapped. Treat the redirect as a likely break and test it on devices. The fix is to make the tapped link your own verified https address and record the campaign another way, for example with a short campaign parameter your page or app reads. The tap on that tracking link is step three of the search-to-app route.
What deferred links can and cannot do
A deferred deep link tries to remember the original destination through an install, so the app opens that screen on first launch. On Android, the Play Install Referrer returns "the referrer URL of the installed package," which an app can read on first launch. On iOS, AdAttributionKit reports conversions from ads shown in other apps at campaign level, not clicks from your own website, email or QR codes, with postbacks Apple signs that do not include user or device-specific data; it is designed for measurement, not for opening a screen for one person. Neither route is guaranteed, and in a market where the app is not offered the install branch never starts. Design for the case where the person continues on the web, as the guide on deep link fallbacks when the app is not installed recommends.
Keep parameters minimal
- Short campaign identifiers, mapped to campaigns on your server, rather than long tracking strings.
- No personal data or session tokens in the URL.
- No full destination URL as a parameter. The Open Worldwide Application Security Project (OWASP) advises mapping a "short name, ID or token" to a destination on the server.
The measurement tools themselves, and what each returns, are in the web-to-app measurement guide; parameter handling is covered in the deep link security guide.
Questions
Can a click-tracking redirect sit in front of a universal link or App Link?
It can break it. Association is set up for the domain in the link the person taps. If that is a tracking domain without its own association to your app, the platforms' app link rules for your domain may never apply, so test any redirect on devices before a campaign.
Is a deferred deep link the same thing as attribution?
No. A deferred deep link tries to open a specific screen after an install; attribution credits a campaign. On Android the Play Install Referrer can support both, while Apple's AdAttributionKit reports ad campaigns shown in other apps, without person-level routing, and does not attribute clicks from your own website or email.
What should stay out of link parameters?
Personal data, session tokens and full destination URLs. URLs end up in logs and histories, and a destination parameter invites open redirects.
Sources
- Apple Developer, Supporting associated domains, no date shown.
- Android Developers, Configure website associations and dynamic rules, last updated October 23, 2026.
- Android Developers, Google Play Install Referrer, last updated July 21, 2025.
- Apple Developer, AdAttributionKit, no date shown.
- OWASP Cheat Sheet Series, Unvalidated Redirects and Forwards Cheat Sheet, no date shown.
How we choose and date sources: data sources.