Deep Linking in Apps for Improved Discoverability
For independent app developers, discoverability is not an easy thing to achieve. In all app stores, particularly Google Play, it’s usually the case that a handful of larger, well-known developers dominate the charts. Research suggests that just 3% of the 250 top apps in the Play store were by new publishers and these accounted for just 1.2% of overall app revenue.
A study carried out by Tune found that 47% of users found apps through the Apple Store, whilst 53% of users found apps through Google Play. Other means of discovering apps included:
- Reading about it online: 11%
- Web search: 2%
- App store charts: 10%
- Featured apps: 1%
- Recommended by a friend: 1%
- Clicked through on an ad in another app: 1%
It’s clear that users are predominantly using the app stores to find apps. This is no surprise. While Google introduced deep linking in October 2013, it’s only recently that it’s improved enough for apps to be discoverable in mobile search. Now Google allows apps that are not installed on the user device to be discovered.
Bing has introducing deep linking, and Facebook introduced App Links at its F8 developers conference last year.
However, as of this time last year, just 22% of the top 200 iOS apps used deep linking, and just 17% of Android apps.
What is Deep Linking?
In search, apps appear as ‘walled gardens’ to search bots and the content that they contain is not presented to people searching. From a user perspective, this means that it’s necessary to install an app to see if it’s suitable to their needs.
Deep linking and app links allow a developer to make the content within their app discoverable in search. App links link website content to app content. Adding markup to a web page to link an app is simple. Using a set of
; tags to establish the relationship between the website URL and the app URI using the following format.
<meta property="al:(platform):(property name)" content="(property value)"/>;
The image below gives a more detailed example of how the tags link the page with the app. This allows search bots to index the web page in the usual way, but also index the relationship between the website and the app. It’s a simple way of ensuring that your app shows up in search results. Bing has helpfully providing a tool called Applinks Markup Tester so that you can test your markup and see exactly how Bing extracts the App Links data from your site.
App links vs. Deep Linking
You can link app content to specific pages on your website. This is a more powerful approach and will return search results that point to specific locations within the app. The app link appears below the normal search results with a link to the app content, which when clicked opens up the app itself.
For example, if a users has searched for ‘flowers’ and part of your app content includes content about flowers then your web URL might read http://www.yourwebsite.com/flowers and when clicked, the app would open up to the flowers content page in the app.
Adding deep links to your app is platform specific so you will have to follow different methods depending on the OS. In Android, you’ll first need to register the URL scheme in the app manifest. Once you’ve done this, you’ll need to use intents to map routes to in-app activities.
Read the Android Developers documentationation for full instructions on how to add intents, test deep links and specify content for indexing.
For iOS, you’ll have to register the URL scheme in the project settings or in the info.plist file before implementing the
openURL method in
For more information on adding deep links iOS apps indexed (still currently limited) read the Google Developer’s instructions.
You should aim to create a URL structure that matches closely with the structure on your website.
Web link: http://www.yourwebsite.com/category/flowers Deep link: yourwebsite://category/flowers
You’ll then have to add tags so that third party sites can send the relevant traffic to the correct page in the app. To do this, add these tags to the head section of your site as
<meta property="al:ios:app_store_id" content="456788990" />; <meta property="al:ios:url" content="sample://page1" />; <meta property="al:ipad:app_store_id" content="234788990" />; <meta property="al:ipad:url" content="sample://page1" />; <meta property="al:android:package" content="com.sample.android" />; <meta property="al:android:url" content="com.sample.android" />; <meta property="al:windows_phone:url" content="sample://page1" />; <meta property="al:windows_phone:app_id" content="12345678-1234-1234-1234-123456789012" />;
Sound too Complicated?
Perhaps one of the reasons deep links and app linking isn’t used widely right now is due to the extra work that devs need to put in. This is especially true if you develop versions of the app for iOS and Android. However, thus far we’ve not had any way to index app content and for indie devs this is a step forward as with a little extra work, it’s possible to boost discoverability.
There are resources that can help provide a framework for you to work from. Deeplink offer a platform for devs to add deep links to their apps whatever the OS. Prices are charged per click so it’s not a free resource.
According to the Applinks.org’ blurb,
App Links is an open, cross-platform solution for app-to-app linking that gives you the tools you need to expose deep links in your app or to link out to others.
App Links aims to make app linking much easier for devs and it’s free.
App linking and deep linking is a positive step for app developers and the web overall. App success has become the domain of the larger and more popular developers and it’s incredibly difficult to gain any traction with a new app. Having the ability to discover apps in normal search is sure to alter this, and once it takes off, it’s likely to mean that we’ll see a shift back to native apps over web apps.
Those devs that can jump in and learn how to add deep links will be the ones that should find more success for their efforts in the future.
- Appboy: Deep Linking to In-App Resources: iOS
- Appboy: Deep Linking to In-App Resources: Android and FireOS
- App Index: App Deep Linking Guide
- Mobile Deeplinking Project: Collaborative industry project intended to provide high-quality documentation, sample code and SDKs to app devs
- App Search in iOS: Information on the new and improved methods for deep linking in iOS9