Deeplink (in-app browsers & app opening)
What it solves: When someone taps your link inside Instagram, TikTok, or X, it opens in their in-app browser — a stripped-down browser that breaks logins, cookies, and payments. Deeplink routes them to their real browser instead — and when the destination is a known app (YouTube, Spotify, WhatsApp…), it opens the app itself.
The problem
Section titled “The problem”Every major social app has an in-app browser (IAB): Instagram’s, TikTok’s, X’s, etc. These browsers:
- Don’t share cookies with Safari or Chrome → logins fail, checkout sessions break
- May block third-party cookies → affiliate tracking breaks
- Show a different URL bar → users feel less safe and bounce
- Can’t complete Apple Pay / Google Pay flows
The result: lower conversions even for visitors who are interested.
What OnLynk does
Section titled “What OnLynk does”When deeplink is enabled on your link page, every outbound tap — link buttons, cards, social icons, and the automatic page-load redirect on direct-link pages — goes through the same launch logic:
- Known app destination → OnLynk opens the destination’s native app directly (e.g. a YouTube link opens the YouTube app, a
wa.melink opens WhatsApp). See the app catalogue below. - Any other destination → OnLynk hands the visitor off to their default system browser (Safari on iOS, Chrome / Samsung Internet or the user’s default on Android).
Every app-open attempt carries a built-in browser fallback: if the app isn’t installed or the handoff is blocked, the visitor lands in their native browser on the same URL. It is never worse than the plain browser escape.
The same launch logic powers the Deeplink action in Smart links.
App catalogue
Section titled “App catalogue”OnLynk recognises ~46 destination apps by hostname and opens them natively when possible:
| Category | Apps |
|---|---|
| Social & video | YouTube, YouTube Music, Instagram, TikTok, X, Threads, Facebook, Snapchat, Reddit, LinkedIn, Pinterest, Twitch, Vimeo, Weibo, Netflix, Dailymotion, Bilibili, Rumble, Kick, Discord, VK, Tumblr, Flickr, Patreon, Substack |
| Messaging | WhatsApp, Telegram, Messenger, Instagram DMs, WeChat, LINE, Viber, Signal, KakaoTalk, QQ |
| Music & audio | Spotify, Apple Music, Amazon Music, SoundCloud, Deezer, Tidal, Pandora, iHeartRadio, Shazam, Bandcamp, Audible |
| Podcasts | Apple Podcasts, Overcast, Castro, Pocket Casts, Castbox |
| Events & ticketing | Meetup, Eventbrite, Ticketmaster, AXS |
| Shopping | Walmart, Target, Home Depot, Best Buy, Wayfair, IKEA, Lazada, Temu, Mercado Libre |
How the app gets opened depends on the platform:
- Android — a package-targeted intent opens the app directly; Android itself falls back to the browser when the app isn’t installed (no flicker, no error).
- iOS — where a reliable per-content mapping exists (YouTube, X, Spotify, WhatsApp, Telegram, Pinterest, Twitch, Instagram profiles…), OnLynk uses the app’s custom URL scheme. Otherwise the visitor is handed to Safari, where the app can still open through its universal link.
Short-link and regional variants (youtu.be, wa.me, t.me, amzn.to, pin.it, ebay.de…) are recognised too.
Affiliate link protection
Section titled “Affiliate link protection”Some merchants are recognised but never force-opened:
Amazon, eBay, Etsy, AliExpress, Shein, Shopee, LTK, Foot Locker, GameStop, Staples
Force-opening a merchant’s app can drop the click out of affiliate attribution and cost you the commission. For these destinations OnLynk keeps the visitor in their native browser with the full URL — affiliate parameters intact — instead of jumping into the app.
For affiliate creators: this is automatic. You don’t need to configure anything — your Amazon Associates / eBay Partner / LTK links keep their tracking, while your YouTube and Spotify links still open in-app.
Landing pages: escape on load, or stay in-app
Section titled “Landing pages: escape on load, or stay in-app”By default, when a visitor opens your landing page from an in-app browser, OnLynk escapes to their default browser immediately on load (the historical behavior).
You can instead enable “Stay in the in-app browser” per page:
- The landing page stays inside the in-app browser — no jarring jump to Safari/Chrome before the visitor has even seen your page
- Each link still deeplinks to its destination app (or native browser) when tapped
Pages with a direct link always auto-open on load regardless of this setting — there is no landing to show.
You’ll find the toggle in the page’s Deeplink settings dialog.
Supported platforms
Section titled “Supported platforms”| Platform | In-app browser | Deeplink support |
|---|---|---|
| ✓ IAB | ✓ Supported (staggered handoff cascade on iOS) | |
| Threads | ✓ IAB | ✓ Supported (staggered handoff cascade on iOS) |
| ✓ IAB | ✓ Supported | |
| X (Twitter) | ✓ IAB | ✓ Supported |
| Telegram | ✓ IAB | ✓ Supported |
| ✓ IAB | ✓ Supported | |
| YouTube | ✓ IAB (partial) | ✓ Supported |
| TikTok | ✓ IAB (restrictive) | Manual “exit steps” shown; taps still deeplink |
| Snapchat | ✓ IAB (restrictive) | Manual “exit steps” shown; taps still deeplink |
| Links open externally by default | Not needed | |
| Standard browser | No IAB | Not intercepted — a real tap opens apps natively |
Note: Platform app updates may change IAB behavior. OnLynk tracks these changes and updates its deeplink logic accordingly — no action needed on your end.
iOS vs Android behavior
Section titled “iOS vs Android behavior”| OS | App opening | Browser escape |
|---|---|---|
| iOS | App custom schemes (youtube://, spotify:, …) | Safari (x-safari- handoff), Chrome (googlechromes://) if the visitor uses Chrome for iOS |
| iOS in Instagram/Threads | — | Meta’s external-browser scheme with a staggered fallback cascade |
| Android | Package-targeted intents with built-in browser fallback | Intent URL to the default browser |
| Android (Samsung) | Same intents | Samsung Internet scheme |
Fallback behavior
Section titled “Fallback behavior”Deeplink never dead-ends:
- Every app-open attempt is paired with a native-browser fallback — if the app doesn’t take over, the visitor lands in Safari/Chrome on the original URL
- If even the browser handoff is blocked (older app version, unsupported device), the visitor stays in the in-app browser and the destination still loads
- In restrictive webviews (TikTok, Snapchat, some Meta cases), OnLynk shows manual exit steps instead of a failed automatic attempt
- No error is ever shown to the visitor
Configuration
Section titled “Configuration”Enable deeplink in the link editor:
- Open your link page in the dashboard → Edit
- Find the Deeplink toggle (requires a plan that includes deeplink)
- Optionally enable Stay in the in-app browser for landing pages (see above)
- Save
See Create your first link page for the full editor field reference.
How to test deeplink
Section titled “How to test deeplink”- Share your
onlynk.me/<slug>link in an Instagram DM (or Story, or Post) to yourself - Tap the link inside the Instagram app — the in-app browser opens briefly
- You should be redirected to Safari (iOS) or your default browser (Android); if your page links to a known app (e.g. YouTube), tapping that link should open the app itself
- Compare the experience with deeplink off: the page stays inside Instagram’s in-app browser
Tip: Test on both iOS and Android if your audience uses both platforms. The behavior can differ slightly between them.
Works with other features
Section titled “Works with other features”Deeplink is compatible with and enhanced by:
- Direct link — Deeplink + direct link = the visitor exits the IAB and skips the OnLynk landing page; if the destination is a known app, it opens directly in that app
- Smart links — The Deeplink flow action uses the same launch logic (app opening + browser fallback)
- AI Shield — Bots are never redirected by deeplink; only real browsers are
- Analytics —
REDIRECTevents are still recorded even when deeplink is active
Related
Section titled “Related”- Glossary — Definition of
deeplinkand in-app browser - Direct link — When to use a landing page vs a naked URL redirect
- AI Shield — How bots are handled in redirect flows