是否可以手动结束Google Analytics会话?

时间:2012-07-25 10:28:13

标签: google-analytics session-cookies

我想用自定义变量划分已注册和未注册用户之间的流量。 Analytics文档建议为此目的使用会话级自定义变量。

但是,对于我们的用户来说,最常见的是在使用我们的服务时注销,因为他们经常在共享计算机上工作。在注销时,会话级自定义变量将被“未注册”覆盖,因为这发生在同一会话中。

当用户退出并开始新会话时,是否可以以某种方式结束Google Analytics会话?

3 个答案:

答案 0 :(得分:7)

使用analytics.js,现在是possible to do

只需运行ga('send', 'pageview', {'sessionControl': 'start'});即可开始新会话。

答案 1 :(得分:0)

您可以将_setSessionCookieTimeout_setVisitorCookieTimeout设置为0以强制关闭浏览器上的新会话,但如果访问者A退出您的网站但保持浏览器打开并且访问者B保持不变,则该功能将无效在椅子上跳跃并登录...

您可以做的一件事是在用户退出时删除GA的Cookie。这将立即结束会话并在下一页加载时启动新会话。

如果您不知道,有些事情需要注意,因为有多个人正在使用同一台计算机。基本上,您不能依赖访问者和唯一身份访问者等特定指标。

会话是否自然超时,或者是否从第一个选项强制执行(访客Cookie被保留),指标将显示为具有多次访问的同一访问者。

如果您进入第二条路线(删除Cookie),它会将每个新会话计为新访问者,但您将破坏能够看到访问者多次访问的情况。

因此,无论您做什么,都无法轻松跟踪同一台计算机上的多个用户并获得可靠的访问指标。

您可以采取一些措施来提供帮助:

指定访问者登录您网站时要填充的自定义变量。使其成为每个用户的唯一价值。警告:在决定使用什么值之前,请阅读GA的隐私政策。例如,您不能使用个人身份信息,也不能使用任何可直接绑定到您自己站点内的个人身份数据的值。

您还可以在访问者退出时抓取GA的当前访问者ID Cookie并将其存储,然后在登录时,在输出GA代码之前将GA Cookie设置为该值。它基本上与GA的跨域跟踪解决方案相同,除了奇怪的是,GA不提供功能很好的功能来轻松设置他们的访客ID(你可以通过在URL参数中传递而不是通过函数调用来实现)但你可以自己直接设置cookie)。

再次发出警告:如果您保存GA的访客ID,以便在他们再次登录时可以弹出cookie,请确保它不会直接与个人身份信息相关联(如数据库中)。阅读他们的ToS和隐私政策,咨询律师,blahblah。

但无论如何,如果你这样做,它会为你共享同一台计算机的个人访客提供一些可靠的数据。在他们实际登录之前无法解释,但仍然比没有好。

答案 2 :(得分:0)

有两种方法可以恰当地做到这一点。

  1. 页面级别:如果您保留每个请求的用户状态,最好使用它。
  2. 访客级别:如果要在用户仅登录时设置变量。
  3. 清除Cookie不是解决此问题的正确方法。 会话变量适用于需要在当前会话期间的某个时刻覆盖的变量。

    选择范围时,请考虑它提供的功能:

    • 会话允许覆盖值。
    • 将保留页面级别以供下次访问。
    • 访客将逐页跟踪。