ClickID 及 fbpfbc 参数

本指南说明的是 Meta 的 ClickID 及 _fbc_fbp 参数。_fbc_fbp 参数相当于浏览器 Cookie 值,可通过服务器事件发送。请参阅 Meta Pixel 像素代码的 Cookie 设置简介

建议您采取以下做法:在适用时,始终通过 fbcfbp 事件参数分别发送 _fbc_fbp 浏览器 Cookie 值。这些值可能会在多个浏览器会话中发生改变,因此建议尽可能使用最新的值刷新用户的个人主页。

Meta 的 ClickID 是什么

ClickID 是 Meta 生成的一个参数。用户在 Facebook 和/或 Instagram 中点击广告时,该参数会通过广告主网站的网址进行传递。分享 ClickID 有助于对更多转化进行归因,还有助于向更多用户传达信息,这可能会改善广告效果。ClickID 自动附件不会影响可能已启用的其他自定义追踪参数。

例如,这就是一个含有 ClickID 的网址:https://example.com/?fbclid=IwAR2F4-dbP0l7Mn1IawQQGCINEz7PYXQvwjNwB_qa2ofrHyiLjcbCRxTDMgk

ClickID 的益处

  • 增大转化量
  • 改善广告系列归因和优化
  • 改善广告表现

1. 检索 Meta ClickID

通过 fbclid 网址查询参数检索

只要网址查询参数中有 ClickID,就可以通过从 HTTP 请求网址查询字符串中读取 ClickID,在服务器端尝试获取上述参数。

示例:

GET /?fbclid=IwAR2F4-dbP0l7Mn1IawQQGCINEz7PYXQvwjNwB_qa2ofrHyiLjcbCRxTDMgk 
HTTP/2.0
Host: www.example.org

:ClickID 值区分大小写,使用前不要进行任何修改,例如改为小写或大写。

通过 _fbc Cookie 检索

_fbc Cookie 中有 ClickID 值的情况有两种:

  • Meta Pixel 像素代码已安装在相应网站中。这种情况下,一有 ClickID 值,Meta Pixel 像素代码就会将其自动存储在 _fbc 浏览器 Cookie 中
  • 已在服务器或后端存储空间中按列在“存储 ClickID”一节中的最佳实践将其存储在 Cookie 中

在这两种情况下,均可通过读取 HTTP 请求 Cookie 标题,从 _fbc Cookie 中获得格式已设置好的 ClickID。可在下面的“设置 ClickID 格式”一节中了解如何正确设置 ClickID 格式。

2. 设置 ClickID 格式

如果因为相应网站中未运行 Meta Pixel 像素代码而不能获得 _fbc Cookie,则仍可通过转化 API 事件发送 fbc 事件参数,即使 fbclid 查询参数在当前页面请求网址中。

