Reputation: 3890
When viewing the RealTime Overview section, I notice that when a new user comes online the previous user immediately disappears and is no longer shown in realTime. The next day analytics only shows history data for one visiting user, I know for a fact that this is incorrect, there should be data for multiple users.
I send up analytics data with a simple https request(shown below) . This works for all my other applications. The only difference is that I send up the uid for this app , could this be causing the issue that I am seeing ?
Views
https://www.google-analytics.com/collect
?v=1
&z=14807
&tid=<OUR-UA-ID>
&cid=2535285330542042
&dp=message_6
&dt=message_6
&cd=message_6
&an=freemium_3
&av=3
&uid=123456789
&t=screenview
Events
https://www.google-analytics.com/collect
?v=1
&z=52130
&tid=<OUR-UA-ID>
&cid=2535285331158735
&dp=authentication
&dt=authentication
&cd=authentication
&an=freemium_3
&av=3
&uid=123456789
&ec=authentication
&ea=get_user_info
&t=event
Upvotes: 0
Views: 588
Reputation: 32780
The "cid" in your http call is the client id, where client refers to the device or program that makes the request. It is usually stored in a cookie (on the web) or generated by an SDK (in an app) and is used to unify subsequent requests from the same device into sessions. Since it is set by the client it differs from device to device (and browser to browser), so it can not be used to identify a person across multiple devices.
After it became the rule that any given person might have two or more devices Google came up with the uid, the user id (which by their own TOS might not identify the user, so this is a bit of a misnomer; think "cross device tracking id" and the concept becomes clearer). The uid is set by serverside code, i.e. after the user logs in. Not only this allows to unify visits from multiple devices into distinct users, it also alleviates privacy concerns (since it is supposed to be only created after a users action; there are separate TOS which you have to accept if you create a user id view in the GA interface, and they stipulate that you have to secure the users agreement to use to user id feature).
So if you set the same user id in your code the sessions will be attributed to the same user, even when the cid differs; this is by design and is indeed the point of the uid.
Upvotes: 1