Facebook像素转化跟踪GTM - 错误:"Facebook像素多次激活"

4
我在使用新版Facebook像素代码和GTM设置潜在客户转化跟踪时遇到了问题。
我所做的是:
  1. 在每个页面上集成了Facebook基础代码与GTM(请参阅下面的代码)
  2. 当特定表单提交时,将自定义代码用于转化跟踪(潜在客户),并与GTM集成(请参阅下面的代码)
当发生转化时,在Facebook像素助手上会出现以下错误:“Facebook像素已激活2次... Facebook像素在此网页上多次激活,这可能导致事件跟踪中的错误”。

enter image description here

FACEBOOK基础代码:

<!-- Facebook Pixel Code -->
<script>
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue[];t=b.createElement(e);  t.async=!0;            
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','//connect.facebook.net/en_US/fbevents.js');
fbq('init', '11111...');
fbq('track', "PageView");</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=11111...&ev=PageView&noscript=1"
/></noscript>
<!-- End Facebook Pixel Code -->`

引导转化跟踪代码:

<script>fbq('track', 'Lead');</script>
<noscript>
    <img height="1" width="1" style="display:none"    src="https://www.facebook.com/tr?id=11111...&ev=Lead&noscript=1"/>
</noscript>

实际上我不知道问题出在哪里。你能帮忙吗?

我还尝试删除了:

<noscript>
    <img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=11111...&ev=Lead&noscript=1"/>
</noscript>`

但在这种情况下,转换根本不会被触发。

我曾经因为页面重新加载而遇到类似的问题。在表单提交后,由JavaScript触发了页面重新加载,FB抱怨“双重激活”。看起来更像是FB跟踪错误消息中的一个漏洞,而不是真正的问题。 - lima_fil
2个回答

2
总共保留两个自定义HTML标签:
第一个自定义HTML标签应包含Facebook像素基础代码,如您的第一个示例所示。将其设置为在每个页面上触发,并更改设置以“每页一次”触发。
第二个自定义HTML标签应包含以下内容的Lead事件:
<script>
fbq('track', 'Lead');
</script>

将其设置为“每个事件一次”,如果您在事件(例如潜在客户表单提交)上触发它,或者如果您在页面加载(例如感谢页面)上触发此标签,则将其设置为“每页一次”。
诀窍是确保更改第二个标记的顺序设置。在潜在客户事件标记中,设置Facebook基础标记在潜在客户事件标记之前触发-这可能是当前的问题。
如果Facebook基础像素尚未加载,则潜在客户事件无法正常工作-当前它们可能正在错误的顺序触发。

GTM example

您的“noscript”片段应该被省略,因为它们在自定义HTML标签内部无论如何都不会被触发。实际上,“noscript”片段是为了帮助在浏览器中禁用或损坏JavaScript时使用,所以如果您想让它们在GTM中工作,您需要创建一个自定义图像标签并在其中添加“noscript”图像的URL,如下所示:

GTM image tag example

请确保您不同时启用这两个选项,因为这会导致 Facebook 报告中的转化重复计数。相反,设置一个 GTM 标准来检查 JavaScript 是否启用,仅当未启用时触发图像标签,那么就万事大吉了。 这些技巧应归功于 Analytics Ninja 的出色专家 Jehoshua Choen,请阅读 他在此主题上的完整帖子 以获取进一步的说明。

嗨,亨利克,到2020年是否仍然有必要省略<noscript>?此外,您是指仅将其分离出来用于引导/注册事件,还是适用于触发带有<img>的整个Facebook基础跟踪代码(即PageView)?提前致谢! - Baumr
1
尽管如今在GTM中的“自定义HTML”标签内不需要<noscript>,但这仍然是相关的。因此,如果您现在通过自定义HTML标签使用Facebook像素,则应遵循上述方法。现在在2020年,使用Google Tag Manager,有一个所谓的“自定义模板”可用于Facebook像素,该模板由GTM社区中的权威之一Simo Ahava编写,几乎涵盖了有关Facebook像素的每个功能和考虑因素。简而言之-使用模板,而不是旧的代码片段! - Henrik Söderlund
非常感谢,亨利克!我应该从这个入手吗?https://www.simoahava.com/analytics/create-facebook-pixel-custom-tag-template/ - Baumr
1
不要啊,除非你想从头开始自己构建,那是一个完整的构建标签模板的教程。你可以直接从GTM社区画廊中添加模板,它已经由Simo构建好了。;-) - Henrik Söderlund

0

我对这种情况没有任何经验。但是我也通过GTM安装了FB像素。但我没有机会在销售漏斗的较低阶段安装更多的转化跟踪。

然而,据我所知,在这种情况下,直接在网站代码中安装和通过GTM安装之间存在差异,因为:

直接安装:Facebook将把用户的操作识别为一个事件,并带有一个关于转化行动类型的参数。

通过GTM安装:Facebook将把用户的操作识别为两个单独的事件。因为GTM分别发送两个标签作为两个事件。因此,标签排序选项可以命令GTM将2个标签作为一个事件发送。

请记住:事件是GG和FB跟踪系统都接受的概念。在GTM中,转化标签是用于在不涉及源代码的情况下向Google传输信息的技术概念。因此,请不要误解标签是事件。

GTM在解释标签设置或代码(如果是自定义JS或HTML标签)后,将其与原始内容一起打包发送到浏览器。Pixel Helper从浏览器读取并分析站点。这就是为什么错误的设置可能会导致GTM将2个标签作为2个事件片段代码发送到浏览器,然后Pixel Helper将它们读取为2个单独的事件在2个单独的重复像素中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接