Google 跟踪代码管理器数据层覆盖了之前的数据

Google Tag Manager dataLayer overwrites pervious data

我正在尝试在网店上实施一个系统,该系统可以收集 google 分析、天气情况 用户是新访客还是回头客 - 这取决于天气与否结帐时或用户已登录时创建用户。

我已经通过在 GTM 中创建的自定义维度将数据发送到 google 分析。

但是我的问题在于,我可以让分析页面在最初创建用户时显示 "New Visitor"。但是,如果用户继续并在第一个订单之后立即下新订单,则先前的数据将被覆盖,并且两个订单在 google 分析中变为 "Returning Visitor"。

如何让每个订单在 google 分析中保持原样?

这是我用来推送数据的代码。

var dataToPush = {
    'event': 'transactionEvent',
    'transactionId': '112256',
    'transactionAffiliation': 'CompanyName',
    'transactionTotal': 250.00;,
    'transactionTax': 0,
    'transactionShipping': 0,
    'CustomReturningVisitor' : 'Old Visitor',
    'transactionProducts': []
}

dataLayer.push(dataToPush);

您的自定义维度似乎具有 "session" 或 "user" 的范围,这意味着它在每个会话生命周期甚至用户生命周期中只能有一个值,新值会覆盖旧值.

确保将自定义维度的范围设置为 "Hit" 以分别记录每次网页浏览或交易(或事件等)的客户是新客户还是回头客。

查看custom dimension reference on scope