Google Analytics 4 :Google Tag Manager电商配置指南

Google Analytics 4 黄业忠 8个月前 (02-12) 1376次浏览 16个评论

Google Analytics 4 中布署电子商务其实跟UA里面的做法基本一致,不同点在于数据层的组装数据结构不同,Google Analytics 4 主要数据结构会放到items,GTM上的配置不同。

Google Analytics 4电商里item_id和item_name是必要字段,其他一般是可选字段。

接下来我们来看电商各个环节的数据组装结构要求和在GTM中该怎么去配置,左侧是组装的数据结构,右侧是GTM的配置,如果你不知道GTM如何设置,我在另一篇文章通过Google Tag Manager布署电子商务(GA4),用view_item_list做了个示例,演示了整个流程,可以参考。

如果你没有GTM布署GA4,直接才有跟踪代码布署GA4的方式,请看:Google Analytics 4 布署电子商务

普通产品展示

  • view_item_list :产品展示
  • view_item:查看产品
  • select_item:点击产品

 

view_item_list :产品展示

Google Analytics 4 :Google Tag Manager电商配置指南

注意item_list_name 或 item_list_id 的值必须保持稳定。对于给定列表,这些值应始终相同,它是用于产品归因,它也可以位于item外面。

view_item:查看产品

Google Analytics 4 :Google Tag Manager电商配置指南

 

select_item:点击产品

Google Analytics 4 :Google Tag Manager电商配置指南

促销产品展示

  • view_promotion:展示促销产品
  • select_promotion:点击促销产品

 

view_promotion:展示促销产品

Google Analytics 4 :Google Tag Manager电商配置指南

 

select_promotion:点击促销产品

Google Analytics 4 :Google Tag Manager电商配置指南

购物车

  • add_to_cart:将产品添加到购物车
  • remove_from_cart:将产品从购物车移除

购物车中currency和value是必须字段。

 

add_to_cart:将产品添加到购物车

Google Analytics 4 :Google Tag Manager电商配置指南

 

remove_from_cart:将产品从购物车移除

Google Analytics 4 :Google Tag Manager电商配置指南

结算流程

  • begin_checkout:开始结算
  • add_payment_info:添加支付信息
  • add_shipping_info:添加地址信息
  • purchase:购买成功
  • refund:退款

currency和value是必须字段,就value的时候一定要设置currency,购买成功和退款中transaction_id是必须字段。

begin_checkout:开始结算

Google Analytics 4 :Google Tag Manager电商配置指南

add_payment_info:添加支付信息

Google Analytics 4 :Google Tag Manager电商配置指南

add_shipping_info:添加地址信息

Google Analytics 4 :Google Tag Manager电商配置指南

purchase:购买成功

Google Analytics 4 :Google Tag Manager电商配置指南

需要注意,GA4中的currency是必要字段;如果你是用DebugView去调试你可以遇到,你的price是150,但是在DebugView里显示的150000000,这是GA4的问题,不影响报告里的数据。

另外GA4的处理数据的时间比较长,也即是延时比较长,最好是隔天去看数据,避免由于数据还没处理完导致的数据不准确。

refund:退款

退款分为全额退款和部分退款

全额退款

Google Analytics 4 :Google Tag Manager电商配置指南

部分退款

Google Analytics 4 :Google Tag Manager电商配置指南

 

注意点

  1. 上面的示例是将所有的电商跟踪通过独立的事件去跟踪,其实,还可以将产品展示的跟踪和PV跟踪一起发,要求是这个datalayer数据要在GTM代码之前,触发器会变为dom
  2. 同个页面有多个电商事件类型的时候,尽量同一次发送出去,也就是一个发送多个产品,如一个页面有5个产品展示,在一个DataLayer里就发送出去
  3. 数据层数据代码中每一个都有dataLayer.push({ ecommerce: null }),这个的作用是清除对象,确保数据不会混乱。
  4. GA4的GTM电商配置支持电子商务数据,可以直接在“更多设置”里开启电子商务,然后选择Data Layer,这样可以减少事件参数的设置,会更方便。

GA小站, 版权所有丨如未注明 , 均为原创

转载请注明标题:Google Analytics 4 :Google Tag Manager电商配置指南
链接:https://www.ichdata.com/deploying-e-commerce-in-google-analytics-4.html

