QR Deep Links: from offline scan to the right in-app screen

Bridge posters, packaging, receipts and events with your iOS/Android app. SDDL preserves UTM parameters, delivers a post-install payload, and reliably routes users to the correct screen—even if the app is installed after the scan. Use SDKs or a simple REST flow.

Overview

QR deep links convert offline intent into measurable app engagement. When a user scans your QR code, SDDL records the click, keeps UTM parameters and any custom metadata, and then opens the app or—if the app is not installed yet—sends the user to the App Store or Google Play. On first launch, your app retrieves the payload and navigates to the appropriate screen such as a product page, coupon view, onboarding step or event details.

You control domains, fallbacks and optional intermediate pages to maximize reliability across scanners and built-in camera apps. SDDL supports Universal Links (iOS) and App Links (Android) using either your verified custom domain or an SDDL subdomain.

Use cases

  • Retail & packaging: scan to redeem a coupon, open a PDP or a loyalty screen.
  • Events & OOH: posters and badges that open the event schedule or ticket details.
  • Restaurants & travel: menu, booking flow, or location-aware offers inside the app.
  • After-sales & support: QR on invoices that opens warranty, return status or chat.
  • Education & onboarding: scan to unlock a module, a course or a tutorial step.

How the flow works

  1. A user scans your QR code that points to an SDDL link (you can append standard UTM parameters).
  2. SDDL stores context and routes to the app if present; otherwise the user is sent to the store.
  3. On the first app launch, the payload is available so you can open the right screen and apply coupons or IDs.
  4. Click data, referrers and geo summaries appear in your SDDL analytics; optional webhooks notify your backend.

For camera apps and third-party scanners that prefetch URLs, enabling an intermediate page can help ensure the intent is captured before the store jump.

Setup & domains

Configure Universal Links and App Links once and reuse them across all QR campaigns. SDDL can host apple-app-site-association and assetlinks.json from your settings—no extra hosting. Use a verified custom domain for branding, or {YOUR_ID}.sddl.me to get started quickly.

Integration (SDK or REST)

Choose the integration style that matches your stack. The SDKs simplify runtime links and cold-start handling. If you prefer minimal dependencies, you can call the REST endpoint directly to retrieve the payload on launch.

  • With SDK: official SDKs for iOS, Android and Flutter handle Universal/App Links and cold-start automatically.
  • Without SDK: extract the {key} from the scanned URL and request the payload via API. If the key isn’t present, resolve via the fallback endpoint.

QR best practices

  • Readable design: keep enough contrast and quiet zone; test on common print sizes and distances.
  • Short URLs: use SDDL links to keep QR density low; avoid excessive query params in the code itself.
  • Consistent UTM: add utm_source, utm_medium, utm_campaign and optional utm_content for reporting.
  • Intermediate page when needed: helps counter prefetching and preserves the payload before the store.
  • Clear CTA: tell users what happens after the scan (e.g., “Open in app to redeem”).
  • Test scanners: verify with native camera apps and popular third-party QR apps on iOS and Android.

Analytics & webhooks

SDDL aggregates per-link clicks, device breakdown, top referrers, countries and cities. UTM parameters are preserved so you can attribute scans to specific offline placements. If you need server-side workflows, subscribe to webhooks and reconcile conversions in your backend. SDDL focuses on reliable deep linking, payload delivery and first-party link analytics.

FAQ

Do I need a special QR generator?

No. Any QR tool that encodes a standard URL will work. Point it to your SDDL link (custom domain or {YOUR_ID}.sddl.me), and we handle the rest.

Will users land on the correct screen after install?

Yes. The payload is delivered on the first app launch so you can route to the intended screen and apply coupons or IDs.

Is an SDK required?

No. You can integrate through REST only. SDKs are available if you prefer less custom code for cold-start and runtime links.

How do I avoid issues with camera apps that prefetch URLs?

Enable the optional intermediate page for QR campaigns. It helps ensure the intent is captured before sending users to the store.

Related guides

Continue exploring