Skip to content

AppsFlyer

AppsFlyerは、モバイルマーケティング分析およびアトリビューションプラットフォームで、マーケティング分析、モバイルアトリビューション、ディープリンクを通じてアプリの分析と最適化を支援します。

BrazeとAppsFlyerの統合により、AppsFlyerのモバイルインストールアトリビューションデータを活用して、より全体的なCampaignsを最適化し構築する方法をより深く理解できます。

また、AppsFlyer Audiences統合により、AppsFlyerのオーディエンス(コホート)を直接Brazeに渡すことができ、適切なタイミングで適切なユーザーをターゲットにした強力なカスタマーエンゲージメントCampaignsを作成できます。

前提条件

必要条件 説明
AppsFlyerアカウント このパートナーシップを活用するには、AppsFlyerアカウントが必要です。
iOSまたはAndroidアプリ この統合では、iOSアプリとAndroidアプリがサポートされています。ご使用のプラットフォームによっては、アプリケーションでコードスニペットが必要な場合があります。これらの要件の詳細については、統合プロセスのステップ1を参照してください。
AppsFlyer SDK 必要なBraze SDKに加えて、AppsFlyer SDKをインストールする必要があります。
メールドメインのセットアップ完了 Brazeオンボーディング時にメールを設定するには、IPとドメインの設定ステップを完了している必要があります。
SSL証明書 SSL証明書を設定する必要があります。

統合

ステップ1: デバイスIDをマッピングする

Androidアプリの場合、AppsFlyerに固有のBrazeデバイスIDを渡す必要があります。

以下のコード行が、Braze SDKの起動後、AppsFlyer SDKの初期化コードの前の正しい位置に挿入されていることを確認してください。詳細については、AppsFlyerのAndroid SDK統合ガイドを参照してください。

1
2
3
4
5
val customData = HashMap<String, Any>()
Braze.getInstance(context).getDeviceIdAsync { deviceId ->
   customData["brazeCustomerId"] = deviceId
   setAdditionalData(customData)
}

Swift SDK v5.7.0+を使用している場合、相互識別子としてIDFVを引き続き使用するには、統合の中断を避けるためにuseUUIDAsDeviceIdフィールドがfalseに設定されていることを確認する必要があります。

trueに設定している場合、BrazeがiOSアトリビューションを適切に照合できるように、アプリのインストール時にAppsFlyerにBrazeのdevice_idを渡すために、Swift用のiOSデバイスIDマッピングを実装する必要があります。

1
2
3
4
5
6
let configuration = Braze.Configuration(
    apiKey: "<BRAZE_API_KEY>",
    endpoint: "<BRAZE_ENDPOINT>")
configuration.useUUIDAsDeviceId = false
let braze = Braze(configuration: configuration)
AppsFlyerLib.shared().customData = ["brazeDeviceId": braze.deviceId]
1
2
3
4
5
6
BRZConfiguration *configurations = [[BRZConfiguration alloc] initWithApiKey:@"BRAZE_API_KEY" endpoint:@"BRAZE_END_POINT"];
[configurations setUseUUIDAsDeviceId:NO];
Braze *braze = [[Braze alloc] initWithConfiguration:configurations];
[[AppsFlyerLib shared] setAdditionalData:@{
    @"brazeDeviceId": braze.deviceId
}];

UnityでデバイスIDをマッピングするには、以下を使用します。

1
2
3
4
Appboy.AppboyBinding.getDeviceId()
Dictionary<string, string> customData = new Dictionary<string, string>();
customData.Add("brazeCustomerId", Appboy.AppboyBinding.getDeviceId());
AppsFlyer.setAdditionalData(customData);

ステップ2: Brazeデータインポートキーを取得する

Brazeで、Partner Integrations > Technology Partnersに移動し、AppsFlyerを選択します。

ここで、RESTエンドポイントを確認し、Brazeデータインポートキーを生成します。キーが生成されたら、新しいキーを作成するか、既存のキーを無効にできます。データインポートキーとRESTエンドポイントは、AppsFlyerのダッシュボードでポストバックを設定する際に次のステップで使用されます。

AppsFlyerテクノロジーページで利用可能な「インストールアトリビューションのデータインポート」ボックス。このボックスには、データインポートキーとRESTエンドポイントが表示されています。

ステップ3: AppsFlyerのダッシュボードでBrazeを設定する

  1. AppsFlyerで、左側のバーのIntegrated Partnersページに移動します。次にBrazeを検索し、Brazeのロゴを選択すると設定ウィンドウが開きます。
  2. IntegrationタブでActivate Partnerをオンにします。
  3. Brazeダッシュボードで確認したデータインポートキーとRESTエンドポイントを入力します。
  4. Advanced Privacyをオフに切り替え、設定を保存します。

