使用 GTM 电子商务增强功能和数据层推送跟踪结帐 ajax 个步骤

Checkout ajax steps tracked with GTM ecommerce enhanced and dataLayer push

我想知道如何在 google 分析上跟踪结帐和结帐步骤事件。

我在单个页面中进行了结帐,每个步骤都是通过 ajax 请求调用的,因此我已经为每个步骤添加了 "dataLayer.push" 功能,当然还有步骤编号在里面。

现在我无法在 google 分析中显示的漏斗上捕获任何内容。

我说的漏斗是转化 -> 电子商务 -> 购物分析中的 "Checkout Behavior Analysis"。

我使用的电子商务代码是 GTM 代码,它在我加载结帐页面时在数据层上推送结帐事件,以及每个结帐 ajax 步骤的 checkoutOption 事件。 一旦这些事件被推送到 GTM 上的数据层,我就在事件上设置了标签激活器,以将信息传递给 google 具有事件功能(不是网页浏览)的通用分析标签的分析。

我推送的 ajax 事件的代码如下。

结帐开始:

dataLayer.push({
    "event": "checkout",
    "ecommerce": {
        "checkout_option": {
            "actionField": {"step": 1, "option": ""},
            "products": self.datas["checkout_items"]
        }
     }
});

结账账单地址

dataLayer.push({
    "event": "checkoutOption",
    "ecommerce": {
        "checkout_option": {
            "actionField": {"step": 2, "option": ""}
        }
    }
});    

结帐送货地址

dataLayer.push({
    "event": "checkoutOption",
    "ecommerce": {
        "checkout_option": {
            "actionField": {"step": 3, "option": ""}
        }
    }
});    

结帐送货方式

dataLayer.push({
    "event": "checkoutOption",
    "ecommerce": {
        "checkout_option": {
            "actionField": {"step": 4, "option": self.datas["shipping_method"] }
        }
    }
});

结帐付款方式

dataLayer.push({
    "event": "checkoutOption",
    "ecommerce": {
        "checkout_option": {
            "actionField": {"step": 5, "option": self.datas["payment_method"] }
        }
    }
});

结帐优惠券

dataLayer.push({
    "event": "checkoutOption",
    "ecommerce": {
        "checkout_option": {
            "actionField": {"step": 6, "option": self.datas["couponcode"] }
        }
    }
});

结帐下订单

dataLayer.push({
    "event": "checkoutOption",
    "ecommerce": {
        "checkout_option": {
            "actionField": {"step": 7, "option": "" }
        }
    }
});

我已经阅读了所有增强指南,例如:

我还缺少什么吗?

最好。 弗朗切斯科

确保您已将代码(无论是综合浏览量还是事件)配置为在发生结帐事件时读入 dataLayer 对象。您需要检查 Enable Enhanced Ecommerce Features 以及高级设置下的 Use Data Layer

编辑: checkout_option 字段仅在您需要为结帐步骤提供补充信息时使用,例如,如果您要向付款页面添加付款方式。

结帐渠道中的每个结帐步骤都需要像这样添加:

// Step 1
dataLayer.push({
   'event': 'checkout start',
   'ecommerce': {
      'checkout': {
         'actionField': {'step': 1, 'option': 'Visa'},
         'products': // .... products
    }
}

// Step 2
dataLayer.push({
   'event': 'checkout billing',
   'ecommerce': {
      'checkout': {
         'actionField': {'step': 2},
         'products': // .... products
    }
}

等等

因此,您实际上并没有发送任何有关您当前拥有的步数的信息。