Creating App Install Opportunities With Deeplinking

Written by: Reinder de Vries, March 22 2015, in App Marketing

For any app developer or app publishing company getting new customers to install their apps is paramount. Gaining traction, growing a customer base and making sales is key to any business, but for an app publisher it all starts no sooner than their app is installed on a user’s phone. One way a publisher can increase their install-rate, is to use a system called deeplinking.

What Is Deeplinking?

Deeplinking is as old as the internet itself. Back when the internet specification was created, a way to interconnect websites was set up too: the famous “ahref” or hyperlink. URLs, or Uniform Resource Locators, designate a particular place on the web. Deeplinking means nothing more than linking from one web page to another. The term “deep” comes from the fact that the internet is a heterogenous web, a graph. One page link can, without effort, link to an entirely different page on the other side of the web.

In apps, you can do the same. Apps, on both iOS and Android, can expose a URL Scheme. It looks something like this: myapp://user/823671. The developer codes the scheme into the app and defines what should happen when a random user clicks on the link. In this case, it’s very likely that MyApp opens the profile of a user “823671”.

Examples are numerous: link from an online advertisement directly to a apple pie recipe in your app, or let one user refer a fried with myapp://refer/[userID_1]/[userID_2]. Effectively, it’s as usable as the hyperlink web itself.

When Deeplinking Doesn’t Work: No App Installed

The biggest downside of app deeplinking is this: it doesn’t work if the app isn’t installed! That’s a dealbreaker, because you can’t distribute your links unless someone has installed your app. Is there a way to figure out your app is installed? No, not really. An iOS API exists for app developers (UIApplication -canOpenURL:), but there’s no side-effect free way to check for installs with HTML 5 for instance.

The closest and easiest solution is this, in JavaScript:

<script language="javascript">  
var timeout;  
function open_appstore() {  

function try_to_open_app() {  
    timeout = setTimeout('open_appstore()', 300);  

<a onClick="javascript:try_to_open_app();" href="yourappurl:">App name</a>

Source: StackOverflow

The script attempts to open a URL Scheme. When that fails, nothing happens, and the timer fires, redirecting the browser to iTunes where the user can install the app. If the app was installed, the URL Scheme works, and the timer doesn’t fire.

Ancient Deeplinking: Tell-A-Friend

Deeplinking, in a sense, is as old as man (and woman) itself. One of the greatest and most effective ways of free marketing is… a referal system! You know how it works: a business delivers great value, and a friend tells you about them. They refer the business to you and couple it with an authoritative and empirical story: they got a great experience with the business, and as someone who knows you, recommend the business to you.

When you combine deeplinking with a referrals, a great marketing system arises. What if you could combine those installed-or-not deeplink hacks with mentions on Twitter, for instance. A happy customer is using your app, and you give the customer to refer the business to a friend. But instead of just plainly sending the potential customer a generic link to the App Store, you send them a contextual link. Potentially, involving the authority and friend-status of the referer.

A business that has created such a system, is (free). They’ve created a system that enables referrals of users by using the deeplinking technique, while adding a context at the same time.

Picture this: Bob is very happy about an app he’s using, an app about curated indie paintings. Bob sees a painting and wants to share that with Alice, because he thinks Alice will like the painting. The app developers of the indie paintings app support this, and Bob can send a contextual deeplink to Alice. Alice opens the link, sees that the link comes from Bob and sees what she can expect from it. The link then takes her to the App Store, because she doesn’t have the app installed. After installing, the app knows it’s Alice who opens it, and presents here with the painting Bob wanted her to see. There’s a high chance Alice will like the painting, and check out some more paintings. The business behind the app now has a hook to a new user, and can start a continous onboarding process to keep the customer.

Neat, right?

The Future Of App Deeplinking

App deeplinking isn’t far from mature.

Since a while now, Twitter (App Cards), Pinterest (App Pins) and Facebook (App Install ads and widgets) support deeplinked installs. Unfortunately, most of them don’t really allow the developer to set a context. Such a context can, for instance, be created by setting a cookie prior to installing the app and reading that back with the in-app browser.

Also, apps can’t really expose their URL Schemes effectively. They’re often invisible to the naked eye, there’s no public API for “asking” an app what URL Schemes it has. Therefor, a graph-based web (“internet”) of apps can’t be created yet.

A future company that cracks that problem, has the potential to create a native internet based on apps. App developers would connect their UI’s directly to a URL and stimulate context and information sharing between apps.

We’re just not there yet.

Quick Wins For App Publishers

A quick win for app developers and publishers is integrating with, or a similar product. Keep in mind that such services only provide technology and insight, not a good marketing campaign. Tell-A-Friend still relies on good customer service and an incentive for current customers to refer your business to potential customers.

Further Reading

Disclaimer: I’m in no way affiliated with, I just genuinly want to support a good (and free!) service.

Reinder de Vries

Reinder de Vries is a professional iOS developer. He teaches app developers how to build their own apps at Since 2009 he has developed a few dozen apps for iOS, worked for global brands and lead development at several startups. When he’s not coding, he enjoys strong espresso and traveling.

Leave a Reply

Required to post: Your real name and email address, and a pleasant demeanor. Your email address will not be published. Markdown is supported.