转化追踪

您可以使用 Meta Pixel 像素代码追踪网站访客的操作,这即是我们熟知的转化追踪。所追踪到的转化会显示在 Facebook 广告管理工具Facebook 事件管理工具中,而您可在此处使用这些转化分析转化漏斗的成效,以及计算广告投资带来的回报。您也可以使用所追踪到的转化定义自定义受众,以便进行广告优化及构建进阶赋能型目录广告营销活动。在您定义自定义受众后,我们便可根据这些受众来识别其他可能转化的 Facebook 用户,并向其投放您的广告。

使用 Pixel 像素代码追踪转化的方式分为三种:

  • 标准事件,即由我们定义且您通过调用 Pixel 像素代码函数进行报告的访客操作
  • 自定义事件,即由您定义且通过调用 Pixel 像素代码函数进行报告的访客操作
  • 自定义转化事件,即通过解析您网站的引用网址而自动追踪到的访客操作

要求

您必须已经在想要追踪转化的每个网页上安装 Pixel 像素代码的基础代码

标准事件

标准事件是预定义的访客操作,对应与转化相关的常见活动,例如搜索商品、查看商品或购买商品。标准事件支持使用参数,因此您可以添加包含其他事件相关信息的对象,例如商品编号、类别和所购买商品的数量。

如需获取标准事件的完整清单,请访问 Pixel 像素代码标准事件参考文档。请前往 Blueprint 详细了解转化追踪和标准事件。

追踪标准事件

您可以通过调用 Pixel 像素代码的 fbq('track') 函数来追踪所有标准事件,并将事件名称和 JSON 对象(可选)用作其参数。例如,以下是我们在访客完成购买事件后用于追踪的函数调用,其中货币和价值为参数:

fbq('track', 'Purchase', {currency: "USD", value: 30.00});

如果您调用了该函数,则会在事件管理工具中按购买事件进行追踪:

无论是在加载网页,还是访客完成某项操作(例如点击按钮)时,您都可以在网页的开始和结束 <body> 标签之间的任何位置调用 fbq('track') 函数。

例如,如果您想在访客完成购买后追踪标准购买事件,则可在购买确认页面中调用 fbq('track') 函数,如下所示:

<body>
  ...
  <script>
    fbq('track', 'Purchase', {currency: "USD", value: 30.00});
  </script>
  ...
</body>

而如果您想在访客点击购买按钮时追踪标准购买事件,则可将 fbq('track') 函数调用关联到结账页面中的购买按钮,如下所示:

<button id="addToCartButton">Purchase</button>
<script type="text/javascript">
  $('#addToCartButton').click(function() {
    fbq('track', 'Purchase', {currency: "USD", value: 30.00});
  });
</script>

请注意,以上示例使用 jQuery 来触发函数调用,但您可以使用任何想用的方法来触发函数调用。

自定义事件

如果我们的预定义标准事件不符合您的需求,您可以追踪自己的自定义事件,还可以使用自定义事件定义自定义受众,从而进行广告优化。自定义事件也支持使用参数,因此您可添加参数以提供各个自定义事件相关的其他信息。

请前往 Blueprint 详细了解转化追踪和自定义事件。

追踪自定义事件

您可以通过调用 Pixel 像素代码的 fbq('trackCustom') 函数来追踪自定义事件,并将自定义事件名称和 JSON 对象(可选)用作其参数。正如标准事件一样,无论是在加载网页,还是访客执行点击按钮等类似操作时,您都可以在网页的开始和结束 <body> 标签之间的任何位置调用 fbq('trackCustom') 函数。

例如,假设您想追踪为获得折扣而分享推广信息的访客,则可使用自定义事件进行追踪,如下所示:

fbq('trackCustom', 'ShareDiscount', {promotion: 'share_discount_10%'});

自定义事件的名称必须是字符串,而且长度不能超过 50 个字符。

自定义转化事件

每次 Pixel 像素代码加载时,都会自动调用 fbq('track', 'PageView') 来追踪 PageView 标准事件。PageView 标准事件会记录触发了函数调用的网页引用网址。您可以在事件管理工具中使用这些已记录的网址,以定义应追踪的访客操作。

例如,假设您将订阅邮件通知的访客转至感谢页面。您可以设置自定义转化事件,在网站访客浏览过网址中包含 /thank-you 的任何页面时,对其进行追踪。假设您的感谢页面是唯一一个网址中包含 /thank-you 的页面,而且您已在该页面安装 Pixel 像素代码,自定义转化事件便会追踪查看该页面的任何访客。

完成追踪后,您可使用自定义转化事件来优化广告营销活动、定义自定义受众,以及进一步细化依赖标准或自定义事件的自定义受众。请前往 Blueprint 详细了解自定义转化。

自定义转化事件依赖完整或部分网址,因此请确保您可以根据网站网址中的唯一字符串专门定义访客操作。

创建自定义转化事件

自定义转化事件完全在事件管理工具中创建而成。请参阅我们的广告主帮助文档以了解方法。

