Google Analytics(分析)事件跟踪方式不准确

时间:2018-08-27 11:33:29

标签: javascript google-analytics

为了跟踪表单的提交,我们使用了Google Analytics(分析)事件机制。问题在于,约有30%的提交内容未显示在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','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-834692-1', 'auto');
ga('require', 'GTM-T4KHK5P');
ga('send', 'pageview');
</script>

以下是代码触发事件:

try { 
    ga('send', 'event', 'quote', 'place', ga_label, 68, {hitCallback: EnableRequestSubmittedDialog, transport: 'beacon'}  ); 
}catch(e){
    $("#google-analytics-alert").show();
}

setTimeout(EnableRequestSubmittedDialog, 1500);

使用ajax将数据成功发送到服务器时,将执行以上代码。功能EnableRequestSubmittedDialog仅启用确认消息上的按钮,以便用户可以关闭页面。我还添加了在ajax调用之前触发调试事件的代码,并将google Analytics成功标志传输到服务器,并看到ga('send','event',...)代码始终成功执行,但事件的30%没有出现在Google Analytics(分析)中:

var ga_status = 'Failed.';
try { 
    if( ga.q ) //Google analytics not loaded for some reason
        ga_status = 'Google analytics seems blocked.';
else {
    ga('send', 'event', 'button-click', 'get-quote', ga_label, 1, {transport: 'beacon'}); //Post to google analytics each click to debug
    ga_status = 'Seems success.  label: ' + ga_label + '. transport: beacon';

formData.push({name: 'google-analytics', value: ga_status});

我还发现,当用户多次提交表单时,所有事件或没有事件都会显示在Google Analytics(分析)中。我检查了所有Google Analytics(分析)过滤器,它们对我来说看起来还可以。

正常情况下,Google Analytics(分析)事件的准确性会降低30%吗?还可以做些什么来了解问题所在?

表单URL为:https://www.emachineshop.com/quote/

感谢您。

0 个答案:

没有答案