我在产品购物车网站上使用 GTM 来触发名为“产品购物车购买”的 GA4 事件代码,事件名称为
purchase_from_cart
。当用户完成购买时,他们会被重定向到网站上 URL 路径中带有 /designer-download
的页面,并且查询字符串包含我进行电子商务分析所需的所有信息。 我没有使用数据层,而是使用 URL 查询字符串定义了自定义变量,并组成了一个名为 ecommerce_object
的自定义 Javascript 变量。
在这个标签的电子商务配置中,我勾选了
Send Ecommerce Data
,其中Data source
为Custom Object
,Ecommerce Object
是{{ecommerce_object}}
的值,ecommerce_object
值是这样生成的:
function() {
return {
transaction_id: {{transaction_id}},
value: {{signup_revenue}},
currency: "USD",
items: [
{
item_id: {{product_id}},
item_name: {{item_name}},
currency: "USD",
price: {{signup_revenue}}
}
]
};
}
值
{{transaction_id}}
、{{signup_revenue}}
、{{product_id}}
源自查询参数,{{item_name}}
源自另一个 Javascript 自定义变量,将 {{product_id}}
转换为命名产品的字符串。 但当我查看 Google Analytics 中的“货币化:电子商务购买”报告时,它没有数据。
这是我尝试过的:
GTM 预览:验证标签是否在适当的时间触发以及参数值是否正确填充,包括
ecommerce_object
GA4 调试视图:显示 Product*\_*cart\_purchase 事件触发,参数值完好无损。
我的电子商务对象具有电子商务分析所需的最少数据:交易ID、价值、货币、项目对象数组,每个项目对象都有产品ID、项目名称和价格。
我错过了什么?
您为其指定自定义名称的事件不会填充预先生成的报告。要使用 GA4 内置的报告,您需要使用文档中推荐的事件名称。
如果您调用 event_name
purchase
而不是 purchase_from_cart
,则应进入获利报告。