基于规则的自定义转化事件

针对操作进行优化和追踪,而无需向 Meta Pixel 像素代码的基础代码中添加任何内容。除了 17 个标准事件之外,您还可以执行以下操作。

  1. /{AD_ACCOUNT_ID}/customconversions 处创建自定义转化事件。
  2. pixel_rule 中指定表示事件的网址或部分网址。例如,thankyou.html 是在购买后显示的页面。

以下代码会在 'thankyou.html' 显示时记录 PURCHASE 转化:

use FacebookAds\Object\CustomConversion;
use FacebookAds\Object\Fields\CustomConversionFields;

$custom_conversion = new CustomConversion(null, 'act_<AD_ACCOUNT_ID>');
$custom_conversion->setData(array(
  CustomConversionFields::NAME => 'Example Custom conversion',
  CustomConversionFields::PIXEL_ID => <PIXEL_ID>,
  CustomConversionFields::PIXEL_RULE => array(
    'url' => array('i_contains' => 'thank-you.html'),
  ),
  CustomConversionFields::CUSTOM_EVENT_TYPE => 'PURCHASE',
));
$custom_conversion->create();
from facebookads.adobjects.customconversion import CustomConversion

    custom_conversion = CustomConversion(parent_id='act_<AD_ACCOUNT_ID>')
    custom_conversion.update({
        CustomConversion.Field.name: 'Example Custom Conversion',
        CustomConversion.Field.pixel_id: <PIXEL_ID>,
        CustomConversion.Field.pixel_rule: {
            'url': {'i_contains': 'thankyou.html'},
        },
        CustomConversion.Field.custom_event_type: 'PURCHASE',
    })

    custom_conversion.remote_create()
curl \
  -F 'name=Example Custom conversion' \
  -F 'pixel_id=<PIXEL_ID>' \
  -F 'pixel_rule={"url":{"i_contains":"thank-you.html"}}' \
  -F 'custom_event_type=PURCHASE' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.8/act_<AD_ACCOUNT_ID>/customconversions

然后,您可以使用 CONVERSIONS 目标创建自己的营销活动。

在广告组级别,在 promoted_object 中指定同一自定义转化事件(pixel_idpixel_rulecustom_event_type)。

自定义转化事件成效分析

广告成效分析将返回有关自定义转化事件的信息:

curl -i -G \
-d 'fields=actions,action_values' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.7/<AD_ID>/insights

返回标准和自定义转化事件:

{
  "data": [
    {
      "actions": [
        {
          "action_type": "offsite_conversion.custom.17067367629523",
          "value": 1225
        },
        {
          "action_type": "offsite_conversion.fb_pixel_purchase",
          "value": 205
        }
      ],
      "action_values": [
        {
          "action_type": "offsite_conversion.custom.1706736762929507",
          "value": 29390.89
        },
        {
          "action_type": "offsite_conversion.fb_pixel_purchase",
          "value": 29390.89
        }
      ],
      "date_start": "2016-07-28",
      "date_stop": "2016-08-26"
    }
  ],
  "paging": {
    "cursors": {
      "before": "MAZDZD",
      "after": "MjQZD"
    },
    "next": "https://graph.facebook.com/v2.7/<AD_ID>/insights?access_token=<ACCESS_TOKEN>&amp;pretty=0&amp;fields=actions%2Caction_values&amp;date_preset=last_30_days&amp;level=adset&amp;limit=25&amp;after=MjQZD"
  }
}

自定义转化事件具有唯一编号;可以对其查询特定转化,如基于规则的转化:

curl -i -G \
-d 'fields=name,pixel,pixel_aggregation_rule' \
-d 'access_token=ACCESS-TOKEN' \
https://graph.facebook.com/v2.7/<CUSTOM_CONVERSION_ID>

自定义转化事件限制

每个广告账户的自定义转化事件的最大数量为 100。如果您使用广告成效分析 API 来获取自定义转化事件的相关指标,则:

  • 不支持获取商品编号细分数据。
  • 不支持获取唯一操作计数。

追踪站外转化量

fb_pixel 字段添加到广告的 tracking_spec 参数中,利用 Pixel 像素代码追踪站外转化量。详细了解。

use FacebookAds\Object\Ad;
use FacebookAds\Object\Fields\AdFields;

$ad = new Ad(null, 'act_<AD_ACCOUNT_ID>');
$ad->setData(array(
  AdFields::ADSET_ID => <AD_SET_ID>,
  AdFields::CREATIVE => array(
    'creative_id' => <CREATIVE_ID>,
  ),
  AdFields::NAME => 'Offsite Conversions Ad',
  AdFields::TRACKING_SPECS => array(array(
    'action.type' => 'offsite_conversion',
    'fb_pixel' => <PIXEL_ID>,
  )),
));

$ad->create();
from facebookads.adobjects.ad import Ad

