Website and app link guides

Start with the link handbook, or choose a setup by use case. Choose a task below for current setup instructions, test worksheets and measurement definitions.

Audit and maintain your links

Check live placements, model confirmed faults and measure App Store page tests.

App link audit checklist for launch and campaign reviews

Inventory placements, test store and app destinations on real devices, and record evidence before changing campaign budgets.

Estimate the cost of a confirmed link failure

Use observed failures and explicit assumptions to model campaign exposure. Click and install discrepancies alone do not establish lost revenue.

Test app links in Instagram and Facebook separately

Compare the same destination across Meta placements using a device test matrix. GoToApp browser events do not establish a platform failure-rate ranking.

Check app links after an iOS or social-app update

Use recorded versions and reproducible tests to investigate changed link behavior. An absent user-agent marker does not prove Safari or a particular iOS regression.

Monitor shared links and retest app handoffs

Combine HTTP checks, destination ownership, campaign-parameter checks and real-phone tests. Browser lifecycle events are investigation signals, not verified arrivals.

Diagnose a web-to-app funnel before blaming the last link

Separate web steps, store navigation, installation and activation. Reproduce the complete quiz or checkout flow and fix the failing stage.

Choose a bio menu or a direct app download link

A menu suits several destinations; a device-routing link suits a single download action. Choose from the visitor’s task and test the published placement.

Test App Store and Google Play links as separate journeys

Configure the correct store for each platform, verify installed-app behavior separately and keep a useful desktop fallback.

App Store URL format: app ID, storefront and campaign tags

Identify the app ID in an Apple listing URL, keep Apple-generated campaign parameters and distinguish a store link from an installed-app link.

Test App Store page variants with a GoToApp link

Split iOS routing requests between App Store pages in Pro, keep attribution consistent and measure downloads in the store or attribution provider.

Website and funnel links

Set up editable destinations and measure website campaigns.

Choose and create your app link

Pick the right destination for a download, QR code or installed-app journey.

Publish and test social links

Set up the placement, reproduce a failure and test the route on a phone.

Measure the campaign

Keep request activity, campaign parameters and downstream outcomes separate.

Older articles

This archive includes earlier research and browser observations. For current setup instructions and product limits, start with the guides above.

Browse 86 older articles

Link not opening in Facebook: the in-app browser problem

Facebook's browser blocks more hand-offs than any other platform we measure. What fails there, why detection got harder in iOS 26, and what still works.

WhatsApp link not opening: store links and the in-app preview

Why an App Store link sent in WhatsApp sometimes opens nothing, how the in-app browser differs from Instagram's, and what to send instead.

Snapchat App Store link problems on iOS

Snapchat's in-app browser traps store links the same way Instagram's does. What to check, how to detect it, and how attribution survives the escape.

LinkedIn in-app browser: why store links fail there too

LinkedIn opens links in its own browser, with the same consequence for App Store URLs. Detection, the escape sequence, and why B2B apps hit this hardest.

Telegram in-app browser and App Store links

Telegram's browser behaves differently on iOS and Android, and only one of them causes trouble with store links. What to expect and how to route around it.

Threads links and the App Store: what to expect

Threads inherits Instagram's browser and its limitations. Measured behaviour, detection, and whether the Instagram escape scheme works there.

In-app browser not working on iOS: what it can and cannot do

A practical list of what breaks inside iOS in-app browsers: store links, logins, payments, downloads and camera access, with the reason for each.

Deep link on iOS not working: the diagnosis order that saves time

Custom schemes, universal links and in-app browsers fail for different reasons and look identical from outside. A checklist in the order things actually break.

Universal link generator: what these tools do and what they miss

What a universal link generator actually produces, why the generated file is the easy half, and the part every generator leaves to you.

Android App Links not working: verification and the fallbacks

Why Android opens the browser instead of your app, how assetlinks.json verification works, and the intent:// fallback that saves the tap.

Push notification deep links on iOS: the parts that break

Payload structure, cold start versus warm start, and why a deep link that works from Safari fails from a notification.

Deep linking in React Native: setup and the usual failures

Linking API, universal links and App Links in React Native, plus the in-app browser case that no library handles for you.

Deep linking in Flutter: configuration and gotchas

app_links and go_router setup, the native files you still have to touch, and why links tapped in social apps behave differently.

App Clip links: invocation URLs and where they fail

How App Clip invocations work, the association file they share with universal links, and why in-app browsers break them too.

After Firebase Dynamic Links: what to use instead

Firebase Dynamic Links shut down. What it actually did, which parts you can replace with a plain URL, and which parts need something else.

UTM parameters and the App Store: which parameters are supported

Why UTM tags do not reach App Store Connect, what Apple reads instead, and how to keep one naming scheme across web and app.

AppsFlyer OneLink: what it does and what it does not fix