これらの手順に関する追加情報は、AppsFlyerのドキュメントに掲載されています。

ステップ4: 統合を確認する

BrazeのAppsFlyerテクノロジーパートナーページでは、ステップ2でデータインポートAPIキーを生成するまで、接続インジケーターにNot Connectedと表示されます。キーを生成すると、インジケーターがConnectedに変わり、タイムスタンプが表示されます。このタイムスタンプは、AppsFlyerが最後にポストバックを送信した時点ではなく、Brazeで統合が最初にセットアップされた時点(データインポートキーが作成された時点)を反映しています。

インストールアトリビューションデータがAppsFlyerから流入していることを確認するには、ステップ5を使用して、非オーガニックインストールデータがBrazeのSegmentフィルターに表示されることを検証してください。BrazeはAppsFlyerのポストバックからのオーガニックインストールを無視し、アトリビューション付きインストールデータとして保存しません。

ステップ5: ユーザーアトリビューションデータを確認する

利用可能なデータフィールド

統合が成功した場合、Brazeはすべての非オーガニックインストールデータをSegmentフィルターにマッピングします。

AppsFlyerデータフィールド Braze Segmentフィルター
media_source Attributed Source
campaign Attributed Campaign
af_adset Attributed Adgroup
af_ad Attributed Ad

Brazeダッシュボードでは、インストールアトリビューションフィルターを使用して、アトリビューションデータでユーザー群をセグメンテーションできます。

4つのフィルターが利用可能です。1つ目は「Install Attribution Sourceがnetwork_val_0」。2つ目は「Install Attribution Sourceがcampaign_val_0」。3つ目は「Install Attribution Sourceがadgroup_val_0」。4つ目は「Install Attribution Sourceがcreative_val_0」。リストされたフィルターの横に、これらのアトリビューションソースがどのようにユーザープロファイルに追加されるかを確認できます。ユーザー情報ページの「Install Attribution」ボックスで、Install Sourceはnetwork_val_0、campaignはcampaign_val_0などと表示されます。

さらに、特定のユーザーのアトリビューションデータは、Brazeダッシュボードの各ユーザーのプロファイルで利用可能です。

ディープリンクのためにAppsFlyerとBrazeを統合する

ディープリンク—アプリやWebサイト内の特定のページや場所にユーザーを誘導するリンク—は、カスタマイズされたユーザー体験を作り出すために使用されます。

広く使われている一方で、ユーザーデータの収集に使われるもう一つの重要な機能であるクリックトラッキング—でメールによるディープリンクを使用する場合、問題が発生する可能性があります。これらの問題は、メールサービスプロバイダー(ESP)がディープリンクをクリック記録ドメインでラッピングし、元のリンクを壊してしまうことに起因します。そのため、ディープリンクをサポートするには追加の設定が必要です。

AppsFlyerはこのような問題を回避するサービスを提供しており、ESPサーバーとお客様のドメイン名の間にAppsFlyerを仲介として介在させることができます。プロキシとしての役割により、ディープリンクを容易にするアソシエーションファイル(AASA/アセットリンク)の提供が可能になります。

ステップ1 - クリック追跡ドメインを作成する

Brazeのメール設定ガイダンスの初期要素に従って、メール送信ドメインとクリック追跡ドメインを作成します。サポートについては、Brazeダッシュボードからチケットを発行し、Brazeメールチームと新しいCTDのセットアップを開始できます。

右上の「Support」ボタンの下にある「Get Help」ボタンを示すBraze UI

既存のCTDを使用している場合でも、新しいCTDの作成は必須です。これにより、現在のライブメールCampaignsのトラフィックに影響を与えることはありません。

OneLinkテンプレートを作成し、「When app is installed」でユニバーサルリンク/アプリリンクを設定します。このテンプレートは、後でメールCampaigns用のOneLinkリンクを作成する際に使用します。

ステップ3 - AppsFlyerでBraze統合を設定する

いよいよAppsFlyerでBraze統合を設定します。このステップと次のステップ(「アプリの設定」)は同時に設定できます。 AppsFlyerでBraze統合を設定するには:

