Facebook Ads
通过 Facebook Ads 集成,您可以在 Meta Analytics 中轻松查看应用数据。Adapty 将事件发送至 Meta Ads Manager,帮助您根据订阅情况创建相似受众,从而获得更好的广告回报。这样,您可以准确了解广告在订阅方面带来的实际收益。
Adapty 与 Facebook Ads 的集成工作方式如下:Adapty 会将您在集成中配置的所有订阅事件发送至 Facebook Ads。此集成有助于评估您广告投放活动的效果。
设置集成
将 Adapty 连接到 Facebook Ads
要集成 Facebook Ads 并分析您的应用数据图表,您可以配置与 Meta Analytics 的集成。通过向 Meta Ads Manager 发送事件,您可以基于订阅事件(如续订)创建相似受众。要配置此集成,请在 Adapty 看板中导航至 Integrations > Facebook Ads 并填写所需凭据。
请注意,Facebook Ads 集成仅适用于 iOS 14.5 及以上版本,且仅限于已授予 ATT 同意的用户。
- 要查找 App ID,请在 App Store Connect 中打开您的应用页面,进入 General 部分的 App Information 页面,在屏幕左下角找到 Apple ID。
- 您需要在 Meta for Developers 平台上拥有一个应用。登录您的应用后,进入高级设置,即可在页面顶部找到 App ID。
- 在 Meta SDK 配置中禁用客户端跟踪,以防止 Meta Ads Manager 中的收入重复计算。你可以在 Meta 开发者控制台的 App Settings > Advanced Settings 中找到此设置。将 Log in-app events automatically 设置为”No”。这样可以确保收入事件仅通过 Adapty 的集成进行跟踪。
要跟踪安装和使用事件,您需要在代码中激活 Meta SDK。具体实现方法请参阅各平台的 Meta SDK 文档:
此集成同样适用于 Android 应用。如果您已在 App Settings 中配置好 Android SDK,只需填写 Facebook App ID 即可。
配置事件和标签
Adapty 将其购买事件映射到 Meta 的标准事件,Meta 可基于这些事件优化广告系列:StartTrial、Subscribe 和 fb_mobile_purchase(Meta 的购买事件)。Subscription started、Subscription renewed、Trial started 和 Trial converted 会为事件字段中选择的每个名称各发送一个 Meta 事件,且默认情况下所有名称均已选中。例如,一次试用开始会向 Meta 发送三个事件。如需减少发送数量,请从字段中移除相应名称。
| Adapty 事件 | 默认 Meta 事件 |
|---|---|
| Subscription started | Subscribe, fb_mobile_purchase |
| Subscription renewed | Subscribe, fb_mobile_purchase |
| Trial started | StartTrial, Subscribe, fb_mobile_purchase |
| Trial converted | Subscribe, fb_mobile_purchase |
| Non-subscription purchase | fb_mobile_purchase |
Meta 没有针对其余事件的标准事件,因此 Adapty 以自定义事件的形式发送这些事件,并使用其 Adapty 名称。如需匹配您自己的命名,请在事件字段中修改名称。
| Adapty 事件 | 默认 Meta 事件 |
|---|---|
| Subscription expired (Churned) | subscription_expired |
| Subscription renewal cancelled | subscription_renewal_cancelled |
| Subscription renewal reactivated | subscription_renewal_reactivated |
| Subscription paused (Android only) | subscription_paused |
| Subscription deferred (Android only) | subscription_deferred |
| Subscription refunded | subscription_refunded |
| Trial expired | trial_expired |
| Trial renewal cancelled | trial_renewal_cancelled |
| Trial renewal reactivated | trial_renewal_reactivated |
| Entered grace period | entered_grace_period |
| Billing issue detected | billing_issue_detected |
| Non-subscription purchase refunded | non_subscription_purchase_refunded |
| Trial still active | trial_active |
| Subscription still active | subscription_active |
Trial still active 和 Subscription still active 是合成事件:Adapty 会在计时器触发时向 Meta 发送这些事件,且仅在试用或订阅在计时器到期时仍处于有效状态的情况下才会发送。这些事件不包含收入数据,因此 Meta 不会将其计入购买价值。两者默认均为关闭状态。如需发送,请开启相应选项并设置延迟时间。
将您的应用与 Facebook Ads 连接
如果您按照上述步骤操作,Facebook 将自动从 Adapty 接收订阅数据。
在 iOS 14.5 对 IDFA 进行修改后,我们建议您向 Facebook 请求用户的 facebookAnonymousId。这样,即使用户的 IDFA 不可用,集成也能继续正常运行。请参阅 设置用户属性指南 iOS、Android、React Native、Flutter和 Unity 来设置此参数。
事件结构
Adapty 通过 Graph API 向 Facebook Ads(Meta)发送事件。每个事件的结构如下:
{
"event": "CUSTOM_APP_EVENTS",
"app_user_id": "user_12345",
"advertiser_id": "00000000-0000-0000-0000-000000000000",
"advertiser_tracking_enabled": 1,
"application_tracking_enabled": 1,
"custom_events": "[{\"_eventName\":\"Subscribe\",\"_logTime\":1709294400,\"fb_num_items\":1,\"fb_content_type\":\"in_app\",\"fb_content_id\":\"yearly.premium.6999\",\"fb_currency\":\"USD\",\"fb_order_id\":\"GPA.3383...\",\"fb_transaction_id\":\"GPA.3383...\",\"_valueToSum\":9.99}]",
"extinfo": "[\"i2\",\"com.example.app\",\"1.0.0\",\"100\",\"17.0.1\",\"iPhone14,3\",\"en_US\",\"GMT+3\",\"\",0,0,0,0,0,0,\"GMT+3\"]",
"anon_id": "facebook_anon_id_123"
}
Where:
| 参数 | 类型 | 描述 |
|---|---|---|
event | String | 固定值为 “CUSTOM_APP_EVENTS”。 |
app_user_id | String | 用户的 Customer User ID。 |
advertiser_id | String | 在 iOS 上为 IDFA,如果 IDFA 不可用则为 IDFV;在 Android 上为 Advertising ID。如果用户画像没有设备 ID,则为 00000000-0000-0000-0000-000000000000。 |
advertiser_tracking_enabled | Integer | 如果启用了跟踪(ATT 已授权)则为 1,否则为 0。 |
application_tracking_enabled | Integer | 固定值为 1。 |
custom_events | String | JSON 编码的事件对象字符串(详见下文)。 |
extinfo | String | JSON 编码的字符串,包含应用/设备信息(如版本、操作系统、语言环境等)。 |
anon_id | String | Facebook 匿名 ID(如果可用)。 |
custom_events 参数是一个 JSON 编码的数组,每个对象对应 Adapty 事件所映射的一个 Meta 事件。只有 StartTrial、Subscribe 和 fb_mobile_purchase 包含 fb_content_id、fb_content_type、fb_num_items 和 fb_transaction_id。每个对象包含:
| 参数 | 类型 | 描述 |
|---|---|---|
_eventName | String | Meta Ads 事件名称(例如 “Subscribe”)。 |
_logTime | Long | 事件的时间戳(单位:秒)。 |
_valueToSum | Float | 收入金额。 |
fb_content_id | String | 应用商店中的产品 ID。 |
fb_currency | String | 货币代码(例如 “USD”)。 |
fb_order_id | String | 原始交易 ID。 |
fb_transaction_id | String | 原始交易 ID。 |
fb_content_type | String | 固定为 “in_app”。 |
fb_num_items | Integer | 购买事件固定为 1。 |
故障排查
access_level_updated 在事件流中显示为失败
access_level_updated 是一个仅限 Webhook 的事件。Adapty 不会将其发送到此集成。但 Adapty 会为每个已启用的集成记录结果,不支持的事件将显示为失败。