App optimization should be a part of any app launch or rebuild. In the same way that neglecting the basics of SEO in your website will render it invisible to a huge audience – creating an app, but neglecting the basics of app optimization, will mean missing out on a lot of opportunity in the search results.



App Indexing on Google
You want internal app pages indexed for mobile searchers. Here’s why. Below is how.


Although this post touches on App Store Optimization (ASO) it is primarily concerned with optimizing mobile phone apps for appearance in search engine results outside of the app marketplaces.

Why Bother with App Indexing?

Don’t People Find Apps in App Stores? Don’t you want them to go to your main site?

Currently, Google tells us that 50 billion links within apps are indexed and 25 percent of searches on Android devices return deep links to apps for signed-in users and 1 in 4 apps are being discovered using search.

Google has recently announced a bump in mobile web rankings when a brand has submitted its app to their App Indexing API, this is over and above ranking increases off the back of Mobilegeddon. This is because submission allows Google easier access to determine how relevant an app is to a user.

Google has also recently announced a mobile-first index.  This means ranking factors will be biased toward good mobile experiences — even for desktop users.

“Must-dos” when launching an app:

  1. Enable deep linking
  2. Mirror the URL structure on the website as much as possible (preferably the same URL as “desktop”)
  3. Optimize your app page as you would a normal webpage
  4. Submit to the app indexes

Following these steps will enable an app to achieve maximum reach in the various app search engines with minimal effort. Case studies (listed below) have shown increases in rankings, impressions, traffic, downloads and app re-engagement for numerous brands when taking advantage of app indexation and deep linking. We discuss more about each of these areas below.


App Indexation

Google wants to index your app just as if it were a website. This means the app will appear in Google’s SERPs in certain situations.

To do this is relatively straightforward:

  1. Support HTTP deep links within your app (if your website URLs are the same as your app URLs, you can stop here and submit to Google).
  2. Implement Google App Indexing using the App Indexing API for Android, or by integrating the App Indexing SDK for iOS 9.
  3. Map your app pages to corresponding web pages using rel=”alternate”, or an XML sitemap.
  4. Associate your app with your site in GSC.

There are several differences in this process for IOS and Android. This comparison is from Will Critchlow’s presentation at SearchLove:

Checklist from Will Critchlow’s SearchLove presentation on android apps

Checklist Will Critchlow’s SearchLove presentation on iOS apps


Firebase logo

Firebase App Indexing is the new name for what used to be known as Google App Indexing and is one of the quickest ways to get an app into Google’s search results – thus allowing users to either launch an app directly from the search results or see a listing offering to install the app.

Submitting to Firebase also has the added benefit of clarifying user data as app information (impressions, clicks, etc.) will show up alongside other website data in GSC.

Firebase Implementation has two steps:

  1. Support HTTP URLs in your app (this will be done with deep linking – more information for Android implementation and iOS implementation).
  2. Then add the App Indexing API for Android or SDK for iOS (more information for Android implementation and iOS implementation).

While Bing is not quite as advanced as Google when it comes to app indexation, it does respond well to both and App Links.

Deep Linking

Deep linking ranking signals appear to be:

According to Moz, deep linking will benefit Android users in two ways:

  1. Users searching on an Android device who have not yet installed your app will see the app show up in mobile search results.
  2. Android users who do have your app installed will get query autocompletions when they use browser search, which can include results from your app, as well as seeing enhanced display elements in the SERP (such as the app icon). It’s similar to rich snippets for apps.

Using cookies for a logged in user, if an Android user has been to a page on your app and later does a search in Google that is related to that app, there is a good chance that the page they dropped off of in your app will appear in their SERP as an option.

android logo

To implement this for Android is a three-step process:

  1. Enable your app to handle deep links
  2. Add code to your corresponding Web pages that references deep links
  3. Optimize for private indexing

Apple app store logo

Apple, on the other hand, only benefits from deep linking when users already have the app installed. Similar to Android, an association must be made between a website and an app before deep linking can be fully enabled. General steps for Apple:

  1. Create an apple-app-site-association file that contains JSON data about the URLs that your app can handle.
  2. Add apple-app-site-association file to your website.
  3. Add entitlement to your app.
  4. Upload the apple-app-site-association file to your HTTPS web server. You can place the file at the root of your server or in the .well-known subdirectory.
  5. Prepare your app to handle universal links.
  6. Add an entitlement that specifies the domains your app supports.
  7. Setup Cocoapods.
  8. Update your app delegate to respond appropriately when it receives the NSUserActivity object.

