Deep linking lets users tap a link or scan a QR code and open content directly in your native app instead of the browser. Users land on the exact screen they need, whether they come from an email, a push notification, a QR code, or a web page.

On iOS, this works through Universal Links. On Android, it works through App Links. Both use the same principle: when a user taps a link matching your custom domain, the device checks for an installed app associated with that domain and opens it automatically. If the app is not installed, the link opens in the browser as a normal web page — no broken links or error screens.

Contents

Requirements

Custom domain required

Deep linking requires your app to be published to a custom domain. Without a custom domain, the operating system cannot verify that your app owns the domain, and deep linking does not work.

To set up a custom domain, go to the Publishing Dashboard and follow the custom domain configuration flow.

What deep linking does

  • Direct content access — Users go straight to a specific screen instead of navigating through menus. For example, a new employee taps a link from their welcome email and lands directly on the onboarding checklist in the app.
  • Fewer drop-offs — Fewer steps between tapping a link and reaching content means fewer chances for users to abandon the process, especially for time-sensitive tasks like form submissions or event check-ins.
  • Smoother onboarding — If the app is not installed, users see the content in the browser. Once they install the app, future links open directly in it.
  • Stronger campaign performance — Links in emails, push notifications, SMS, and social media campaigns take users exactly where the campaign intended, rather than to a generic home screen.
  • Graceful fallback — If a user does not have the app installed, the link opens the same content in the browser as a normal web page.

Use cases

  • Directories — A user taps an email link to a colleague’s profile and opens it directly in the directory app, already logged in.
  • Event apps — An attendee scans a QR code at a session and lands on the session details screen, checked in automatically.
  • Learning apps — An employee taps a course link from the company intranet and opens it in the native app with offline access.

Set up deep linking for iOS

Universal Links are configured automatically when you build your iOS app through the Publishing Dashboard with a custom domain. No additional setup is required.

During the build, the custom domain is embedded into the app’s Associated Domains entitlement. Apple verifies the domain association when the app is installed, and Universal Links work immediately.

If your app is already in the App Store

If you add a custom domain after your iOS app is already published, you need to rebuild and resubmit your app. The domain association is part of the app binary and can only be updated with a new build.

Once users install the updated app, Universal Links begin working.

Scenario What to do
Building for the first time with a custom domain Nothing — Universal Links are configured automatically
Adding a custom domain to an existing app Rebuild and resubmit to the App Store

For the full iOS publishing flow, see How to publish your iOS app.

Set up deep linking for Android

During the Android publishing flow, the Publishing Dashboard detects whether your app uses a custom domain. If it does, an App Links section appears in the Bundle ID and keystore step.

To enable App Links:

  1. Check Enable App Links for this app
  2. Enter your SHA-1 Certificate Fingerprint

If you do not need deep linking, leave these fields empty and continue with the rest of the publishing flow.

Find your SHA-1 fingerprint

If you use Google Play App Signing (recommended):

  1. Go to Google Play Console
  2. Select your app
  3. Go to Setup > App signing
  4. Under App signing key certificate, copy the SHA-1 certificate fingerprint

The fingerprint follows this format: AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD

If your app is already on Google Play

If you add a custom domain after your Android app is already published, you need to rebuild your app and upload the new version to Google Play.

Scenario What to do
Building for the first time with a custom domain Provide your SHA-1 fingerprint during publishing
Adding a custom domain to an existing app Provide your SHA-1 fingerprint and rebuild
No custom domain App Links section does not appear — not applicable

For the full Android publishing flow, see How to publish your Android app.

Frequently asked questions

Do I need a custom domain for deep linking?
Yes. Universal Links (iOS) and App Links (Android) both require a custom domain.

What happens if the user does not have the app installed?
The link opens in the browser as a normal web page. This graceful fallback is one of the main advantages of Universal Links and App Links over custom URL schemes.

Do I need to configure anything on my DNS provider?
No. Beyond the standard custom domain setup, no additional DNS configuration is needed. Fliplet hosts the verification files automatically.

How soon do deep links work after a rebuild?
Deep links work as soon as users install the updated app. Both Apple and Google verify the domain association during installation.

What happens if I change my custom domain?
You need to rebuild both your iOS and Android apps so the new domain is associated with them. The previous domain stops triggering deep links once users install the new builds.

Can I test deep linking before publishing to the app stores?
Yes. Install a debug build on a physical device. Deep linking requires a real device — it does not work reliably in simulators or emulators.

Was this article helpful?
YesNo