Google 跟踪代码管理器 - 将自定义事件及其参数动态发送到 Google 分析

问题描述 投票:0回答:3

我正在使用 Google 跟踪代码管理器(又名:GTM)将事件发送到我的 Google Analytics 4 帐户,其中一些事件是开发人员通过这样的代码发送的自定义事件:

dataLayer.push({
    event: 'CA:some-event',
    a: 1, // custom param
    b: 2  // custom param
})

我在 GTM 中定义了一个触发器来捕获以“CA:*”(作为正则表达式)开头的所有事件,然后定义了一个新标签:“Google Analytics: GA4 Event”,在触发器触发时调用并将事件发送到GA4.

我已成功将事件发送到我的 GA4 帐户,但问题是示例中的所有参数

a
b
均未发送,因为它们未映射为从 GA 事件中的 GTM 层发送。

我可以在 GTM 中专门为他们定义变量,但这不是动态的,这意味着每次开发人员需要发送新的自定义事件时,他都需要转到 GTM 帐户(通常他们无权访问它) ),添加变量,这使得整个解决方案半自动且不够动态。

我希望它是清楚的。

这里有什么建议吗?

google-tag-manager google-analytics-4
3个回答
1
投票

您可以使用 Google 跟踪代码管理器中的数据层变量将自定义参数动态发送到 Google Analytics 4。

设置方法如下:

在 GTM 中创建数据层变量以捕获自定义参数。为此,请转到变量 > 新建 > 数据层变量。为变量命名并在数据层变量名称字段中输入参数名称(例如“a”或“b”)。

将数据层变量添加为 Google Analytics 4 事件标记中的字段。为此,请转到 Google Analytics 4 事件标签并选择“更多设置”>“要设置的字段”。在值字段中分别输入您在步骤 1 中创建的数据层变量的名称(例如“a”或“b”)以及值 {{a}} 或 {{b}}。

在 GTM 中发布您的更改。

现在,每次将自定义事件推送到数据层时,相关的自定义参数也会自动发送到 Google Analytics 4。这使您可以动态发送自定义参数,而无需在每次添加新的自定义事件时手动更新 Google Analytics 4 事件标记。

注意:确保所有事件中的自定义参数一致,否则您可能会在 Google Analytics 4 中得到不匹配的数据。

如果您担心 DataLayer,那么您可以使用 JavaScript 来废弃数据。


0
投票

不幸的是,没有简单的方法可以按照您想要的方式管理 GTM。 希望他们可以允许我们仅使用 JavaScript 对象作为事件参数发送。 (他们目前只允许电子商务数据层)

但是看起来您的开发人员可以自己决定事件参数。因此,这里的选择是如果他们无法访问 GTM。他们只需告诉负责 GTM 的人他们的新实施即可。所以GTM的人可以在它的基础上修改。

如果您的场景变化很大,并且确实需要自动化。那么 GTM API 可能就是出路。 (但是开发者也需要一些时间来集成它)


我曾经管理过10多个物业,一周内需要添加30多个新活动。

所以我选择Google Sheet(带有Google App Script)来更轻松地管理GTM。

这里的要点是仍然有一些方法可以使其更加自动化。只需要杠杆就值得开发。


0
投票

我以以下解决方案结束:

  1. 我将发送事件的方式更改为:
dataLayer.push({
    event: 'CA:some-event',
    data: {
        a: 1, // custom param
        b: 2  // custom param
    }
})
  1. 根据事件的

    data
    属性在 GTM 中设置一个名为“自定义事件数据”的变量

  2. 设置 GA4 事件代码以将其发送到 GA4

  3. 在 GA4 中基于

    data
    属性设置一个名为“自定义事件数据”的新自定义维度

限制是我无法在 GA4 中直接使用

a
b
作为原生字段,但至少我可以在 GA4 报告中看到它们的变化

© www.soinside.com 2019 - 2024. All rights reserved.