【发布时间】:2020-10-13 15:57:43
【问题描述】:
我的客户在亚马逊这样的在线市场上销售商品。我们设置了品牌域example.com,将用户重定向到她的店面页面ecommerce-site.com/example。 example.com 基本上只提供302 重定向响应。
她一直在为她的产品制作 Facebook 广告,并一直在跟踪广告效果以及每次链接点击的广告费用。我们正在尝试最终优化广告的每次购买成本。我们在电子商务站点中设置了一个回发链接到example.com/facebookPostback,它将向Facebook 发送Purchase 事件。目前,随着她建立客户群,我们将针对着陆页浏览量对其进行优化。
我所做的是,每次访问 example.com 时,都会向我们为她的广告设置的 Pixel 发送一个 PageView 事件。
这是我使用 node express 发送事件的方式:
const userData = new fbSdk.UserData()
.setClientIpAddress(ipAddress)
.setClientUserAgent(userAgent);
if (fbc) {
userData.setFbc(fbc);
}
if (fbp) {
userData.setFbp(fbp);
}
const serverEvent = new fbSdk.ServerEvent()
.setEventName("PageView")
.setEventTime(Math.round(new Date().getTime() / 1000))
.setEventSourceUrl(`https://example.com${req.originalUrl}`)
.setUserData(userData);
const eventsData = [serverEvent];
const eventRequest = new fbSdk.EventRequest(
accessToken,
pixelId
).setEvents(eventsData);
fbc 从请求的fbclid 生成(如果存在)。 fbp 是从 _fbp cookie 中生成的。如果 cookie 不存在,我的服务器会生成它。通常,对于基于浏览器的像素事件,_fbp 是使用客户端时间戳new Date().getTime()) 和一些随机数生成的。我刚刚在服务器端做了同样的事情,并在重定向响应中为它创建了一个set-cookie 标头。
查看 Pixel 的仪表板,所有事件都已成功接收和处理,“诊断”选项卡中没有错误(浏览器事件来自 Facebook 的即时体验):
但是,服务器发送的事件并未归因于广告。我创建了一个没有实例经验的单独广告来测试这一点,该广告在没有任何着陆页浏览量的情况下获得了 100 次链接点击。
我的问题:
- 你们知道为什么这不起作用吗?是因为
example.com只是在产生重定向响应吗? - Facebook 如何将广告归因于页面浏览,这种归因模型是否适用于服务器端
PageView事件?
【问题讨论】:
-
恐怕 fbc 和 fbp cookie 参数是通过客户端的 JavaScript 使用 fb 像素代码生成的。我认为你不能自己生成它们。因此,当页面加载后,您应该使用 JavaScript 解析 cookie,检索 fbc 和 fbp,通过 AJAX 调用将它们发送到节点,然后在节点上执行您已经在执行的操作(发送 PageView 事件)。虽然不完全确定
-
你肯定可以从 "?fbclid" 生成 fbc 参数并发送到服务器端,但是我不完全确定 fbp。
标签: facebook-graph-api facebook-javascript-sdk facebook-ads-api facebook-marketing-api facebook-pixel