【问题标题】:Don't track the visit with GoogleAnalytics if specific User Agent如果特定用户代理,请勿使用 GoogleAnalytics 跟踪访问
【发布时间】:2017-06-29 13:03:12
【问题描述】:

如果用户代理是 UserAgentXUI765DQZ,如何禁用 GoogleAnalytics Javascript 跟踪代码?

这是好还是坏:

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
  ga('create', 'UA-xxxxxxxxxx-7', 'auto');
  if (navigator.userAgent != "UserAgentXUI765DQZ")  // addition here
      ga('send', 'pageview');

</script>

上下文:

我没有静态 IP,我的目标是不在 Google Analytics(分析)上跟踪我自己的流量。这些解决方案不符合我的需求:

  1. 仅以登录身份访问我的网站 => 不,我真的想看看普通访问者如何看待我的网站
  2. 仅从http://internaltraffic.example.com 而不是http://www.example.com 访问我的网站=> 与1 相同的原因。+ 有时您会忘记,您点击链接并最终成为http://www.example.com
  3. Google 跟踪代码管理器,对我来说有点迷宫

为此,感谢this exension,我在 Firefox 和 Chrome 中设置了自定义 UserAgent“UserAgentXUI765DQZ”。

但后来我注意到filtering out the traffic from a specific user agent 在 Google Analytics 中很棘手,它需要跟踪代码管理器,并且要执行多个步骤,我必须为 Google Analytics 的每个网站(每个属性)重复等等。

这就是我决定修改 GA &lt;script&gt;&lt;/script&gt; 以不跟踪特定用户代理的原因。

【问题讨论】:

    标签: javascript google-analytics user-agent


    【解决方案1】:

    在提供的 Google Analytics sn-p 中添加条件没有任何问题。我一直这样做是在发送综合浏览量之前设置自定义尺寸。

    该方法唯一缺少的就是使用该浏览器进行测试的能力。最佳实践是为测试提供未经过滤的视图,并为实际报告提供过滤视图。通过阻止浏览量,您将不会跟踪任何您自己的流量。

    我个人的想法是使用自定义维度并将过滤视图设置为在自定义维度匹配时不包含任何流量。然后您可以切换到未过滤的视图进行测试。

    回答你的问题

    这是好还是坏

    我不会说这有什么本质上的错误;它会做你正在尝试的事情。我个人的做法会略有不同(尽管如果您管理数百个网站,设置起来会更耗时)。

    修改:要实施自定义维度,首先您需要在 Google Analytics(分析)管理中定义它(在“属性”列的“自定义定义 > 自定义维度”下)。我会将这个设置为“用户”的范围。

    然后在您发送综合浏览量之前,添加以下代码:

    //...
    ga('create', 'UA-xxxxxxxxxx-7', 'auto');
    if (navigator.userAgent == "UserAgentXUI765DQZ"){
        ga('set', 'dimension1', 'Internal User'); //Make sure "dimension1" matches what Google generated. You can change "Internal User" to anything you'd like.
    }
    ga('send', 'pageview');
    //...
    

    然后,返回 Google Analytics(分析)管理员的“视图”列,添加一个过滤器,排除与您的自定义维度匹配的流量。确保您在新视图上执行此操作,否则(如我上面提到的)您将无法测试自己。

    【讨论】:

    • 感谢@GreatBlakes。你能详细说明如何实现这个My personal thought would be to use a custom dimension and set up the filtered view to not include any traffic if the custom dimension matches. Then you can switch over to your unfiltered view for testing.吗?如何创建这样的维度(在 anlaytics JS 代码中?在其他地方?)。在 GA 中在哪里过滤它(哪个菜单?)。 PS:它需要 GoogleTagManager 吗? (如果可能的话,我想避免另一个(n+1)层)
    • 其他:保留ga('create', 'UA-xxxxxxxxxx-7', 'auto');但不发送ga('send', 'pageview')有什么效果?
    • 我添加了有关如何制作自定义维度的更多信息。此外,您提出了一个很好的观点 - 如果您保留 create 功能,但不触发 pageview,您仍将触发事件,这些事件会将 (not set) 登录页面数据添加到您的报告中(这将使您的指标计数不正确)。您还将无缘无故地加载 analytics.js,这会降低您的网站速度。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-13
    • 1970-01-01
    • 1970-01-01
    • 2019-08-19
    • 2013-12-03
    • 1970-01-01
    相关资源
    最近更新 更多