The App Attribution Guide
Chapter 7

Android attribution and the install referrer

Android gives attribution something iOS does not, a note from the store saying where the install came from.

In short: On Android, Google Play hands the app a referrer URL from the link that led to the install, which makes deterministic attribution possible. It only covers same-session clicks to Google Play, so Meta offers its own Meta Install Referrer for Facebook, Instagram and Audience Network installs, including view-through and multi-session clicks.

What is the Google Play Install Referrer?

The Google Play Install Referrer is an Android API that lets an app securely retrieve, after install, the referrer details Google Play recorded for that install, including the referrer URL and click and install timestamps. An MMP SDK reads it on first launch and uses the values in it to match the install to a click.

It is the main reason Android attribution is more reliable than iOS attribution. A click ID placed in the referrer survives the trip through the store and comes back intact.

How the referrer works

  1. A tracking link sends the person to Google Play with campaign details in the referrer value.
  2. Google Play stores that referrer against the install.
  3. On first launch, the app connects to the Install Referrer service through Google's library.
  4. The app receives the details and sends them to its MMP.
  5. The MMP matches the click details and credits the campaign.

The current library dependency is com.android.installreferrer:installreferrer:2.2. It needs Play Store app version 8.3.73 or later on the device.

What the API returns

MethodWhat it gives you
getInstallReferrer()The referrer URL of the installed package
getReferrerClickTimestampSeconds()When the referrer click happened
getInstallBeginTimestampSeconds()When the install began
getGooglePlayInstantParam()Whether the person used the app's instant experience

The two timestamps are useful beyond attribution. Comparing click time with install begin time helps spot suspicious patterns, a topic covered in ad fraud.

Read it once, read it early: Google says referrer information is available for 90 days and does not change unless the app is reinstalled, and that the API should be called only once, on the first run after install.

Is the Play Install Referrer always available?

No. It only exists for installs from Google Play, and it only covers same-session clicks that lead straight to Google Play. Installs from other Android stores, sideloaded APKs and debug builds installed through adb have no Play referrer.

Other limits to plan for:

  • Response codes: FEATURE_NOT_SUPPORTED means the current Play Store app does not support the API, and SERVICE_UNAVAILABLE means the connection failed. The connection can also drop while the Play Store updates, so the app must reconnect.
  • No view-through: the referrer comes from a click on a link, so an install after an ad view has nothing to carry.
  • No cross-session clicks: if someone clicked, left Google Play and came back later, the referrer may not reflect the earlier click.
  • Stripped values: redirects that drop the referrer value on the way to Google Play break attribution. Google's older documentation lists this as a cause of under-counting.

For installs from third-party Android stores, Google Ads records conversions on first open rather than download.

What is the Meta Install Referrer?

The Meta Install Referrer is Meta's own Android mechanism that lets an app read Meta campaign data for installs that came from Facebook, Instagram or Audience Network ads, including cases the Google Play referrer cannot cover.

Meta's comparison is direct:

Google Play Install ReferrerMeta Install Referrer
Same-session click installsYesYes
Multi-session click installsNoYes
View-through installsNoYes
Where the data comes fromGoogle PlayThe Facebook, Instagram and Facebook Lite apps on the device
When to queryFirst run after installFirst launch

The data is read from the Facebook app (version 428 or later), Instagram (296 or later) and Facebook Lite (411 or later). Returned fields include actual_timestamp, an is_ct flag that is 1 for a click and 0 for a view, and an encrypted install_referrer.

Meta data inside the Play referrer

Meta also places encrypted campaign metadata in the utm_content field of the Google Play Install Referrer, encrypted with AES-GCM 256-bit and decrypted with a key from the Meta App Dashboard. Meta says other referrer fields such as utm_source should not be used as a sign that an install came from Facebook.

Decryption key: Both Meta mechanisms return encrypted campaign data. The app owner, or their MMP, needs the key from the Meta App Dashboard to read it, so check that the key is set up in your MMP.

A worked example

A fintech app runs ads on Instagram and Google on Android.

  • Install A: Kavya taps a Google App campaign ad and installs straight away. The Play referrer carries Google's details, and the install is matched on first launch.
  • Install B: Sameer watches an Instagram video ad but does not tap. Later that day he searches Google Play and installs. The Play referrer has nothing from Meta, but the Meta Install Referrer reports a view, with is_ct set to 0.
  • Install C: Rohit taps an Instagram ad, goes to Google Play, leaves, and installs from Google Play the next morning. The Meta Install Referrer can report the earlier click as a multi-session click-through.

Without the Meta Install Referrer, installs B and C could easily look organic in the MMP, even though Meta claims them in its own dashboard. This is one of the most common causes of the Meta and MMP gaps described in self-attributing networks.

How Android compares with iOS

The install referrer is the main reason Android and iOS attribution look so different in the same dashboard.

  • Android: a click ID can travel through Google Play and come back on first open, so most Play installs from tracked clicks can be matched deterministically.
  • iOS: there is no store referrer for a normal App Store install. User-level matching depends on tracking permission, and everything else goes through Apple's aggregated frameworks, covered in iOS ATT and SKAN.

Expect a higher share of user-level attributed installs on Android than on iOS for the same campaign.

Common Android attribution problems

General practice checks, in rough order of how often they cause trouble:

  • SDK reads the referrer late, after a login screen or a crash, so the first open is missed.
  • Referrer read on a later launch, after a long delay.
  • Install from a non-Play store, with no referrer to read.
  • Testing with a debug build installed through adb, which has an empty referrer.
  • Meta decryption key missing in the MMP, so Meta referrer data cannot be read.
  • Multiple tracking redirects that drop the referrer before Google Play.

For the bigger picture on how a first open becomes a credited install, read how an install gets attributed. Deep links on Android, which use App Links rather than the referrer, are covered in the next chapter.

Questions on this chapter

How long is Play Install Referrer data available?

Google says it is available for 90 days after install and does not change unless the app is reinstalled. Apps should still read it on the first run rather than relying on that period.

Does the Play Install Referrer work for view-through installs?

No. It carries data from a link click that led to Google Play in the same session, so installs after an ad view have no referrer data. Meta's own referrer covers view-through installs from its apps.

Why does my app get an empty referrer when testing?

Debug builds installed through adb do not come from Google Play, so there is no referrer. Test with a build installed from a Play testing track instead.

Do I need both the Google Play and Meta referrers?

If you run Meta ads on Android, reading both gives the most complete picture. The Google Play referrer covers same-session clicks from any source, and the Meta referrer adds Meta's view-through and multi-session installs.

What about installs from other Android app stores?

They have no Google Play referrer. Attribution for those installs depends on store-specific referrers or other link-based matching, which varies by store.

What is mobile app attribution?

Mobile app attribution is the process of crediting each app install and in-app event to the ad, link or channel that drove it. It tells you which campaigns bring users, so you can move budget to the ones that work.