ad = Ad(parent_id='act_<AD_ACCOUNT_ID>')
ad.update({
    Ad.Field.adset_id: <AD_SET_ID>,
    Ad.Field.name: 'Offsite Conversions Ad',
    Ad.Field.creative: {
        'creative_id': <CREATIVE_ID>,
    },
    Ad.Field.tracking_specs: [
        {
            'action.type': 'offsite_conversion',
            'fb_pixel': <PIXEL_ID>,
        },
    ],
})
ad.remote_create(params={
    'status': Ad.Status.paused,
})
Ad ad = new AdAccount(act_<AD_ACCOUNT_ID>, context).createAd()
  .setAdsetId(<AD_SET_ID>)
  .setCreative(
    new AdCreative()
      .setFieldId(<CREATIVE_ID>)
  )
  .setName("Offsite Conversions Ad")
  .setTrackingSpecs("{\"action.type\":\"offsite_conversion\",\"fb_pixel\":\"" + <PIXEL_ID> + "\"}")
  .execute();
String ad_id = ad.getId();
curl \
  -F 'adset_id=<AD_SET_ID>' \
  -F 'creative={"creative_id":"<CREATIVE_ID>"}' \
  -F 'name=Offsite Conversions Ad' \
  -F 'tracking_specs=[{"action.type":"offsite_conversion","fb_pixel":"<PIXEL_ID>"}]' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/ads

参数

参数为采用 JSON 格式的可选对象;您可在追踪标准和自定义事件时添加参数。通过这些参数,您可以提供有关网站访客操作的其他信息。完成追踪后,您可使用参数进一步定义所创建的任何自定义受众。请前往 Blueprint 详细了解各参数。

如要添加包含标准或自定义事件的参数对象,您需要将参数数据处理成采用 JSON 格式的对象,然后在调用 fbq('track')fbq('trackCustom') 函数时将其添加为第三个函数参数。

例如,假设您想追踪因您的优惠活动而购买多件商品的访客,则可执行以下操作:

fbq('track', 'Purchase',
  // begin parameter object data
  {
    value: 115.00,
    currency: 'USD',
    contents: [
      {
        id: '301',
        quantity: 1
      },
      {
        id: '401',
        quantity: 2
      }],
    content_type: 'product'
  }
  // end parameter object data
);

请注意,如果您想在定义自定义受众时使用事件参数中的数据,则需确保键值不包含任何空格

对象属性

您可以使用任何自定义事件及任何支持这些属性的标准事件来添加下列预定义对象属性。请将您的参数对象数据处理成 JSON 格式。

属性键值类型参数说明

content_category

字符串

页面或商品的类别。

content_ids

整数或字符串数组

与事件相关联的商品编号,例如 SKU。示例:['ABC123', 'XYZ789']

content_name

字符串

页面或商品的名称。

content_type

字符串

可以是基于所传递的 content_idscontentsproductproduct_group。如果在 content_idscontents 参数中传递的编号是商品编号,则该值应为 product。如果所传递的是商品组编号,则该值应为 product_group

contents

对象数组

JSON 对象数组,包含国际商品编码 (EAN)(如适用)或与事件相关的其他商品或内容标识符,以及商品的数量和价格。必要项idquantity

示例:[{'id': 'ABC123', 'quantity': 2}, {'id': 'XYZ789', 'quantity': 2}]

currency

字符串

所指定 value 的货币。

delivery_category

字符串

交付类别。支持的值:

  • in_store:客户需要进入店铺购买。
  • curbside:客户购买后需要在路边取货
  • home_delivery:客户购买后可享受派送服务。

num_items

整数

开始结账时的商品数量。与 InitiateCheckout 事件结合使用。

predicted_ltv

整数、浮点数

所预测的订阅者终生价值,由广告主定义并以确切值的形式表示。

search_string

字符串

用户搜索时输入的字符串。与 Search 事件结合使用。

status

布尔值

CompleteRegistration 事件结合使用,用于显示注册状态。

value

整数或浮点数

对于购买事件或使用价值优化的事件必备。与事件相关的数值。该数值须代表一个货币金额。

自定义属性

如果我们的预定义对象属性不符合您的需求,您可以自行添加自定义属性。自定义属性可与标准事件和自定义事件结合使用,并能帮助您进一步定义自定义受众。

例如,假设您想追踪先将您的商品与其他商品比较,再购买多件商品的访客,则可执行以下操作:

fbq('track', 'Purchase',
  // begin parameter object data
  {
    value: 115.00,
    currency: 'USD',
    contents: [
      {
        id: '301',
        quantity: 1
      },
      {
        id: '401',
        quantity: 2
      }],
    content_type: 'product',
    compared_product: 'recommended-banner-shoes',  // custom property
    delivery_category: 'in_store'
  }
  // end parameter object data
);

后续步骤

既然您在追踪转化,我们建议您根据这些转化来定义自定义受众,以便针对网站转化优化您的广告。

详细了解

  • 请前往 Blueprint 详细了解转化追踪。