How OneLink routing works, what it is genuinely good at, and the one failure it cannot address because it happens downstream of measurement.

Branch links: capabilities and the in-app browser blind spot

What Branch handles well, how its link domains work, and why a Branch link still dies inside Instagram on iOS.

Adjust deep linking: setup, and the layer it does not cover

How Adjust trackers route traffic, what deferred deep linking requires, and why the in-app browser problem sits outside its scope.

Mobile attribution basics: what can and cannot be measured

Deterministic versus probabilistic matching, what SKAdNetwork changed, and an honest account of what is knowable after ATT.

Click to install rate: what is normal and what is broken

Typical ranges by channel, the arithmetic of a healthy funnel, and the silent failure that makes a good campaign look terrible.

WebView vs in-app browser vs Custom Tabs: the differences that matter

Three things that look identical to a user and behave very differently for links, sessions and payments.

WebView user agent on iOS: what the string tells you

How iOS WebView user agents are built, which parts are stable, what changed in iOS 26, and how to read them without guessing.

Smart links for apps: what the term means and what to check

Every vendor uses the phrase differently. The four capabilities that actually differ, and how to tell which ones you are getting.

Google Play link formats and the market scheme

Package names, the referrer parameter, market:// and the intent URL that makes Android links resilient.

Instagram ads for app installs: objectives and the routing trap

Which objective opens the store natively, which routes through the browser, and how to structure campaigns so taps survive.

Google App campaigns and store links: where they differ from Meta

App campaigns send taps to the store natively, which avoids the browser problem. What that means for comparing channels, and where links still matter.

Instagram links not opening: every cause, sorted by likelihood

A diagnostic list covering blank pages, links that do nothing, missing stickers and the cases where Instagram itself is broken.

Links not opening in Safari on iOS: what to check

Content blockers, restrictions, default browser settings and the universal link breadcrumb that quietly changes behaviour.

In-app browsers on Android: why store links usually survive

Chrome Custom Tabs, WebView and the intent mechanism that makes Android resilient where iOS is not.

How to shorten a link on iPhone, and when not to

Shortcuts, apps and services for shortening URLs on iOS, plus the cases where a short link makes things worse.

SKAdNetwork in plain terms: what you get and what you lose

Conversion values, timers, privacy thresholds and why postbacks arrive too late for the optimisation you wanted.

Why a link opens the App Store instead of your website

Smart App Banners, universal links claiming too broad a path, and the settings that make iOS prefer an app you did not intend.

Pinterest links and the App Store: what publishers hit

Pinterest opens links in its own browser, and pins have a long life. What that combination means for store links and how to route around it.

X links and App Store downloads on iOS

X opens links in its own browser by default, with a setting most users never change. What that means for app links and how to handle it.

Discord links to the App Store on mobile

How Discord handles links on iOS and Android, why store links usually survive there, and the case where they do not.

Facebook Messenger links and the App Store

Messenger shares Facebook's WebView and its limitations. What breaks, how to detect it, and why chat traffic is worth fixing.

WeChat, LINE and Viber: store links in Asian messengers

Three messengers with their own browsers and their own rules, including WeChat's near-total control over what opens.

App Store links in email: clients, clicks and what breaks

Link wrapping, mobile clients with their own browsers, and why the same link behaves differently in Gmail and Apple Mail.

WKWebView limitations that affect links and payments

What WKWebView cannot do compared with Safari, with the specific consequences for store links, sessions, payments and downloads.

SFSafariViewController vs WKWebView: which one to embed

The trade between control and capability, with the specific behaviours that differ for links, cookies and payments.

Cookies and sessions in in-app browsers

Why users arrive logged out, what happens to a session created inside a WebView, and how to design flows around it.

Payments in in-app browsers: what fails and why

Apple Pay, 3-D Secure and redirect-based checkouts inside social app browsers, plus the workarounds that survive.

Alternatives to Branch for app links

An honest comparison for teams that use Branch only to reach the store, and for those who need everything it does.

Bitly for App Store links: what it does and does not do

Short links versus routing links, the parameters that go missing, and where a shortener is the right tool.

Tools for App Store links, compared by what they solve

Shorteners, link-in-bio pages, attribution platforms and routing links, sorted by the problem each one actually addresses.

Dating apps: where install traffic leaks on iOS

High social spend, high in-app browser exposure, and a funnel where the store step is the least instrumented part.

Fitness apps: influencer traffic and the store link

Creator-driven acquisition depends on bio and story links, which is the exact traffic that fails on iOS.

Mobile games: store links across the channels that matter

Discord, YouTube, TikTok and creator traffic, plus the pre-registration and cross-promotion cases specific to games.

B2B apps: LinkedIn traffic and the store link

When your main channel is LinkedIn, the in-app browser is most of your traffic rather than an edge case.

Migrating existing links to a routing address

Where old store links hide, what order to replace them in, and how to avoid losing attribution during the switch.

