在Google Analytics中过滤"会话持续时间"

Vit*_*yda 2 session duration google-analytics filter

有些软件每隔2分钟24x7监控我的网站.他们的IP是动态的,来自世界各地,但会话持续时间总是小于5秒.

如何添加

 filters="ga:timeOnPage > 5" 

 or

 filters="ga:sessionDuration > 5" 
Run Code Online (Sandbox Code Playgroud)

  <ga-chart
    title="Sessions (by country)"
    type="GEO"
    metrics="ga:sessions"
    dimensions="ga:country"
    filters="ga:country==Australia">   //this one works just fine
  </ga-chart>
Run Code Online (Sandbox Code Playgroud)

Phi*_*ton 8

首先,我建议使用会话持续时间过滤器来排除此流量.有几个原因可以解释为什么这是一个坏主意:

  1. 你将失去任何少于5秒的"真实"会话,这将比你可能意识到的更多(见第2点).
  2. 会话持续时间是第一次和最后一次交互之间的差异,因此当用户访问您的站点并离开而不去任何其他页面(或以某种方式与其进行交互)时,会话持续时间始终为0,即使他们在那里几分钟.

注意:有关如何在Google Analytics中计算时间的详细信息,查看此文章

无论如何,我建议找另一种方法来过滤掉那些流量.此服务是否允许您向URL添加查询参数或设置自定义HTTP标头或类似的东西?


要实际回答你的问题,如果你真的想按会话持续时间过滤,你必须使用维度ga:sessionDurationBucket.

以下是一个示例查询可能会排除持续时间小于5秒的会话:

{
  "ids": "ga:XXXX",
  "metrics": "ga:sessions",
  "dimensions": "ga:sessionDurationBucket",
  "filters": "ga:sessionDurationBucket!~^[0-4]$"
}
Run Code Online (Sandbox Code Playgroud)

注:我使用的是正则表达式过滤这里仅包括不值0,1,2,3,或4.