ClickID 值格式设置好后必须采用的格式是 version.subdomainIndex.creationTime.<fbclid>,在这种格式中:

  • version 始终是以下前缀:fb
  • subdomainIndex 是从中指定 Cookie 的域(“com”= 0“example.com”= 1“www.example.com”= 2
  • 如果 _fbc 已存储,creationTime 就是自存储时间点起的 UNIX 时间(以毫秒为单位)。如果未保存 _fbc Cookie,请使用首次发现或接收到此 fbclid 值时的时间戳
  • <fbclid> 是页面网址中的 fbclid 查询参数值。

例如,得出的 fbc 参数值可能会是这样的(请注意,<fbclid> 这部分无效):

fb.1.1554763741205.AbCdEfGhIjKlMnOpQrStUvWxYz1234567890

3. 存储 ClickID

请注意:存储 ClickID 之前要按上面“设置 ClickID 格式” 一节中的说明设置 ClickID 格式,这一点至关重要,这样会确保通过转化 API 向 Meta 发送的是有效的值。

在 HTTP 响应消息的 _fbc Cookie 中设置格式已设置好的 ClickID

强烈建议按以下方式设置 _fbc

  • 设置为 HTTP 响应标头中的 HTTP Cookie
  • 设置 90 天的过期时间

要在通过 fbclid 网址查询参数或 _fbc 浏览器 Cookie 重获后设置。

请注意,仅可在以下情况中设置 Cookie:

  • 没有 _fbc Cookie,并且 ClickID 是通过 fbclid 网址查询参数重获的
  • 网址查询参数中的 fbclid_fbc Cookie 值中的相应值不相等。在 Cookie 中,fbclid 相应于 Cookie 值中最后一个“.”之后的字符串。

示例:

HTTP/2.0 200 OK
Content-Type: text/html
Set-Cookie:
_fbc=fb.1.1709136167115.IwAR2F4-dbP0l7Mn1IawQQGCINEz7PYXQvwjNwB_qa2ofrHyiLjcbCRxTDMgk; Expires=Thu, 21 Oct 2021 07:28:00 GMT;

在服务器中存储格式已设置好的 ClickID

除了上述采用 Cookie 的备选存储方法,也可在后端存储空间中存储并管理格式已设置好的 ClickID 的值。这种情况下必须确保存储和发送的是从网址查询参数(如果有)中获得的最新值。

4. 通过转化 API 事件发送 fbc 参数

获得 ClickID 的值后,必须先将其格式设置好,然后再通过转化 API 用事件发送该值,请见下面的说明。对于向转化 API 发送的每个事件,都建议发送 fbc 参数。

参数名称fbc

参数值:必须采用的格式是 version.subdomainIndex.creationTime.fbclid,在此格式中:

  • version 始终是以下前缀:fb
  • subdomainIndex 是从中指定 Cookie 的域('com' = 0、example.com' = 1、'www.example.com' = 2)。如果要在服务器中生成此字段,但不保存 _fbc Cookie,请使用值 1。
  • creationTime 是 _fbc 的保存时间,是 UNIX 时间,即新纪元之后经过的时间,以毫秒为单位。如果不保存 _fbc Cookie,则要在第一次看到或收到此 fbclid 值时使用此时间戳。
  • fbclid 是页面网址中的 fbclid 查询参数值。

示例值:

fb.1.1554763741205.IwAR2F4-dbP0l7Mn1IawQQGCINEz7PYXQvwjNwB_qa2ofrHyiLjcbCRxTDMgk

转化 API 有效载荷示例:

{
    "data": [
        {
            "event_name": "Purchase",
            "event_time": 1712248396,
            "action_source": "website",
            "user_data": {

                "fbc": "fb.1.1554763741205.IwAR2F4-dbP0l7Mn1IawQQGCINEz7PYXQvwjNwB_qa2ofrHyiLjcbCRxTDMgk",

                "em": ["7b17fb0bd173f625b58636fb796407c22b3d16fc78302d79f0fd30c2fc2fc068"],
                "ph": ["6069d14bf122fdfd931dc7beb58e5dfbba395b1faf05bdcd42d12358d63d8599"],
            },
            "custom_data": {
                "currency": "USD",
                "value": "142.52"
            }
        }
    ]
}

集成帮手

负载帮手

通过有效载荷帮手工具,可构造转化 API 请求有效载荷,以确保向 Meta 发送的数据格式正确。其中还有商家 SDK,以多种编程语言提供,可用其与转化 API 进行集成。点击“生成代码”一节中的“获取代码”按钮时,即可获得上述 SDK。

fbp

当某个网站上安装了 Meta Pixel 像素代码,且该 Pixel 像素代码使用第一方 Cookie 时,如果该网域的唯一标识符不存在,Pixel 像素代码将自动在 _fbp Cookie 中保存一个唯一标识符。

fbp 事件参数值必须采用以下形式:version.subdomainIndex.creationTime.randomnumber,其中:

  • 前缀 version 始终是:fb
  • subdomainIndex 表示定义了 Cookie 的特定网域(“com”= 0,“example.com”= 1,“www.example.com”= 2)。如要在服务器上生成此字段,而不保存 _fbp Cookie,请使用值 1。
  • 如果 _fbp 已存储,creationTime 就是自存储时间点起的 UNIX 时间(以毫秒为单位)。如果未保存 _fbp Cookie,请使用首次发现或接收到此 fbp 值时的时间戳。
  • Randomnumber 由 Meta Pixel 像素代码 SDK 生成,用于确保每个 _fbp Cookie 都是唯一的。

例如,fbp 值可能会是这样的:

fb.1.1596403881668.1116446470

详细了解