Reddit links to the App Store on mobile

The official app opens links in its own browser, third-party clients do not, and self-promotion rules shape what you can post.

Slack and Teams: store links in workplace chat

How work messengers open links on mobile, why internal app rollouts hit this, and what to send instead.

localStorage and state in in-app browsers

What persists, what disappears when the browser closes, and how to build flows that survive an environment with no memory.

Chrome Custom Tabs: why they avoid the whole problem

What Custom Tabs are, how they differ from a WebView, and why apps that use them never cause store link failures.

E-commerce apps: install links across social and email

Shopping apps run the widest channel mix of any category, and the store link sits at the end of every one of them.

Fintech apps: install links, compliance and broken checkouts

Regulated categories carry extra redirects and disclosures, each one a chance to lose the tap or the attribution.

App Store links: common questions

Short answers to the twenty questions that come up most, with links to the full explanation for each.

Apple and Meta both benefit when your link breaks

Neither company has a reason to fix the blank page, and understanding why explains all the workarounds.

Nine things people believe about store links that are wrong

Short corrections to the assumptions that keep this problem alive, each with what is actually true.

The link you hand a creator is the one thing you cannot fix later

Once it is in someone else's bio or video description, you do not control it. What to give them so it keeps working.

Every term in this field, explained in one line

WebView, universal link, deferred deep linking, itms-appss, install referrer, SKAdNetwork and the rest, without the vendor spin.

Two weeks debugging the wrong thing

The order in which we eliminated suspects, why each one seemed right, and the test that would have saved thirteen days.

Why link routing services are a phishing risk, and what to demand

An open redirect on a trusted domain is a gift to attackers. What a responsible routing service restricts, and what to ask before using one.

Click fraud or broken link? They look identical in reports

Both produce clicks without installs. The signals that separate them, and why guessing wrong costs months.

Seven questions to ask before choosing a link tool

The answers separate products that thought about in-app browsers from products that assume a browser is a browser.

Installs dropped after launch week and nobody changed anything

Four mechanical explanations for a post-launch decline, in the order worth checking, starting with the one nobody checks.

Why published conversion benchmarks make this worse

Industry averages include everyone's broken links, so a leaking funnel looks perfectly normal against them.

The first week after launch, in the order that matters

What to check on day one, day three and day seven, with the mechanical checks before the interpretive ones.

Everything here is undocumented and changes without notice

A list of the mechanisms this depends on, who controls each one, and what happened the last time one of them moved.

What an app marketing stack needs in 2026, and what it does not

A short honest map: what genuinely requires a paid product, what is free, and what people buy without needing it.

How to promote a mobile app: every channel, and what each one really costs

The full list of promotion channels for a mobile app, what each costs in money and time, and the delivery layer that quietly decides how much of it arrives.

Mobile app advertising: channels, costs and measurement

How app ad buying works across Meta, TikTok and Google, what a click really is on each, and why the same budget produces different arrival rates.

Planning a mobile app marketing strategy

A working strategy for app marketing: what to decide first, what to defer, and the mechanical constraint that invalidates half of the usual advice.

How to get more app downloads without spending more

Where downloads are lost between the tap and the install, and the fixes that raise the number without raising the budget.

Mobile user acquisition, explained without the jargon

What user acquisition actually involves for a mobile app, the metrics that matter, and the failure mode that makes all of them read wrong.

Cost per install: the number, and what it hides

How CPI is calculated, what current benchmarks look like by platform and category, and why the figure in your dashboard is usually optimistic.

App Store Optimization: metadata and measurement

A practical ASO guide covering keywords, listing conversion, ratings and the traffic signals that feed store rankings.

Marketing an app before it launches

What to build before release day so launch week has somewhere to land: waiting list, listing, creators, and the links that carry it all.

How to promote an app with no budget

The channels that cost time instead of money, ranked by what they actually return for a small app, and the free fix that raises the yield of all of them.

Marketing a mobile app on social media

Which platforms work for app marketing, what content converts to installs, and the delivery problem that is specific to every one of them.

Influencer marketing for mobile apps: what to pay for and how to measure it

How to run creator campaigns for an app, what to pay, how to attribute installs, and the reason creator campaigns underperform their own numbers.

Paid versus organic app growth: which to build first

How paid and organic app growth actually interact, when each is the right investment, and the shared bottleneck that limits both.

How to split a mobile app marketing budget

Where app marketing money should go at each stage, what proportion to hold back, and the line items that get cut first and should not be.

Mobile ad networks: how to choose and what to watch

The main networks for app advertising, what each is good at, how their reporting differs, and where their numbers stop describing reality.

Retention versus acquisition: where the money should go

Why retention beats acquisition arithmetically, when that advice is wrong, and how to tell which problem you actually have.

Create a link with your destinations, test it in your campaign channels and compare recorded requests in the dashboard.

Create a link