1. AppsFlyerのサイドメニューから、Engage > ESP integrationを選択します。 {#1-in-appsflyer-from-the-side-menu-select-engage-esp-integration}

AppsFlyerのUIに、左側のメニューにある「ESP Integration」ボタンが表示されています。

2. Brazeを選択します。 {#2-select-braze}

Brazeを含むESP統合のリストを表示するAppsFlyerのUI。

AppsFlyerのUIに、ユーザーがテンプレートを選択できるドロップダウンが表示されています。

4. ステップ1で作成した新しいCTDで提供されたクリック追跡ドメインと「Braze endpoint」の値を入力し、「Validate connection」をクリックします。 {#4-enter-your-click-tracking-domain-and-braze-endpoint-value-which-was-provided-with-the-new-ctd-created-in-step-1-then-click-validate-connection}

これにより、クリック追跡ドメインが入力したエンドポイントを指していることが検証されます。

AppsFlyerのUIで、顧客がクリック追跡ドメインと関連する詳細を追加する場所がハイライトされています。

「Braze Endpoint」とは、このガイドのステップ1でBrazeから提供された詳細、特に新しいCTDのことです。

次に、Validate connectionをクリックし、クリック追跡ドメインが入力したエンドポイントを指していることを検証します。 完了したら、Nextをクリックします。

a. AppsFlyerでカスタマイズされたプレハブの説明書をコピーし、ITまたはドメイン管理者に送信します。

管理者は、AppsFlyerが提供する新しいドメインでDNS CNAMEレコードを更新することにより、メールCampaignsのトラフィックをESPサーバーからAppsFlyerサーバーにリルートする必要があります。

その結果、リンクがクリックされるたびに、クリックはAppsFlyerにリダイレクトされ、AppsFlyerからESPエンドポイントにリダイレクトされます。

クリックデータがドメインからAppsFlyerを経由してESPエンドポイントへどのように渡されるかを示す図

b. 説明書をコピーして送信したら、「Done」をクリックします。

Braze統合が作成されました。

ステップ4: アプリを設定する(開発者タスク)

AppsFlyerは、ユニバーサルリンクをサポートするためにWebチームまたはアプリチームが従うべき正しいアプリ設定に関するガイダンスを提供しています。

ステップ5: BrazeでSSLクリックトラッキングが有効になっていることを確認する

この段階で、AppsFlyerでCTDの詳細を共有し検証した後、OneLinkの送信ドメインにSSL証明書があるかどうかを確認するため、テスト送信を実行することを推奨します。これはメール設定ガイドに沿ったものです。

OneLinkを使ってディープリンクを送信することで、品質保証やトラブルシューティングを行うことができます。OneLinkの使い方の詳細については、AppsFlyerのドキュメントを参照してください。

CTDリンクがHTTPと識別された場合、Brazeのメールオペレーションチームに連絡し、SSLクリックトラッキングを有効にしてください。これにより、すべてのHTTPリンクが自動的にHTTPSに変換されます。 カスタマーサクセスマネージャーに連絡する際、またはステップ1と同様にBrazeダッシュボードで再度チケットを発行する際に、以下のメッセージ文例を使用できます:

1
2
Hi Team,
Could you please enable SSL click tracking for CTD XXX? It is currently set to HTTP instead of HTTPS.

BrazeでのAppsFlyerクリックトラッキングURL(オプション)

プッシュやメールなどのBraze Campaignsで、AppsFlyerのOneLinkアトリビューションリンクを使用できます。これにより、インストールやリエンゲージメントのアトリビューションデータをBraze CampaignsからAppsFlyerに送り返すことができます。その結果、マーケティング活動をより効果的に測定し、データドリブン型の意思決定を行うことができます。

AppsFlyerでOneLinkトラッキングURLを作成し、Braze Campaignsに直接挿入するだけです。その後、AppsFlyerは確率的アトリビューション手法を使用して、リンクをクリックしたユーザーをアトリビューションします。Braze Campaignsからのアトリビューションの精度を高めるために、AppsFlyerのトラッキングリンクにデバイス識別子を付加することを推奨します。これにより、リンクをクリックしたユーザーを決定論的にアトリビューションします。

Androidの場合、Brazeは顧客がGoogle Advertising ID収集(GAID)にオプトインできるようにしています。AppsFlyer SDK統合もGAIDを収集します。以下のLiquidロジックを使用することで、AppsFlyerのクリック追跡リンクにGAIDを含めることができます:

1
2
3
{% if most_recently_used_device.${platform} == 'android' %}
aifa={{most_recently_used_device.${google_ad_id}}}
{% endif %}

iOSの場合、BrazeとAppsFlyerの両方が、SDK統合を通じてIDFVをネイティブに自動収集します。IDFVをデバイス識別子として使用できます。以下のLiquidロジックを使用することで、AppsFlyerのクリック追跡リンクにIDFVを含めることができます:

1
2
3
{% if most_recently_used_device.${platform} == 'ios' %}
idfv={{most_recently_used_device.${id}}}
{% endif %}
New Stuff!