OneLink, Branch, Adjust, Singular and Kochava do their job: they record the click. But whatever happens in the middle, the last step is apps.apple.com — and inside an in-app browser that step can end on an empty screen.
AppsFlyer · Branch · Adjust · Singular · Kochava · Firebase
Campaign, creative and placement are all measured correctly. Then the tracker redirects to the store, Apple answers with a scheme the browser cannot open, and the chain stops there.
A dead store link leaves an obvious gap between clicks and installs. A dead tracker reports the click as normal, so the loss reads like a weak creative or a bad audience — and you optimise against a phantom.
Your attribution link becomes the destination of a GoToApp link. We get the tap out of the in-app browser, your tracker takes over from there, and none of your parameters are touched.
Everything your tracker does after the install depends on the person actually reaching the store. A tap that never arrives cannot be matched later, so the personalised onboarding you built never runs.
Delivery depends on which app the link opens in, and the spread is wide. These are our own numbers, not an industry estimate. Sample: 606 taps through our own links, 3–5 August 2026. Every link reports back when a tap fails to leave the in-app browser, so these are counted, not modelled.
| Source | Reached the store | Detail |
|---|---|---|
| 99% | 3 taps stalled, 2 of them recovered by pressing the button | |
| 81% | 35 stalled, 17 recovered — this is where the system asks for confirmation | |
| TikTok | 86% | small sample, but the pattern matches Facebook |
| Plain browser | 100% | nothing to escape from, the store opens directly |
It reads where the tap came from and takes the route that survives there: the external browser out of Instagram and Threads, the store's own scheme where that is what works, an immediate button where the system asks for confirmation. If everything is blocked, the tap still ends on a visible button instead of a blank screen.
No SDK and no changes in the app. You swap one address for another.
An attribution link can be the destination. We hand the tap over and leave your parameters alone.
Each link reports when a tap failed to leave the in-app browser, so the dashboard shows delivery, not just clicks.
No. They measure the tap, they do not change where it runs. Whatever the tracker does in the middle, its last step is still the store URL, and that is the step that fails.
Yes. We do not rewrite your parameters and do not add our own. The tracker receives the tap exactly as it would have.
Yes. An attribution link already splits iOS and Android on its own, so you fill a single field and both platforms route through it.
AppsFlyer OneLink, Branch, Adjust, Singular, Kochava, Airbridge, Tenjin and Firebase Dynamic Links, including your own subdomains under them.
Yes. Keep the base link in the dashboard and pass the personal part in the address — we put your parameters back on the destination. That is how an AppsFlyer Smart Script setup keeps working unchanged.
Free while you try it: up to three apps, unlimited links under each, full routing and per-source stats. The paid plan buys a shorter address.