首页 文章

通过Tag-manager无法正常运行的Universal Analytics事件

提问于
浏览
0

对于通过Google跟踪代码管理器部署的Universal Analytics发生的事件解决问题,我想提供任何帮助 .
特别是,我试图在同一页面上发送两种事件: checkout-purchase 事件(增强型电子商务)和 onclick generic 自定义事件 .
在我的页面的相关代码下面,按照onload执行的顺序:

<script>
 <!--Initialize dataLayer-->
  dataLayer = [{'userId' : ...}];
 <!--End dataLayer-->

 <!--Tag Manager-->
  (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':.....})(window,document,'script','dataLayer','GTM-...');
 <!--End Tag Manager-->

 dataLayer.push({   
  'event': 'checkout',
  'ecommerce': {
    'purchase': {
        'actionField': {
            'id': ...
            'revenue': '1.00', 
            'tax': ... 
        },
        'products': [{
            'name': 'Product1',
            'price': '1.00',
            'category': 'Category 1',
            'variant': 'Variant1',
            'quantity': 1
        }]
    }
  },
  'eventCallback': function() {
        console.log("Purchase pushed!");        
  }
 });
</script>

<button onclick="dataLayer.push({'event': 'eventTest'});">CLICK ME</button>

如您所见,在页面加载时正确推送了购买事件 .
我声明"correctly"因为在浏览器控制台中检查dataLayer对象,显示添加的购买子对象 .
另外,最后你会发现一个简单的按钮,它会在其onclick处理程序上推送另一个泛型"eventTest" . 甚至此事件对象也会添加到dataLayer "queue"中 .
您需要考虑的是,以下是有关Google的页面加载'200 status'请求:

  • gtm.js?id = GTM -... [www.googletagmanager.com]
  • analytics.js [www.google-analytics.com]
  • 收集?v = 1&_v = j35&a = 211135512&t = pageview ... [www.google-analytics.com]

简而言之,一切似乎都没问题 .
显然,当完成这些推送时,不会触发成瘾请求,但这是预期的 .
我的问题是:何时,以及基于什么,dataLayer "queue"数据被发送?

事实上, no events data are reported in Analytics panel after several days 来自我的测试 .
Analytics标记基于Google跟踪代码管理器中的"All pages"触发规则,而"e-commerce elements"具有高级电子商务功能和dataLayer选项,均处于活动状态 .

有没有其他Tag Manager 's options, or rules, I should set in order to make those events be collected?? Should those events be previously 2520849 in Tag Manager'的控制台?

为长期而道歉并非常感谢 .



UPDATE:

我设法收集了这些事件数据,但我遇到了发送事件"labels"的问题 .
我的意思是即使在Universal Analytics实时面板中也会定期记录事件,但是“ undefined ” .

对于电子商务对象"addToCart / removeFromCart"dataLayer.push和通用onclick "eventTest"一个,检查Google Analytics请求的"ec"和"ea"参数值均为"undefined" .

这些可能有什么问题?
非常感谢 .

2 回答

  • 2

    在这种情况下,您应向Google Analytics发送一次点击以发送增强型电子商务数据,并发送其他点击以发送Google Analytics事件数据 .

    这意味着您应该在您的页面上触发3个Google Analytics代码:一个用于具有“所有页面”触发器的网页浏览跟踪(网页浏览类型),一个用于增强电子商务跟踪(事件类型),具有“事件等于结帐”触发器,一个用于事件跟踪(事件类型),带有“event equals eventTest”触发器 .

  • 2

    GTM如何观察dataLayer is answered here .

    通过Google Analytics代码模板在页面加载时自动评估ecommcerce数据,以便记录您的交易 .

    对于按钮中的自定义事件,您需要创建触发器,键入“event”,条件“event equals eventTest”,然后创建为事件跟踪配置的Google Analytics标记 .

    谷歌在两个产品中使用相同的术语来完全不同的东西时,谷歌真的搞砸了 .

    GTM事件不会跟踪Google Analytics中的任何内容,它是GTM中的“保留”变量名称,必须存在并填充到fire标记中 . 在页面加载,DOM就绪,点击并提交由GTM自动填充 .

    但是,GTM事件不会跟踪Google Analytics的任何内容 . 为此,您需要创建一个单独的Google事件跟踪代码,该代码又由GTM事件触发(为了完成混淆,可能会由javascript事件触发) .

相关问题