(Google 跟踪代码管理器) GTM 增强型电子商务结帐步骤未跟踪
(Google Tag Manager) GTM enhanced ecommerce checkout steps not tracking
我已经在一个电子商务网站上实施了 GTM,并为一些事情设置了一些标签(页面印象、添加到购物车等)这些都按预期在 Analytics 中工作和跟踪,但是我现在添加了结帐渠道推送,这些正在触发但未跟踪。
数据流基本上是:
用户访问购物车页面 >> 第 1 步 dataLayer.push 请求 >> 控制台显示结账标签已触发 >> 数据未显示在分析中。
本次dataLayer推送事件示例如下:
dataLayer.push({
'event' : 'checkout',
'ecommerce' : {
'currencyCode' : 'GBP',
'checkout' : {
'actionField' : {'step' : 1},
'products' : [
{
'name' : '"Some product name"',
'id' : '55',
'price' : '35',
'quantity' : 1
}
]
}
}
});
看起来这个问题更可能是 GTM 的设置问题,所以我已经包含了我对结账标签的当前设置:
Tag Type - Universal Analytics
Tracking ID - {{ Tracking-ID }}
Track Type - Event
Category - Ecommerce
Action - Checkout
Enable Enhanced Ecommerce Features - True
Use data layer - True
字符串与整数
数量是整数类型,你有字符串类型。
https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-ecommerce#ecommerce-data
dataLayer.push({
'event' : 'checkout',
'ecommerce' : {
'currencyCode' : 'GBP',
'checkout' : {
'actionField' : {'step' : 1},
'products' : [
{
'name' : '"Some product name"',
'id' : '55',
'price' : '35',
'quantity' : 1
}
]
}
}
});
经过反复试验,从 GTM 中删除标签并重新添加它解决了问题。
我不太确定这是为什么。同样值得注意的是,如果使用页面加载中包含的 dataLayer.push() 方法(而不是附加到操作),它可能会在 GTM 准备就绪之前触发,这可能会丢失数据。而是将其包装在 $(document).ready 中(如果您使用的是 jQuery)
以下对我来说绝对没问题,可以尝试在您的步骤
中添加 'option'
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'actionField': {'step': 1, 'option': 'Billing Address'},
'products': [{
'name': 'Sony VAIO',
'id': 'VGN-TXN27N/B',
'price': '2494.22',
'category': 'Peripherals',
'quantity': '1'
}]
}
},
'eventCallback': function() {
//document.location = 'checkout.html';
}
});
这是 GTM 设置
我已经在一个电子商务网站上实施了 GTM,并为一些事情设置了一些标签(页面印象、添加到购物车等)这些都按预期在 Analytics 中工作和跟踪,但是我现在添加了结帐渠道推送,这些正在触发但未跟踪。
数据流基本上是: 用户访问购物车页面 >> 第 1 步 dataLayer.push 请求 >> 控制台显示结账标签已触发 >> 数据未显示在分析中。
本次dataLayer推送事件示例如下:
dataLayer.push({
'event' : 'checkout',
'ecommerce' : {
'currencyCode' : 'GBP',
'checkout' : {
'actionField' : {'step' : 1},
'products' : [
{
'name' : '"Some product name"',
'id' : '55',
'price' : '35',
'quantity' : 1
}
]
}
}
});
看起来这个问题更可能是 GTM 的设置问题,所以我已经包含了我对结账标签的当前设置:
Tag Type - Universal Analytics
Tracking ID - {{ Tracking-ID }}
Track Type - Event
Category - Ecommerce
Action - Checkout
Enable Enhanced Ecommerce Features - True
Use data layer - True
字符串与整数
数量是整数类型,你有字符串类型。 https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-ecommerce#ecommerce-data
dataLayer.push({
'event' : 'checkout',
'ecommerce' : {
'currencyCode' : 'GBP',
'checkout' : {
'actionField' : {'step' : 1},
'products' : [
{
'name' : '"Some product name"',
'id' : '55',
'price' : '35',
'quantity' : 1
}
]
}
}
});
经过反复试验,从 GTM 中删除标签并重新添加它解决了问题。
我不太确定这是为什么。同样值得注意的是,如果使用页面加载中包含的 dataLayer.push() 方法(而不是附加到操作),它可能会在 GTM 准备就绪之前触发,这可能会丢失数据。而是将其包装在 $(document).ready 中(如果您使用的是 jQuery)
以下对我来说绝对没问题,可以尝试在您的步骤
中添加 'option'dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'actionField': {'step': 1, 'option': 'Billing Address'},
'products': [{
'name': 'Sony VAIO',
'id': 'VGN-TXN27N/B',
'price': '2494.22',
'category': 'Peripherals',
'quantity': '1'
}]
}
},
'eventCallback': function() {
//document.location = 'checkout.html';
}
});
这是 GTM 设置