Mobile deep linking

In the context of the mobile apps, deep linking consists of using a uniform resource identifier (URI) that links to a specific location within a mobile app (i.e. exampleApp://location/123456), rather than simply launching the app (i.e. exampleApp://). Depending on the mobile device, the URI required to trigger the app may be different (e.g. exampleiOSApp://location/123456 versus exampleAndroidApp://launch?location=123456).

Example

This link fb://profile/33138223345 is an example of a mobile deep link. The URI contains all the information needed to launch directly into a particular location within an app, in this case the profile with id '33138223345', i.e. the Wikipedia page, within the Facebook app, instead of simply launching the Facebook app fb://.

Here is the most recent collection of great mobile deep linking examples from 11 top apps such as GoodReads, Netflix, Quora, SlideShare, Starbucks, Pinterest, Wanelo, Yelp and Etsy.

Deep linking and mobile operating systems

Unlike the Web, where the underlying technology of HTTP and URLs allow for deep linking by default, enabling deep linking on mobile apps requires these apps be configured to properly handle a uniform resource identifier (URI).[1] Just like a URL is an address for a website, a URI is the address for an app on a mobile device. Examples of URIs that launch a mobile app:

The format of the URI used to trigger or deep link an app is often different depending on the mobile operating system. Android devices work through intents,[2] BlackBerry 10 devices works through BB10's invocation framework,[3] Firefox OS devices works through Web Activities,[4] iOS devices works through the openUrl application method,[5] and Windows Phone 8 devices works through the UriMapper class.[6] Examples of URIs that deep link directly into a mobile app:

Complexity of mobile deep linking and the need for a streamlined solution

The greatest benefit of mobile deep linking is the ability for marketers and app developers to bring users directly into the specific location within their app with a dedicated link. Just as deep links made the web more usable,[7] mobile deep links do the same for mobile apps.

Unlike deep links on the web, where the link format is standardized based on HTTP guidelines, mobile deep links do not follow a consistent format. This causes a confusing user experience because different sets of links are required to access the same app on a different mobile operating system.

Several organizations have developed solutions to help simplify this confusing user experience. One such solution is the creation of a smarter deep link that triggers the most appropriate response depending on the device accessed by the user.[8]

A solution developed by AppsFlyer detects the device type and the installed apps and triggers: (i) Web deeplink or (ii) Mobile deeplink or (iii) Opens the appropriate App Store in case the requested app is not installed on the user device. The solution leverages the company's mobile attribution product in case (iii), which is known as deferred deeplinking.[9]

The open source solution created by Branch Metrics carries link data through app install, allowing users to see messages, photos and other content regardless of whether they have downloaded the app. [10]

Another solution proposed by URX requires prepending any normal web link with urx.io/ to convert it into a deep link.[11] Omnilinks work across all devices and will route users into a specific page in an app if that user has the app installed.[11]

Passing search data via deep linking

One example of a better user experience made possible because of deep link and data passing through install solution by Yozio is one in which search information is passed into an app to bring the user to the exact information that drove them to the app. Compared to a common web link, this implementation shortens 7 action steps into 2. For example, to search for hotels in Boston, a user currently needs to: [12]

  1. Search on Google
  2. Select a search result and land on the interstitial
  3. Select to download the app and be directed to the app store
  4. Update the app
  5. Open the app
  6. Understand why I am not given hotels in Boston for tonight
  7. Type in my search for Boston and search again. But this time inside the app.

That can be shortened to:

  1. Search on Google
  2. Open the app to the correct page based on the context of the search.

Available standards and tools

Tools

Standards

Non-standards

See also

References