At a glance: The Customer user ID (CUID) field is a unique user identifier set by the app owner. It is used to cross-reference AppsFlyer attribution data. The CUID is found in raw data reports and is used by Audiences and people-based attribution to identify users.
The CUID is reported by you to the SDK which in turn populates the CUID field in AppsFlyer. See setting the Customer User ID section of the SDK Integration Guides (iOS, Android, Unity) for more details.
Once set in the SDK, events recorded by AppsFlyer include the CUID. This allows you to cross-reference AppsFlyer data with your data using the CUID as a key.
The CUID is available in Raw Data reports.
For example, a user with two devices can have the same CUID. Each time they perform an event on a device, it is recorded using the same CUID. This allows you to understand the value of the user across both devices.
- Set the CUID in the SDK as soon as possible. Only after it is set are events reported with the CUID. You can't retroactively update events already reported with the CUID.
- Ideally, set the CUID before the
startTrackingmethod API call so that the CUID is part of the original attribution data.
- If you work with integrated data partners, such as Mixpanel or Swrve, the CUID must be set for the integration to work effectively.
Customer user ID for people-based attribution
AppsFlyer People-based Attribution (PBA) gives you a wide 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 PBA, it's important that you set the same CUID 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 (Android, iOS) is used, in-app events and other SDK API calls are discarded until the customerUserID is provided.
Use this API after considering your business logic and the following pros and cons:
- Pros: 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 allows a more accurate analysis of the data that you get from AppsFlyer.
- Cons: Actions and events that users perform, including purchase and subscriptions, aren't recorded in AppsFlyer until customerUserID is set. This can lead to discrepancies and increases exposure to fraud.