客户ID和/或用户ID - 要使用哪个?

时间:2017-05-17 10:11:36

标签: google-analytics measurement-protocol

  

我特定环境的背景:我正在尝试设置GA来跟踪用React Native编写的iOS本机应用程序的用户旅程。该应用程序仅在内部,所有用户同意以这种方式进行跟踪。

据我了解,测量协议允许客户端ID(cid)或用户ID(uid)。在文档中,两者都是可选的,但至少需要一个。到目前为止有道理。客户端ID是匿名UUIDv4,用于跟踪浏览器或设备,但不一定是用户。另一方面,用户ID是用户的唯一标识值,但可能跨设备/浏览器。

最初我使用cid编写了我的应用程序(因为我还没有阅读uid上的文档)。每次用户登录时,用户的uuid都将被存储并作为cid参数发送。我还使用了会话控制sc。这工作 - 我看到会话进来,用户浏览器向我展示了个人用户uuids和会话等。但在重新阅读文档时,这似乎是对cid的错误使用。似乎cid意味着一致,而不是在您登录和退出时发生变化。

由于我的应用上的人可以登录和退出(并且可能会 - 工作人员可能会共享设备),因此使用特定于设备的持久cid将无法跟踪如上所述,个人用户的习惯以及每次登录会话的更改都会让他感觉不对。

所以我为cid切换了uid。文档说两者都是可选的,只有在不使用另一个时才需要一个,所以我想我可以使用uid并在该字段中使用用户的uuid,否则它的行为相同。

然而,当这样做时,似乎根本没有注册点击 - 在“实时数据”和用户浏览器中。

我做错了什么还是这个设计? (如果按照设计,说ciduid的文档都是可选的,或者我读错了吗?)

无论哪种方式,最好的做法明智,我:

  • 回到使用仅在人们登录和退出时更改的短暂cid。应用中的各个会话不会更改cid,但我会使用sc通过导航推断显式启动和结束会话(点击'home'= sc=end,从'home'导航,{{1 }})。

  • 在我尝试时使用sc=start(即切换uid的当前cid),但也包括永不改变的随机uid(无论会话生命周期,登录和退出等等。)

  • 还有别的吗?

我看过this question and its answer但它并没有真正回答我关于cidcid应该实际如何使用的实际问题,如果我的问题是我或GA的工作方式。

1 个答案:

答案 0 :(得分:0)

Oki所以client-id是随机生成的值,必须与所有命中一起发送。 在非用户ID启用的视图中,Client-ID用于计算唯一用户。在启用User-ID的视图中,User-ID用于计算唯一用户

参考您的应用,您可以发送唯一的Device id值代替client-id 的随机值。这将解决您的所有问题,并且确保客户端ID与所有匹配一起发送,否则它将不会在GA中注册