Guest author Simon Kendall is head of communications for Adjust.
This year, we’ve seen a surge of initiatives from platforms like Facebook, Apple, Google, and Microsoft for deep-linking capabilities. From Facebook’s recent focus on deep links for app-install ads to Apple’s push in iOS 9 for improved app search and discovery, one thing is certain: Deep linking is all about optimizing the end-user experience and engagement within your app.
The magic of deep linking is creating a seamless experience for your users both inside and outside of your app. Particularly, when you need to engage with your users about a specific feature or content within your app, you can leverage deep links to make this experience easy and accessible, instead of forcing them to launch an app and navigate through it. (Full disclosure: My employer, Adjust, makes deep-linking tools for mobile-app developers, but I’m not going to discuss those specfically in this piece.)
You’ve likely read a lot of theory about how deep links can improve mobile apps. But I haven’t seen many resources that walk you through the actual technical process. Here are the steps you need to take when putting deep links to work.
First, Verify Whether the User Has Your App
In most instances, you can’t be certain that a user has your app on their device and can be deep-linked into it during a customer support request. If you want to use deep links in this context, you need to accommodate all users, regardless of whether they have your app or not. (Even returning users may have uninstalled it.)
There is a sneaky way to verify whether or not a user has your app on their device with deep links. Using JavaScript, you can “poll” your app by making the device try to access the deep link. When there’s a response, you know the app is installed and you’re able to send users over to the deep link.
If there’s no response, you can instead send users to the appropriate app store, website, or another location to guide your user through the next step.
To run this “poll’, you can implement the JavaScript as a “race” between requests. By asynchronously requesting both URLs, you give the deep link a head start over the app store URL.
If the deep link doesn’t respond, the app store link will “win” the race and redirect the user to the store. The key is to do this subtly and unobtrusively. If you do it right, the logic will be executed quickly in the background and the user will be directly seamlessly to the next stage in order to resolve their request.
Next, Trigger Deep Links to Execute At the Right Time
If you’ve verified that the user uninstalled your app, you can send them to the app store to redownload it. But, remember that the user is expecting to see something specific in the app that pertains to their request. Once they’ve reinstalled your app, you’ll still need to deliver on this request with a deep link. In this instance, you’ll want to defer the deep link by remembering it and executing it later.
When the user opens up your app after reinstalling it, you’ll want to continue right where you left off, and send them directly where they need to go through a deep link. To do this, you need a facility to pass data past the app store.
On Android, you can use an install referrer that passes arbitrary data through the Google Play Store and then catches it in the app on the other side. This is an excellent opportunity to send the deep link and execute it with a request on the first open of the app.
On other platforms or app stores, the deep link needs to be remembered somewhere other than the device itself. You can place a server in the middle that can connect the initial deep link click to the reinstall and send the deep link to the app as soon as it’s reinstalled.
The easiest way to do this is to match device or user IDs from the click to the install and have your app transmit these as soon as possible. Once you match the user, you can simply send a message from your server to have the app reopen the deep link that brought them in.
Finally, Record Results to Improve User Engagement
To understand exactly how well you’re doing with the user experience, you’ll want to do some measurement. Consider recording this latest encounter with your user—a “reengagement”—in detail. The data you’ll want to capture includes:
- the deep link brought a user in
- the type of creative that drove users to the deep link
- the time that the user clicked through the deep link
And so on. From this data, you will then be able to associate each reengagement technique with specific results down the line, such as increased purchases or increased return visits.
Additionally, you can report on exactly how the user arrived into your app by capturing whether or not the deep link was triggered when the user entered the app or deferred until after reinstalling. Knowing the proportion of reengaged users who came through the deep link gives you insights into whether your app is staying on the device or not. Optimizing on the ratio between users who had to reinstall and users who just hopped back into your app can be a great benefit.
Creating a streamlined user experience and then measuring the results of re-engagement is just one of the many benefits from deep links. Done well, it creates a little extra magic in the experience for end users, which leads to increased loyalty.
Photo by Roy Luck