调整 Google 分析中的跳出率

Adjusting bounce rate in Google Analytics

我正在尝试在 Google Analytics 中记录退回的方式。

这是我的分析代码:

<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','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-xxxxxxxx-1x', 'auto');
ga('send', 'pageview');
</script>

我想做到这一点,只有当他们在 5 秒之前离开网站时,才会记录反弹。我该怎么做呢?我知道应该有一些方法可以用 js.

如有任何帮助,我们将不胜感激。

谢谢!

您可以发送 Custom Event,以便 "ping" Google 分析并防止记录退回。

这可能是这样的:

<script type="text/javascript">
   (function () {
      setTimeout(function () {
         if (typeof window.ga !== 'undefined') {
            ga('send', 'event', 'Bounce Disabling', 'Ping', '5 second timeout');
         }
      }, 5*1000); // 5000ms delay
   })();
</script>

编辑:如果你想根据页面上经过的时间记录数据,你可以使用类似下面的东西。

elapsedTime 值作为 ga() 调用的最后一个参数传递将允许您自动计算 平均事件价值 等指标 - 应该对你有用。

<script type="text/javascript">
    (function () {
        var initTime = new Date().getTime();

        window.addEventListener('beforeunload', function (event) {
            var closeTime = new Date().getTime();
            var elapsedTime = closeTime - initTime; // Time elapsed since page loaded (in ms).

            if (typeof ga !== 'undefined') {
                if (elapsedTime <= 60 * 1000) { // 60 000 ms = 1 min
                    // Page loaded less than 1 minute ago:
                    ga('send', 'event', 'Page View Time', 'Duration', 'Under 1 minute', elapsedTime);
                } else {
                    // Page loaded over 1 minute ago:
                    ga('send', 'event', 'Page View Time', 'Duration', 'Over 1 minute', elapsedTime);
                }
            }
        });
    })();
</script>