Google Analytics has a
setUserID call, which allows you to
store a user ID for the individual using your app. This call is optional, and
is generally used by organizations that want to use Analytics
in conjunction with BigQuery to associate analytics data for the same user across
multiple apps, multiple devices, or multiple analytics providers.
There are many ways you can construct valid user IDs. One approach is to use an
identifier you assign and only you can track back to an individual user. For one
possible example, consider a hypothetical mobile game developer,
AwesomeGameCompany, that has their own internal
AwesomeGameCompanyID that they
create for every user. If it isn't possible for an outside organization to track
AwesomeGameCompanyID back to the original user, they might consider using
AwesomeGameCompanyID — or, better yet, a hashed version of
AwesomeGameCompanyID — as the user ID value for Analytics.
This would then allow them to calculate values such as a user's total spend
across all of their games.
Setting a user ID is never required for Analytics to work correctly.
If you're only interested in finding events belonging to the same user for the
same app on a single device, you can use the
This value is generated automatically by Analytics and is
stored within BigQuery for each event.
Setting the user ID
You can set a user ID with the following method:
await FirebaseAnalytics.instance.setUserId(id: '123456');
After setting a user ID, all future events will be automatically tagged
with this value, and you can access it by querying for the
value in BigQuery. Adding a user ID will not affect any
events previously recorded by Google Analytics.
To find out more about accessing Analytics data in BigQuery, please see this development guide.