---
title: "Facebook Ads"
description: "Tích hợp Facebook Ads với Adapty để tiếp thị gói đăng ký hiệu quả."
---

Với tích hợp Facebook Ads, bạn có thể dễ dàng kiểm tra số liệu thống kê ứng dụng trong Meta Analytics. Adapty gửi sự kiện đến Meta Ads Manager, giúp bạn tạo các đối tượng tương tự dựa trên gói đăng ký để đạt hiệu quả cao hơn. Nhờ đó, bạn có thể xem chính xác quảng cáo của mình đang tạo ra bao nhiêu doanh thu từ gói đăng ký.

Tích hợp giữa Adapty và Facebook Ads hoạt động như sau: Adapty gửi tất cả các sự kiện gói đăng ký được cấu hình trong tích hợp của bạn đến Facebook Ads. Tích hợp này hữu ích để đánh giá hiệu quả của các chiến dịch quảng cáo.

## Thiết lập tích hợp \{#set-up-integration\}

### Kết nối Adapty với Facebook Ads \{#connect-adapty-to-facebook-ads\}

Để tích hợp Facebook Ads và phân tích các chỉ số ứng dụng, bạn có thể thiết lập tích hợp với Meta Analytics. Bằng cách gửi sự kiện đến Meta Ads Manager, bạn có thể tạo đối tượng tương tự dựa trên các sự kiện gói đăng ký như gia hạn. Để cấu hình tích hợp này, hãy điều hướng đến [Integrations > Facebook Ads](https://app.adapty.io/integrations/facebookanalytics) trong Adapty Dashboard và cung cấp thông tin xác thực cần thiết.

:::note
Lưu ý rằng tích hợp Facebook Ads chỉ hoạt động trên iOS 14.5+ với người dùng đã cấp phép ATT.
:::

  <img src="/assets/shared/img/fd84ddf-CleanShot_2023-08-15_at_15.45.442x.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

1. Để tìm App ID, mở trang ứng dụng của bạn trong [App Store Connect](https://appstoreconnect.apple.com/), vào trang **App Information** trong mục **General**, và tìm **Apple ID** ở góc dưới bên trái màn hình.
2. Bạn cần có ứng dụng trên nền tảng [Meta for Developers](https://developers.facebook.com/). Đăng nhập vào ứng dụng của bạn rồi vào phần cài đặt nâng cao. Bạn có thể tìm thấy **App ID** ở phần tiêu đề.

  <img src="/assets/shared/img/4b326c4-001563-August-23-4tO3JVso.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

3. Tắt tính năng theo dõi phía client trong cấu hình Meta SDK để tránh tính doanh thu hai lần trong Meta Ads Manager. Bạn có thể tìm thấy cài đặt này trong Meta Developer Console tại **App Settings > Advanced Settings**. Đặt **Log in-app events automatically** thành "No". Điều này đảm bảo rằng sự kiện doanh thu chỉ được theo dõi thông qua tích hợp của Adapty.

   Để theo dõi sự kiện cài đặt và sử dụng, bạn cần kích hoạt Meta SDK trong mã nguồn của mình. Bạn có thể tìm thấy hướng dẫn triển khai trong tài liệu Meta SDK cho nền tảng của bạn:
   - [iOS SDK](https://developers.facebook.com/docs/ios/getting-started)
   - [Android SDK](https://developers.facebook.com/docs/android/getting-started)
   - [Unity SDK](https://developers.facebook.com/docs/unity/getting-started/canvas)

  <img src="/assets/shared/img/c4eb8eb-001565-August-23-483KKBbC.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

Bạn cũng có thể sử dụng tích hợp này với ứng dụng Android. Nếu bạn đã thiết lập cấu hình Android SDK trong **App Settings**, chỉ cần thiết lập **Facebook App ID** là đủ.

### Cấu hình sự kiện và thẻ \{#configure-events-and-tags\}

Lưu ý rằng tích hợp Facebook Ads được thiết kế đặc biệt cho các công ty sử dụng Meta cho chiến dịch quảng cáo và tối ưu hóa dựa trên hành vi khách hàng. Tích hợp này hỗ trợ các sự kiện chuẩn của Meta cho mục đích tối ưu hóa. Do đó, không thể chỉnh sửa tên sự kiện trong tích hợp Meta Ads. Adapty ánh xạ các sự kiện khách hàng của bạn sang các sự kiện Meta tương ứng để phân tích chính xác.

| Sự kiện Adapty                | Sự kiện Meta Ads            |
| :---------------------------- | :-------------------------- |
| Subscription initial purchase | Subscribe                   |
| Subscription renewed          | Subscribe                   |
| Subscription cancelled        | CancelSubscription          |
| Trial started                 | StartTrial                  |
| Trial converted               | Subscribe                   |
| Trial cancelled               | CancelTrial                 |
| Non subscription purchase     | fb_mobile_purchase          |
| Billing issue detected        | billing_issue_detected      |
| Entered grace period          | entered_grace_period        |
| Auto renew off                | auto_renew_off              |
| Auto renew on                 | auto_renew_on               |
| Auto renew off subscription   | auto_renew_off_subscription |
| Auto renew on subscription    | auto_renew_on_subscription  |

StartTrial, Subscribe, CancelSubscription là các sự kiện chuẩn.

  <img src="/assets/shared/img/8a5df9d-CleanShot_2023-07-04_at_12.47.312x.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

Để bật các sự kiện cụ thể, chỉ cần bật những sự kiện bạn cần. Nếu nhiều tên sự kiện được chọn, Adapty sẽ hợp nhất dữ liệu từ tất cả các sự kiện đã chọn thành một tên sự kiện Adapty duy nhất.

### Kết nối ứng dụng của bạn với Facebook Ads \{#connect-your-app-to-facebook-ads\}

Nếu bạn thực hiện các bước trên, Facebook sẽ tự động nhận dữ liệu gói đăng ký từ Adapty.

Theo những thay đổi về IDFA trong iOS 14.5, chúng tôi khuyến nghị bạn yêu cầu `facebookAnonymousId` của người dùng từ Facebook. Như vậy, nếu IDFA của người dùng không khả dụng, tích hợp vẫn sẽ tiếp tục hoạt động. Hãy làm theo <InlineTooltip tooltip="hướng dẫn cài đặt thuộc tính người dùng">[iOS](setting-user-attributes), [Android](android-setting-user-attributes), [React Native](react-native-setting-user-attributes), [Flutter](flutter-setting-user-attributes) và [Unity](unity-setting-user-attributes)</InlineTooltip> để thiết lập thông số này.

<Tabs groupId="current-os" queryString>
<TabItem value="swift" label="iOS (Swift)" default>

```swift showLineNumbers

do {
    try await Adapty.setIntegrationIdentifier(
        key: "facebook_anonymous_id", 
        value: AppEvents.shared.anonymousID
    )
} catch {
    // handle the error
}
```
</TabItem>
<TabItem value="kotlin" label="Android (Kotlin)" default>

```kotlin showLineNumbers
Adapty.setIntegrationIdentifier(
    "facebook_anonymous_id",
    AppEventsLogger.getAnonymousAppDeviceGUID(context)
) { error ->
    if (error != null) {
        // handle the error
    }
}
```
</TabItem>
<TabItem value="rn" label="React Native (TS)" default>

```typescript showLineNumbers

try {
  const anonymousId = await AppEventsLogger.getAnonymousID();

  await adapty.setIntegrationIdentifier("facebook_anonymous_id", anonymousId);
} catch (error) {
  // handle `AdaptyError`
}
```
</TabItem>
<TabItem value="flutter" label="Flutter (Dart)" default>

```text
There is no official SDK for Flutter
```
</TabItem>
<TabItem value="unity" label="Unity (C#)" default>

```csharp
anonymousID is not available in the official SDK
https://github.com/facebook/facebook-sdk-for-unity/issues/676
```
</TabItem>
</Tabs>

## Cấu trúc sự kiện \{#event-structure\}

Adapty gửi sự kiện đến Facebook Ads (Meta) qua Graph API. Mỗi sự kiện có cấu trúc như sau:

```json
{
  "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"
}
```

Trong đó:

| Thông số | Kiểu | Mô tả |
|:---|:---|:---|
| `event` | String | Luôn là "CUSTOM_APP_EVENTS". |
| `app_user_id` | String | Customer User ID của người dùng. |
| `advertiser_id` | String | IDFA (iOS) hoặc Advertising ID (Android). |
| `advertiser_tracking_enabled` | Integer | `1` nếu bật theo dõi (ATT được cấp phép), `0` nếu không. |
| `application_tracking_enabled` | Integer | Luôn là `1`. |
| `custom_events` | String | Chuỗi JSON được mã hóa chứa các đối tượng sự kiện (xem bên dưới). |
| `extinfo` | String | Chuỗi JSON được mã hóa chứa thông tin ứng dụng/thiết bị (ví dụ: phiên bản, hệ điều hành, ngôn ngữ). |
| `anon_id` | String | Facebook Anonymous ID (nếu có). |

Thông số `custom_events` là một mảng các đối tượng được mã hóa JSON, chứa:

| Thông số | Kiểu | Mô tả |
|:---|:---|:---|
| `_eventName` | String | Tên sự kiện Meta Ads (ví dụ: "Subscribe"). |
| `_logTime` | Long | Dấu thời gian của sự kiện tính bằng giây. |
| `_valueToSum` | Float | Số tiền doanh thu. |
| `fb_content_id` | String | Product ID từ cửa hàng. |
| `fb_currency` | String | Mã tiền tệ (ví dụ: "USD"). |
| `fb_order_id` | String | ID giao dịch gốc. |
| `fb_transaction_id` | String | ID giao dịch gốc. |
| `fb_content_type` | String | Luôn là "in_app". |
| `fb_num_items` | Integer | Luôn là 1 cho sự kiện mua hàng. |