Overview
Email and SMS are still among the highest intent channels for returning users, but their clients often rewrite or prefetch links, causing deep links to fail or open the wrong destination. With SDDL you generate one smart link for your message that opens the installed app, falls back to the appropriate store when needed, and restores campaign context after install. You keep your own domain, your UTM, and full control over the user journey.
Whether you send receipts, promotions, passwordless sign-ins, or reactivation nudges, SDDL focuses on reliable routing: Universal Links on iOS, App Links on Android, verified domains, and optional intermediate pages to mitigate aggressive link scanning and email/SMS tracking layers.
Why email/SMS links break
- Link wrapping: many ESPs and SMS providers proxy links for click tracking, which can strip or alter parameters.
- Prefetch bots: clients/filters open links in the background to generate previews or scan for threats.
- Unsupported schemes: custom URL schemes (
myapp://
) are frequently blocked; use Universal/App Links instead. - Unverified domains: if your domain isn’t properly verified, the OS cannot open the app directly.
How SDDL keeps email & SMS journeys reliable
- You place an SDDL link (with UTM) in your email/SMS template or short code.
- SDDL stores intent and routes directly to the app when installed; otherwise it sends the user to the right store.
- On first launch, your app retrieves the payload (e.g., coupon, screen, UTM) and navigates accordingly.
- Optional intermediate page helps capture intent before store redirect in environments that prefetch links.
You can use SDDL with zero SDKs (REST only) or with lightweight SDKs for iOS, Android and Flutter that handle cold starts and runtime links for you.
Setup & domains
Configure Universal Links and App Links once in SDDL. We publish the required apple-app-site-association
and assetlinks.json
files from your settings—no extra hosting. Use a custom domain for trust and deliverability,
or start fast with {YOUR_ID}.sddl.me
. If your ESP/SMS platform wraps links, keep the destination as the SDDL URL.
Integration options (SDK or REST)
Choose the approach that fits your app. Both options support post-install payload delivery and do not require invasive tracking.
- SDK route: official SDKs for iOS, Android, and Flutter handle runtime links and cold starts with minimal code.
- REST route: parse the deep-link key from the URL and fetch payload via the API. If no key is available, resolve via the fallback endpoint.
Best practices for email & SMS delivery
- Prefer HTTPS Universal/App Links: avoid custom schemes in email/SMS.
- Use a branded domain: improves trust and reduces false positives in filters.
- Keep URLs compact: UTM are fine, but avoid excessively long query strings.
- Enable intermediate page for risky senders: helps when clients aggressively prefetch.
- Test top clients: Apple Mail, Gmail (web & apps), Outlook, iMessage, default SMS, WhatsApp, Telegram.
- Be explicit in copy: tell users “Opens in app” and what they will see after tapping.
Analytics & webhooks
SDDL provides first-party link analytics: clicks over time, device breakdown, referrers, and geo summaries. Because UTM parameters are preserved, you can attribute email/SMS performance accurately. For back-office workflows (e.g., coupon redemption or reactivation logic) subscribe to webhooks and reconcile events in your backend.
FAQ
Do you work with link wrapping from ESPs/SMS providers?
Yes. Use your SDDL URL (custom domain recommended) as the destination. SDDL preserves UTM and can show an intermediate page to mitigate prefetching before the store redirect.
Is an SDK required for email/SMS deep links?
No. You can implement a REST-only flow. SDKs are available if you prefer less custom code for cold start and runtime links.
Will UTM be preserved into the app?
Yes. UTM parameters and your custom metadata are available via the payload your app fetches on launch.
How do I handle preview bots that open links automatically?
Enable the optional intermediate page for these campaigns. It helps capture intent and reduce false opens before the user reaches the store or the app.
Related guides
Continue exploring-
Deep Links — The Complete Guide
Guide -
Deferred Deep Links — How They Work
Guide -
Universal Links (iOS) — Setup & Troubleshooting
Guide -
Firebase Dynamic Links Alternative
Guide -
Branch.io Alternative
Guide -
App Links (Android)
Guide -
Troubleshooting Playbook
Guide -
QA Playbook
Guide -
E-commerce Deep Links
Guide -
Deep Links for Ads
Guide -
QR Codes to App — Deferred Deep Links
Guide -
Creator & Affiliate Deep Links
Guide -
Gaming Deep Links — Rewards, Quests
Guide -
No-SDK Deep Links — REST-Only
Guide -
Deferred Deep Links in React Native — Setup Guide
Guide