Creating App Install Opportunities With Deeplinking
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 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 Branch.io (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.
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 Branch.io, 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.
- How Does One Effectively Market An iPhone App?
- Finally, A True App Discovery Platform Is Here: Pinterest Joins Forces With Apple
- Branch.io Features
Disclaimer: I’m in no way affiliated with Branch.io, I just genuinly want to support a good (and free!) service.
Learn how to code iOS apps with me. We'll focus on app architecture, best practices and fundamental topics.
Become an insider. Get access to our members-only courses and private community. » Learn more
Most Popular Content
- How To Make An App (In 9 Steps)
- How To Develop iOS Apps On A Windows PC
- How To: Pass Data Between View Controllers In Swift (Extended)
- Creating A Simple iOS Game With Swift In Xcode
- How To: Build A Real-Time Chat App With Firebase And Swift
- How To: Random Numbers in Swift
- Understanding The "Use of Unresolved Identifier" Error In Xcode
- Understanding The «Unexpectedly found nil while unwrapping an Optional value» Error
Comments & Questions
Got a comment or question? Let me know! I read and respond to every one. Thanks!