Deep-Linking FAQ

Learn about the purpose of deep-linking and what technologies are used to implement deep-links. For information about deep-linking in Singular, see the Singular Links FAQ and Singular Links Best Practices and Examples.

 

What are deep-links?

Deep-links drive returning users directly to the heart of your application, much like regular web links direct users to a specific page within a website. After doing a little leg work to implement deep-links in your app, you can lead users straight into your app to a specific screen, or create customized experiences the moment they enter the app.

How do deep-links work?

Developers have been using different methods to enable deep-linking:

Note: Singular Links technology was developed with iOS and Android deep-link trends in mind. When you generate a tracking link in Singular, the link is automatically enabled with the compatible deep-linking technology, including Apple Universal Links, Android app links, and Android intent technology. In addition, the Singular SDK is designed to simplify usage of deep-links and deferred deep-links. See the Singular Links FAQ for more information.

  1. URI Schemes (e.g. "myapp://path/to/page?pageid=1"): In this legacy deep-linking method, the app developer registers a “scheme” for the app, so that the device platform knows it needs to open the app whenever a user clicks a link with that scheme - in our example, any link starting with “myapp://”.
    • If the app is installed on the device, it opens, and then parses the rest of the link and shows the user a specific page within the app or delivers a specific experience accordingly.
    • If the app is not installed on the user’s device, this results in an error. There is no fallback URL.
  2. iOS Universal Links (iOS 9+): This technology was developed to improve on URI-scheme-based deep-linking on iOS. When using this technology, the app developer first sets up a verified web domain (e.g. "myapp.com") to serve Universal Links for an app. When a user clicks a Universal Link (e.g. "https://www.myapp.com/path/to/page?pageid=1"), the device platform knows it needs to open a specific app.
    • If the app is installed on the device, it opens, and then parses the rest of the link and shows the user a specific page within the app or delivers a specific experience accordingly.
    • If the app is not installed, the user is taken seamlessly to the web URL, using the device’s default browser.
  3. Android App Links (Android 6.0+): Android's improvement on URI-scheme-based deep-linking. When using this technology, the app developer first sets up a verified web domain to serve App Links. When a user clicks an app link, the device platform knows it needs to open a specific app.
    • If the app is installed on the device, it opens, and then parses the rest of the link and shows the user a specific page within the app or delivers a specific experience accordingly.
    • If the app is not installed, the user is taken seamlessly to the web URL, using the device’s default browser.
What are deferred deep-links?

Deferred deep-linking is another improvement on deep-links. With this technology, if a user clicks on a deep-link and does not have the app installed on their device, not only is the user directed to an app store, but the deep-link parameters (what page or customized experience to show to the user) are actually not lost. If the user later installs the app from the app store, and opens it, the app accesses the deep-link parameters and shows the user the intended customized experience.

Unlike deep-linking, deferred deep-linking is generally only possible with the help of an attribution tracker:

  1. The tracker collects information about pre-install touchpoints (clicks and views) meant for the mobile app.
  2. The tracker’s SDK, implemented inside the app, can access that pre-install context.
  3. The app uses the SDK to find out what deep-link the user originally engaged with and serve the intended page or customized experience when the app is opened for the first time.
What causes deep-linking to fail?

Though deep-linking is an incredibly useful way to engage with your users. However, to properly use it for your marketing channels, you should be familiar with it’s usage and limitations.

Limitations of URI Schemes

Using URI schemes is generally not recommended, because if the app is not already installed on the user’s device, clicking a link will cause an error and drastically reduce user engagement. You can work this on Android by using Android intents to direct the user to the Google Play store instead of being shown an error message.

In addition, URI-scheme deep-linking has security vulnerabilities: other apps can register the same URI scheme as your app and hijack your deep-links.

Limitations of iOS Universal Links

  • Social Media Apps: Some social media apps intentionally break or limit deep-links that try to take the user out of the social media app. These are often social media apps that open links in an internal web browser view.
  • Link Wrapping: Universal Links can’t work with link wrapping, where another URL redirects to the universal link. Link wrapping includes link shorteners such as bit.ly.
  • Pasting in Browser URL Field: Universal Links will not deep-link if you enter the link into a mobile browser's URL field.
  • Triggering Links with Javascript: Scripts that trigger URL redirects will not deep-link unless it is part of a user action.

Limitations of Android App Links

  • Social Media Apps: Some social media apps intentionally break or limit deep-links that try to take the user out of the social media app. These are often social media apps that open links in an internal web browser view.
Was this article helpful?
0 out of 0 found this helpful