如何使用新的 Google Analytics 4 (gtag.js) 跟踪和发送自定义事件?
How can I track and send custom events with the new Google Analytics 4 (gtag.js)?
我有一个旧网站,它使用的是过去十年的旧 Google Analytics 代码,我需要帮助才能使用新的 GA4。
旧代码 (2016)
要将自定义事件和网页浏览量发送到 Google,我会使用他们 <script>
代码段中的全局 ga()
函数:
// Event
ga('send', 'event', {
eventAction: 'click',
eventCategory: 'social',
eventLabel: 'twitter'
});
// Pageview
ga('send', {
hitType: 'pageview',
page: 'Video page',
title: 'Intro video'
});
新代码 (2022)
Google Analytics 表示所有旧属性将于 2023 年 7 月 1 日停止工作,因此我们需要切换到新的 Google Analytics 4 属性,<script>
header 中的代码片段发生了一些变化,现在它创建了 gtag()
:
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=X-XXX123456"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'X-XXX123456');
</script>
但是当我尝试像以前一样使用 gtag("send")
时,似乎没有任何东西再传输到 Google。我已经尝试查找它,但所有 tutorials/articles 仍然展示了旧方法。如何使用新版 GA4 发送自定义事件?
不使用 "send"
,推荐的名称是 "event"
see here for official docs。此外,推荐的参数应该使用下划线,例如 event_category
(尽管您可以使用自己的自定义参数):
// Send event
gtag("event", "click", {
"event_category": "social",
"event_label": "twitter"
});
// Pageview
gtag('event', 'page_view', {
"page_title": "landing-page",
});
如果您手动发送自定义综合浏览量,请确保在登陆时禁用初始综合浏览量以避免计数两次,如 the "Manual Pageviews" section 中所述,通过将 send_page_view: false
添加到您的初始配置调用中header <script>
:
gtag('config', 'X-XXX123456', {send_page_view: false});
您可以通过打开“网络”选项卡并查看每个 collect
网络请求的负载来检查是否正在本地发送某些内容:
来源:
这是使用 GA4 发送事件的语法:
gtag('event', <action>, {
'event_category': <category>,
'event_label': <label>,
'value': <value>
});
Here您可以查看事件的文档。
或者,如果您想测试命中率以及事件是否与哪些数据一起发送,您可以使用 Google Tag Assistant 来查看。
我有一个旧网站,它使用的是过去十年的旧 Google Analytics 代码,我需要帮助才能使用新的 GA4。
旧代码 (2016)
要将自定义事件和网页浏览量发送到 Google,我会使用他们 <script>
代码段中的全局 ga()
函数:
// Event
ga('send', 'event', {
eventAction: 'click',
eventCategory: 'social',
eventLabel: 'twitter'
});
// Pageview
ga('send', {
hitType: 'pageview',
page: 'Video page',
title: 'Intro video'
});
新代码 (2022)
Google Analytics 表示所有旧属性将于 2023 年 7 月 1 日停止工作,因此我们需要切换到新的 Google Analytics 4 属性,<script>
header 中的代码片段发生了一些变化,现在它创建了 gtag()
:
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=X-XXX123456"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'X-XXX123456');
</script>
但是当我尝试像以前一样使用 gtag("send")
时,似乎没有任何东西再传输到 Google。我已经尝试查找它,但所有 tutorials/articles 仍然展示了旧方法。如何使用新版 GA4 发送自定义事件?
不使用 "send"
,推荐的名称是 "event"
see here for official docs。此外,推荐的参数应该使用下划线,例如 event_category
(尽管您可以使用自己的自定义参数):
// Send event
gtag("event", "click", {
"event_category": "social",
"event_label": "twitter"
});
// Pageview
gtag('event', 'page_view', {
"page_title": "landing-page",
});
如果您手动发送自定义综合浏览量,请确保在登陆时禁用初始综合浏览量以避免计数两次,如 the "Manual Pageviews" section 中所述,通过将 send_page_view: false
添加到您的初始配置调用中header <script>
:
gtag('config', 'X-XXX123456', {send_page_view: false});
您可以通过打开“网络”选项卡并查看每个 collect
网络请求的负载来检查是否正在本地发送某些内容:
来源:
这是使用 GA4 发送事件的语法:
gtag('event', <action>, {
'event_category': <category>,
'event_label': <label>,
'value': <value>
});
Here您可以查看事件的文档。
或者,如果您想测试命中率以及事件是否与哪些数据一起发送,您可以使用 Google Tag Assistant 来查看。