喜欢 (10)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(16)个小伙伴在吐槽
  1. 站长您好!产品展示的代码部署好后总是重复发送事件是怎么回事,GA4事件那个代码重复发送了12次,这是怎么回事?其他的代码都没事
    红枫+2022-08-01 14:33 回复 Windows 10 | Chrome 103.0.0.0
    • 黄业忠
      没看明白具体情况
      黄业忠2022-08-02 21:38 回复 Mac OS X | Chrome 103.0.0.0
  2. 站长您好!如果我想统计产品在列表页的点击率的话,需要用到列表展示的事件的数据和产品点击的数据,UA里面可以做到的,请问GA4里面怎么做,需要使用自定义指标和维度吗?
    红枫+2022-07-25 16:47 回复 Windows 10 | Chrome 103.0.0.0
    • 黄业忠
      部署电商模块,里面默认就有展示和点击,目前还没有点击率,有展示和点击,点击率可以自己计算一下。
      黄业忠2022-07-25 17:12 回复 Mac OS X | Chrome 103.0.0.0
      • 您好,我在“报告》生命周期》创收》电子商务购买”里面看到了相关报告,但是没有展示的数据,只有详情页,加购和购买数据,是需要自定义添加吗?
        红枫+2022-07-26 09:31 回复 Windows 10 | Chrome 103.0.0.0
        • 黄业忠
          估计没有做展示跟踪
          黄业忠2022-07-26 11:30 回复 Mac OS X | Chrome 103.0.0.0
  3. 请问这些代码是加在网页中的header部分吗?如果使用的是SAAS网站,加在主题文件的head中吗
    Yasir2022-07-06 18:35 回复 Windows 10 | Chrome 103.0.0.0
    • 黄业忠
      不是加到header,触发就发送。 文章里的是示例代码,需要前端将电商数据组装成示例代码的结构,触发就发送。 SAAS类的,由于并没有完整的代码修改权限,建议看所使用的产品,官方是否有提供插件实现GA,电商跟踪
      黄业忠2022-07-06 18:50 回复 Mac OS X | Safari浏览器 604.1
      • window.dataLayer = window.dataLayer || []; dataLayer.push({ ecommerce: null }); {% if first_time_accessed %} dataLayer.push({ event: "purchase", ecommerce: { transaction_id: "{{ order.order_number }}", value: {{ total_price | times: 0.01 }}, tax: {{ tax_price | times: 0.01 }}, shipping: {{ shipping_price | times: 0.01 }}, currency: "{{ order.currency }}", items: [ {% for line_item in line_items %}{ item_id: "{{ line_item.product_id }}", item_name: "{{ line_item.title | remove: "'" | remove: '"' }}", currency: "{{ order.currency }}", price: {{ line_item.final_price | times: 0.01 }}, quantity: {{ line_item.quantity }} },{% endfor %} ] } }); {% endif %} 这是我的订单页面添加的购买代码,可以正常工作。如果我要添加浏览产品代码,也是按照类似格式,然后添加全局代码在头部即可对吧
        Yasir2022-07-07 09:28 回复 Windows 10 | Chrome 103.0.0.0
        • 黄业忠
          如果产品页面也有电商相关的产品字段,可以获取都,就可以。如果没有,加上去也获取不到数据。
          黄业忠2022-07-07 10:39 回复 Mac OS X | Chrome 103.0.0.0
  4. datalayer的代码只能直接加在页面代码里吗?是否可以通过GTM设置呢,比如设置特定页面加载特定的datalayer代码
    七号2022-04-24 18:06 回复 Windows 10 | Chrome 100.0.4896.127
    • 黄业忠
      可以,要控制好代码触发顺序,但这种方式一定比例的丢数据,所以建议使用。
      黄业忠2022-04-24 18:09 回复 Mac OS X | Chrome 100.0.4896.127
  5. 自定义事件怎么配?触发器:event 为 gtm.dom ,我加了这个自定义事件但是没有生效
    v132022-03-31 10:59 回复 Windows 10 | Chrome 99.0.4844.84
    • 黄业忠
      数据层中的event是什么,触发器中的自定义事件就设置为什么
      黄业忠2022-03-31 11:11 回复 Mac OS X | Chrome 100.0.4896.60
      • 能贴一下view_item_list触发器的截图吗?我参考一下,麻烦啦
        v132022-03-31 11:49 回复 Windows 10 | Chrome 99.0.4844.84