There are many ways to make your app draw in more users, integrate better with other communication media (websites, social networks) and, in the end, turn bigger profits. Deep linking is one of them.
What is deep linking?
So what’s the difference between a deep link and a regular one? Your usual link that leads to a mobile app will send you to the app’s main screen if the app is installed on your device. If it’s not, it’ll direct you to App Store or Google Play. You’ve most probably seen it work this way more than once.
But it could be better. Imagine you’re developing an E-commerce app for a store that sells socks. So you’re having a sales event on World Vegan Day (and Halloween as well) and advertise it in social networks. You want your customer to be able to just click the banner and be taken right to the app screen with that one pair of pumpkin-patterned socks they fancied or the description of this specific event. Whether your customer is under iOS or Android doesn’t matter. Whether they have your app installed doesn’t matter either. The main thing is that they get to that specific screen. Moreover, you’d like to know how many customers came through, who they were, where they came from (whether they clicked the banner or just Googled), how long they stayed in your app, and, in conclusion, whether they bought the socks or not.
Deep links can do all of it.
Here is the basic description
Deep links collect and transfer data on:
views, clicks and installations;
channels that turn in the most profit and have the most downloads;
users who follow links the most.
Things deep links can also do and why you might need them:
The most obvious use for deep links is directing the user from a notification to the required screen of the app. When integrated with services like Yandex AppMetriсa, deep links are also a great way to send out notifications and check the efficiency of notification campaigns. All events, sales and news updates become substantially more impactful;
Deep links can be used to set up cross-channel campaigns by embedding these deep links into other apps, e-mail letters, website banners and SMS messages;
Deep links (or more precisely, app screens they lead to) can be indexed by Google to show up in search results. This means the user can get into the app straight from the search engine;
If the app’s business area is offline-related (for instance, retailing, promo events or other applicable business scenarios), you can embed deep links in QR codes or Bluetooth beacons and direct the user who visits your store right to the app screen of the related event, opening up yet another customer acquisition channel;
It’s possible to collect statistics and monitor the efficiency of various channels and analyze customer behavior (even after the deep link was clicked) using deep links.
We implemented deep links in one of our favorite projects — the ILEDEBEAUTE mobile app.
Previously it had a custom-made Actions system. These mobile app modules could bring the customer to any part of the app when they received the notification. In fact, this system was initially implemented to work with notifications. Clicking on an advertisement banner would take the customer to the app’s main screen.
We observed that the visitor count was going up along with the volume of sales made through the app. The store would constantly hold events and make seasonal offers, and so they wanted every page of the website to have a banner that’d send the customer to the screen with the product’s description in the app.
So what did our customer want?
Links that are available from the desktop or mobile ILEDEBEAUTE website that would instantly take users to the product in the app;
Links to events and collections;
To attract new mobile device users directly into the app;
To get the user to the required screen through app installation;
To monitor the efficiency of various marketing channels and banner networks.
Ways of implementation
Our shortlist of premade services consisted of:
Branch — one of the most advanced deep linking services that we researched as the leading service in its area;
Firebase — Google’s super system that boasts a huge list of features, including deep linking and search indexing;
AppsFlyer — a system that we employed to work with marketing campaigns and stats collection long before we had the idea of implementing deep links.
Besides, there are other solutions like Adjust, Yozio, Deeplink or a few open source ones; we aren’t going to cover them in our article. Still, we would like you to leave your comments if you want to share your experience in working with these.
We also won’t be talking about custom implementation, so that’s up to your development team. There are plenty of detailed examples out there. In any case, it’s probably going to be similar: to get the most important features (redirection via App Store/Google Play, dual platform implementation, analytics) to work, you will have to make additional services from scratch.
Branch is probably the most feature-packed deep linking service that can do it all.
tons of features;
quality and convenience;
plentiful examples, descriptive use cases and an informative blog.
All in all, these guys are very serious about their business and are well in their right to consider themselves the leaders on the market.
Price. There are free plans, but they are suitable only for start-ups or very lightweight apps;
Narrow specialization. Unlike Firebase or AppsFlyer, deep linking is Branch’s only schtick. It only works with deep links (but does it really well).
Summary: Branch is a great service if you want the most out of your deep links and are ready to seriously invest into them, or if your app is very light and you can go for a free plan.
You are most probably already familiar with Firebase, and if you aren’t, do yourself a favor and check it out. Firebase is a Google service for mobile app developers and it has everything: hosting and databases, cloud services, testing and crash reports, AdWords settings, deep linking, indexing and a lot more.
everything’s in one place — analytics, deep link configuration and other services if they are needed;
full manuals and instructions;
deep links, App indexing and analytics in Firebase are free and available by default.
Cons: lacks certain features that Branch and AppsFlyer have (content preview, working with ad networks).
Summary: Firebase seems to be the go-to comprehensive, all-purpose service for working with deep links, especially if you are already using other Firebase services.
AppsFlyer is a service that is primarily aimed at marketing campaigns and attracting users to apps. It was used to set up ad campaigns in our app, so it made sense to consider it as a platform for implementing deep links as well. AppsFlyer offers its own deep linking solution called OneLink.
Pros: marketing campaigns and everything related to them.
interface is far from being user-friendly;
unstable — crashes occasionally, or sometimes deep links would just stop working and the app had to be reinstalled.
Summary: AppsFlyer can work if you want your deep links to be connected to ads and marketing campaigns, but you might be better off with a different solution if you can easily forego it.
Choosing and setting up a service
After we compared Branch, Firebase and AppsFlyer, we initially chose Firebase. We wanted the service we picked to have everything:
deep linking service;
notification settings service;
metrics collection and stats analysis;
This solution would be free, easy to use and stable (hypothetically), and so we began to implement it. Step by step, we tried out the best ways to meet the business goals we had in mind at the beginning.
Our client’s representative was already accustomed to configuring ad campaigns in banner networks using the AppsFlyer service, and so we decided not to mess with lead generation and marketing campaigns related stuff. AppsFlyer can do it all just fine, and it also stores all the stats and can help assess the efficiency of ad campaigns. However, this time we configured AppsFlyer to use several types of deep links — both its own and those generated by Firebase.
AppsFlyer admin panel
To get the most out of notification settings, we used Yandex’s AppMetrica that was already configured to collect analytics data. It has a module for managing push-notification campaigns and embedding deep links in notifications. The functionality of deep links that dealt with notifications was passed on to AppMetrica, and AppMetrica also keeps all the stats.
The aforementioned push-notification manager module. The arrow shows the link that’s embedded in the notification.
A more general view of the AppMetrica admin panel.
So what did we end up using Firebase for? For forming deep links that lead the user via the app installer and for gathering stats on such link-through-installation follows. The Firebase admin panel is the easiest to use and the links that it generates are the shortest and the most easily readable.
The Firebase admin panel. You can see the follow statistics for each link by clicking on it.
At the same time, we made it possible for deep links to work without side services as well. The ILEDEBEAUTE website link contains identifiers that the app’s action mechanism can parse and use to navigate to the required screen. The only drawback is that if the user doesn’t have the app installed, they’ll just be transferred to the mobile website version.
In the end, the business goals were met, even if in several simultaneous ways. Here are some of the conclusions we made:
if you’re looking for a free deep linking hosted solution and don’t want to develop your own, there are quite a few already;
having several analytics systems is totally fine;
having flexibility when configuring new features like deep links and using several external services for various features is OK as well.