Differed Deep Linking

Deferred deep linking allows you to link new visitors to a download when necessary, and sending that user to their targeted page after the download happens. In order to do this, the deep link must be passed through the app store and into the app at install.

There is currently no industry standard set for deferred deep linking so many companies have developed in-house technology to achieve this – most of which incorporate the below two options in some way:

  1. For Android, you can add campaign parameters as query parameters to the Play Store link.
  2. For IOS, you can’t pass data in the same way, so you will need a remote server to hold the data while the user downloads the app – when the user opens the app for the first time this data will be passed back through and direct them to the appropriate page.

App Packs

Different from deep links, App Packs more closely resemble the traditional app listings that users are used to in the search results, such as links to an app store to download an app with anywhere from 1-6 listings per search engine results page.

According to Emily Grossman, optimizing for App Pack appearances, “relies heavily on the app title, description, star ratings and reviews, and it will differ greatly from the internal app store rankings.”

Normal App optimization will apply here with an emphasis on traditional SEO tags and – dare we say – keyword stuffing, which is currently the most foolproof strategy for this type of app optimization.

Progressive Web Apps

Max Lynch sums up progressive web apps best on his blog:

“Native app store apps do things like send push notifications, work offline, look and feel like an app (as Apple and Google have imagined them), load on the homescreen, and so on and so forth. Mobile Web Apps accessed in a mobile browser, by comparison, historically haven’t done those things. Progressive Web Apps fix that with new Web APIs, new design concepts… On the whole, Progressive Web Apps describe a collection of technologies, design concepts, and Web APIs that work in tandem to provide an app-like experience on the mobile web”

Progressive web apps exist thanks to service workers, proxy-like JavaScript technology that runs in the background and executes requests when triggered, but they are currently only available on Android and Chrome 50, meaning those who can use progressive web apps will be limited for some time.

These also allow the ability to pin websites to a mobile home screen with a vastly superior UX than the old method of doing so. This is done by writing a manifest.json file and linking to it from the main html page.

Google offers a guide to building a progressive web app and building an offline web app.

Expected Impact

There are numerous pieces above that would all have their own impact, but what is certain is that a combination of most, or all, of them would provide a significant boost in mobile traffic.

Again, from the executive summary, the “must-dos” when launching and rebuilding an app are:

  1. Enable deep linking
  2. Mirror the URL structure on the website as much as possible
  3. Optimize your app page as you would a normal webpage
  4. Submit to the app indexes

Google has provided numerous studies on the impact of app optimization:

  • AliExpress increased search impressions by 80-90 percent while increasing clicks from Android users 30-40 percent.
  • Cookpad drove 97 percent of clicks to the app from search if a user had the app installed. They increased impressions by 24 percent due to ranking bumps, increased dormant app user re-engagement by 15 percent and increased the number of weekly sessions per active user by 10 percent.
  • The Daily Mail increased impressions for app users by 22 percent, increased time on site by 20 percent, and these users were 2x more likely to share an article and 28 percent more likely to watch a video.
  • Etsy increased daily app traffic from referrals by 12 percent, while impressions have increased 255 percent and clicks have increased 33 percent.
  • Tabelog experienced a 63 percent increase in impressions and a 3 percent increase in clicks.
  • Flipkart increased conversions by 70 percent with a progressive web app


Further Reading

Now that you’ve read this introduction to app indexing and optimization, check out the resources below for even more in-depth information.

A Concise Guide to Remote Debugging on iOS, Android, and Windows Phone
Although this article is for “debugging” the part SEOs should pay attention to is how to see what’s going on in the source code when using their mobile phone by connecting it to Chrome Developer Tools on their desktop device.

Mobile Moxie’s Deep Linking Markup Validator
Enter the URL of the page with deep link markup and this tool will highlight the relevant markup in green. Missing markup gets a red X. It checks for Rel=”alternate” (Google App Indexing), (Bing, Apple, Facebook), Apple Smart App Banners (Apple), and Twitter Cards (Twitter, Apple).

The Basics of JavaScript Framework SEO
Although it deals mostly with Angular.JS, this guide by Builtvisible is a frequent go-to when seeking information about single page application indexing in general.

App Indexing & The New Frontier of SEO
Emily Grossman and Cindy Krum of MobieMoxie explore how Google indexes deep app content and explains what marketers can do to promote their app content in Google search in this 3-part series on Search Engine Land.