Skip to content
Dashboard

Limitations & Known Issues

Deferred linking depends on the signals the platforms expose, and those signals can be masked, stripped or absent. The sections below describe the edge cases seen in real traffic, their cause, and their effect on attribution.


Several kinds of service change the client’s IP address before it reaches Detour:

  • iCloud Private Relay
  • consumer VPNs
  • corporate proxies

Private Relay is the most common. It masks the real IP and presents a relay IP instead, sometimes with a coarse region attached.

iCloud Private Relay is an opt-in iCloud+ service that proxies and encrypts traffic from Apple devices, so that no single party sees both who the user is and what sites they visit. Traffic takes two hops, an Apple-operated ingress relay and then a third-party egress relay, which masks the real IP address and DNS lookups while preserving the user’s approximate region.

  • Who has it — iCloud+ subscribers who turn it on in iCloud settings.
  • What it covers — web browsing in Safari, plus other unencrypted app traffic the system can proxy. It runs in the OS networking stack and is not visible to the user once enabled.

Clipboard contents are a strong probabilistic signal, but iOS restricts access to them. Reading the clipboard triggers a system prompt in some contexts, and users can decline it. In other flows the prompt never appears at all.


Any service between the tap and Detour can rewrite the URL. Ad networks, trackers and link shorteners routinely strip query parameters or referrer information, and on Android click_id is carried in those parameters.


The Android Install Referrer usually delivers referrer data. It does not in these cases:

  • The device has an enterprise account configured.

    Referrer data is reset automatically, even when a non-enterprise account is currently selected. This is a known Android platform limitation, tracked in the Google Issue Tracker.

  • The link opened the Play Store website rather than the Play Store app.

  • The install did not come from a normal store flow: pre-installs, sideloads, some Play Store variants, and internal or external test tracks.

  • The Play Store and the app were not interacted with in the expected order, which can delay or lose the referrer.


Instagram, Threads, Facebook and TikTok open links in their own webview on iOS, and that webview refuses App Store URLs. A link placed in a bio or a caption is opened there by default, so a deferred link that redirects to the App Store stops at that point. The Meta webviews end on a blank page. TikTok shows an error toast.

Only iOS App Store destinations are affected. Android in-app browsers follow Play Store URLs normally, and a link whose destination is a web page loads in all of these webviews.

Detour treats the two families differently:

  • Instagram, Threads and Facebook — Detour hands the link to the system browser, which opens the App Store from there. If no hand-off goes through, the visitor stays on the page with a button to continue manually.
  • TikTok — no hand-off works. Measured on 2026-09-10, TikTok refused a plain navigation to the store, a redirect through the Detour host, and the itms-apps, x-safari and googlechromes schemes alike, because it checks where a navigation ends rather than which scheme starts it. Detour skips the attempts and tells the visitor to open the page in their own browser from the ••• menu.

WebKit reports CPU iPhone OS 18_6 in the user agent regardless of the real iOS version. The device signal on iOS is exactly that comparison: the OS version from the click’s user agent against the systemVersion the SDK reports. A frozen token makes it fail.

Safari still sends the true version in its own Version/ token and Detour reads it from there. Chrome for iOS and in-app browsers (Facebook, Instagram, TikTok) send no such token.


Probabilistic matching is a heuristic. It combines signals and accepts anything above a threshold, so there are two kinds of error:

  • False negative — a correct match is missed, because the score fell below the threshold.
  • False positive — the wrong click is matched, because its score cleared the threshold.

Shared households, corporate devices and NATs all produce similar fingerprints and identical IPs for several distinct users.