About device identifiers

At a glance: Understand the device identifiers supported in the AppsFlyer SDK.

Overview

The AppsFlyer SDK collects device identifiers for attribution purposes. Identifiers can help you map your users' journey and understand their preferences.

The SDK automatically collects identifiers such as the AppsFlyer ID and the Google Advertising ID (GAID). Collecting other identifiers for your app depends on your needs (for example, collecting third-party Android app stores or apps marketed in China).

Device identifiers for all platforms

The SDK supports the following device identifiers for all platforms:

Device identifier Purpose

AppsFlyer ID

An AppsFlyer ID is automatically created for every install of an app. You can use this identifier to perform the following actions:
  • Send server-to-server in-app events.
  • Match AppsFlyer ID with user records in your backend systems.
  • Map entries when merging data from pull and push APIs.

Customer User ID

The Customer user ID (CUID) field is a unique identifier set by app and website owners. Setting your own CUID in the AppsFlyer SDK enables you to cross-reference your own unique ID with the AppsFlyer ID and other identifiers. The CUID is available in AppsFlyer raw data reports. You can also use it in postback APIs for cross-referencing with your internal IDs. 

Android device identifiers

The SDK supports the following device identifiers for Android platforms:

Apps published on Google Play

Device identifier Purpose

GAID

A user-resettable identifier for Google Play Android users.

Starting with SDK V4.8.0, AppsFlyer automatically collects this device identifier.

Apps published in third-party app stores

Device identifier Purpose

Amazon Advertising ID

A user-resettable, unique identifier used by Amazon Fire TV. See CTV overview

OAID

A user-resettable identifier used by some out-of-store Android markets.  For more information, see the Guide to implementing OAID.

IMEI 

A unique, non-resettable mobile-device identifier used in non-Google Play markets. The SDK does not automatically collect the IMEI. However, if there is a need to collect these identifiers, your developer can implement collection.

Notes:

  • Starting with Android 10, access to IMEI is restricted.
  • IMEI cannot be used in conjunction with GAID.

Android ID

A unique, non-resettable mobile-device identifier used in third-party app stores. The SDK does not automatically collect the Android ID. However, if there is a need to collect these identifiers, your developer can implement collection.

Note: Android ID cannot be used in conjunction with GAID.

Apple device identifiers

The SDK supports the following device identifiers for iOS platforms:

Device identifier Purpose

IDFA

A unique user-resettable identifier for Apple iOS or tvOS (Apple TV) users. Since the release of iOS 14.5, IDFA is available only if the user consents via the ATT prompt.

IDFV

A device identifier shared by all the apps from the same vendor on the device. Once the first app is installed, the ID is assigned to it, and other apps from the same vendor are assigned the same IDFV. Apps from other vendors are assigned a different IDFV.

In addition, when all the apps from a specific vendor are removed, the IDFV for that vendor is deleted, and upon a new installation, a new IDFV will be assigned.

CTV , PC, and console app device identifiers

The SDK supports the following device identifiers for CTV, PC, and console platforms:

Platform Device ID
Android TV advertising_id
tvOS (Apple TV) idfa
Amazon Fire TV amazon_fire_id
Chromecast advertising_id
Roku rida
Vizio vida
Samsung tifa
LG
  • LG WebOS=lgudid
  • LG Ads=ifaid
Xbox custom
Vidaa vidaaid
Steam steamid
Meta Quest (Oculus) custom
Epic Games epicid
PlayStation psid
Native PC custom
Google Play Games on PC See Android identifiers