Deep-link
Drop users into the exact moment, feature, or context that matters.
What it is
Section titled âWhat it isâA deep link is a promise made in a messageâan email, a push notification, a shared URLâabout exactly where the tap will land: not the appâs home screen, but the specific invite, lesson, order, or document the copy named. It covers same-session links, cross-channel links (an email that opens the app to the right object), and deferred deep links that have to survive an app-store install and still remember what the user clicked before they had the app at all. Distinguish it from generic navigation: a deep link is not just âa link into the appââitâs a link that names a destination and is judged entirely on whether it delivers that specific destination.
A calendar invite that opens straight to the event, with the right people already visible, is a deep link keeping its promise. The same invite that opens the appâs generic dashboard and leaves the user to hunt for the event is a deep link that has technically fired and functionally failed.
Why it works
Section titled âWhy it worksâThe mechanism is Friction reduction at the point of highest intent: the user has already decided to actâthatâs why they tappedâso any distance between the tap and the named destination is pure search cost with no corresponding benefit, exactly the mechanical-friction Frictionâs taxonomy singles out as cheapest to remove and most punishing to leave in place. A deep link that works removes an entire navigation flowâs worth of friction in one hop.
But a deep link is also a claim, in Calibrated Trustâs sense: the message asserted a specific destination, and the tap is the user cross-examining that assertion. Landing anywhere elseâa generic home, a login wall with no memory of what was promised, a dead link with no explanationâreads as a broken promise rather than a technical hiccup, and it erodes trust faster than an honest slow load would, because the failure is legible as a lie rather than as a delay. Skip careful handling of logged-out or expired states and every edge case becomes one of these small, cumulative betrayals; the fix costs little relative to the trust it protects.
When to use it
Section titled âWhen to use itâ- Returning users resuming unfinished work
- Sharing, Referral, and invite flows that name a specific object or room
- Lifecycle messages (email, push, SMS) that claim a concrete destination
- Install or re-engagement campaigns where the destination must survive the store (deferred deep link)âwhen you can keep that promise reliably
- Match the landing screen to the CTAâs promise; pass enough context to render the right object
- Handle logged-out, new-install, and wrong-account states: queue the destination, auth if needed, then routeâor offer a clear recovery path
- Bridge channels deliberately (web â app) with Universal Links / App Links (or equivalent) tested on real clients
- Fail soft: expired, deleted, or unresolvable links fall back to a useful place with an honest explanationânot a blank error
- Persist intended destination across onboarding when appropriate; resolve before dumping people on a generic first-run home
Donât
Section titled âDonâtâ- Dump users on a generic home after promising something specific
- Use deep links as cloaked marketing traps (promise value, deliver a paywall or unrelated upsell)
- Ignore logged-out, expired-session, or content-deleted edge cases
- Block first open on flaky deferred-link resolution with endless spinners; time out to normal onboarding
- Assume every platform preserves install context equallyâdesign for âbest effortâ deferred cases
Founder Tip
Section titled âFounder TipâA deep link is a promise with a URL. If you cannot keep it after install, auth, or overnight, do not make it. Precision beats clever attribution theatre.
Make It Yours
Section titled âMake It Yoursâ- To define destinations:
- Which screens are worth a one-tap shortcut from email, push, or share?
- What objects are commonly named in support and growth messages?
- Where do returning users actually need to landânot where marketing wishes they would?
- To keep the promise:
- Does the entry match the CTA word-for-word in spirit?
- What happens if they are logged out, on a new device, or in the wrong workspace?
- Can the destination wait through signup without being lost?
- To harden edge cases:
- Expired sessions, deleted content, revoked invites, outdated app versionsâwhat do they see?
- How do in-app browsers and OS link handlers behave for your top links?
- What is the fallback when deferred matching fails?
- To protect trust:
- Does this feel like a personal shortcut or a bait-and-switch?
- Are you routing to action, or only to a billboard?
- Would you be comfortable explaining the landing page to a sceptical user?
- To measure:
- Tap â correct destination rate (not just âapp openedâ)
- Task completion from deep-linked sessions vs organic
- Where drop-off happens after click-in (auth wall, empty state, paywall)
Related concepts
Section titled âRelated conceptsâFurther reading
Section titled âFurther readingâ- Allowing apps and websites to link to your content (Apple) â Universal Links fundamentals for keeping webâapp promises.
- Handle Android App Links â Official App Links guidance for verified HTTPSâapp routing.
- Mobile Deep Linking (Nielsen Norman Group) â UX framing: deep links reduce navigation cost when destinations match intent.
- Play Install Referrer API (Android Developers) â Platform mechanism often used when destination must survive install on Android.
- Firebase Dynamic Links deprecation FAQ â Why legacy deferred-link stacks need an explicit replacement plan post-FDL.
Agent skill
Section titled âAgent skillâ- Primary command:
/productfeeling mapâ route taps to the promised screen and preserve context across channels - Related commands:
/productfeeling states,/productfeeling trust,/productfeeling anti-patterns,/productfeeling brief - When the agent should load this TTP: âdeep linkâ, âopen to screenâ, âdeferred linkâ, âemail to appâ, ânotification landingâ
- Companion handoff: Impeccable â destination UI, auth gates, and fallback states; DocSlime â link routing, deferred matching, and cross-channel requirements
- Feeling north star this TTP serves: respected intent, continuity, low effort
- Anti-goals: bait-and-switch landings, auth dead-ends, endless deferred spinners
- Reference path:
skill/reference/map.md