Customer user ID field

The Customer user ID is a field that contains a key identifier of your app user and is used to cross-reference recorded installs in AppsFlyer. The field has a free text format. The Customer user ID is contained in raw data reports only.

How does it work?

Use the SDK to populate the Customer User ID field. Refer to the Set Customer User ID section of the SDK Integration Guides (iOS, Android, Unity) for more details.

Once the Customer User ID is set, all events recorded by AppsFlyer contain the ID. This allows you to cross-reference AppsFlyer data with your data, using the Customer User ID as a key. The Customer User ID field is contained in AppsFlyer raw data reports. 

For example, a user with two devices can have the same Customer User ID. Each time they perform an event on a device, it is recorded under the same Customer User ID. Allowing you to clearly understand the true value of the user across both devices.


  • Set the Customer User ID as soon as possible, as it is only associated with events reported once the attribute has been set. Ideally, it should be placed before the startTracking method API call to have the Customer User ID as part of the raw installation data.
  • If you work with integrated data partners, such as Mixpanel or Swrve, the Customer User ID must be set for the integration to work effectively.

For more details, see the Set Customer User ID section in the SDK Implementation Guides ( iOSAndroid).

Customer user ID for people-based attribution

AppsFlyer's people-based attribution (in beta) gives you a wider perspective on the impact of web and mobile campaigns, as well as the ability to analyze your efforts to switch web users to your mobile app and vice versa. If you are using AppsFlyer's people-based attribution (PBA), it's important that you set the same customer user ID in both mobile and web, to enable cross-platform insights and analytics.

Delay SDK init for customerUserID

You can delay the SDK Initialization until customerUserID is set. This feature ensures that the SDK doesn't begin functioning until the customerUserID is provided. If this API is used, in-app events and other SDK API calls are discarded until the customerUserID is provided.

The upside of this API is that data in AppsFlyer is always associated with a customer user ID. When you pull the data from AppsFlyer to your own BI systems, you will know which user to associate data with. This helps you perform a more accurate analysis of the data that you get from AppsFlyer.

The downside of this API is that actions and events that users perform, including purchase and subscriptions, aren't recorded in AppsFlyer until customerUserID is set.

Whilst useful, use this feature when it matches your business logic. Using this API increases the likelihood that you will have discrepancies and can increase exposure to fraud.

To learn how to use this API, see the following:

Was this article helpful?