概要:Facebook AdsとAppsFlyerの連携について詳しく説明しています。
Facebook 広告の設定ガイド
AppsFlyerでFacebookモバイルアプリ広告の計測を始めるまでに、どれほどの時間がかかるのでしょうか。
アプリにAppsFlyer SDKが実装されていて、Facebookでアプリの設定が完了している場合、ほんの数分で計測が開始できます!
成果計測のために、Facebookログインを実装したり、アプリにFacebook SDKを組み込む必要はありません。以下のステップに従って設定を進めてください。
Facebook App ID
- Facebookにて、アプリダッシュボードを開きます。
- アプリページで、アプリを作成をクリックします。
- アプリに名前を付け、一意のネームスペースを入力します。
Facebook App IDを取得する方法:
- Facebookにて、Monetization Managerダッシュボードを開きます。
- データを取得したいプロパティをクリックします。
- Placements > Manage Placement へ進みます。
Facebook App IDは、Placement IDの最初の部分です。
AndroidとiOSアプリの両方に同じFacebook App IDを使用できます。
Facebook 計測の基本設定
AppsFlyerでFacebookキャンペーンの計測を開始するには、次の手順を実行してください。
-
Facebook Adsとの連携を有効化する方法:
- Facebook for developersにて、アプリを開きます。
- アプリを選択します。
- アプリIDをコピーするには、画面上部のアプリIDをクリックします。
- Appsflyerにて、設定 > 連携済みパートナーを開きます。
- パートナーリストからFacebook Adsを選択します。
- 連携タブにて、パートナーを有効にするをオンにします。
詳細は、パートナーの有効化をご覧ください。 - アプリIDを Facebook App ID の項目に貼り付けます。
- 連携を保存 をクリックします。
- [オプション] 推奨される設定をする方法:
- Facebook Adsのクリックスルールックバック期間と一致させるには、28日に設定します。
- Facebook Adsのビュースルールックバック期間と一致させるには、1日に設定します。
- リアトリビューション期間内にアプリを再インストールしたユーザーを計測するには、リインストール計測を有効にします。
値はインストール計測の設定が引き継がれるため、ビュースルー計測を有効にしたり、リインストール計測のルックバック期間を設定したりする必要はありません。 - 設定を保存するには、連携を保存をクリックします。
AppsFlyerでFacebookの計測値が表示されない場合は、Facebook Adsの連携に関するトラブルシューティングを参照してください。
Facebook 計測の詳細設定
Facebook計測の基本的な設定が完了したら、次はFacebook計測の詳細な設定を行いましょう。
ユーザーレベルデータ
デフォルト設定では、Facebookからユーザーレベルのローデータを取得することはできません。
Facebook Adsからユーザーレベルデータを取得する方法:
- Facebook Adsパートナーページから、連携タブを開き、Facebookの利用規約をクリックし同意してください。
- Facebook Adsアカウントにログインします。
- 該当するアプリを選択します。
- 同意するをクリックします。
これで、AppsFlyerがFacebookユーザーのローデータを取得できるようになります。
注意
2020年4月22日より、Facebookはサービスを使用するユーザーを保護するために、データプライバシー対策を強化しました。そのため、Facebookは端末レベルでのビュースルー計測データの提供を停止しました。この制限が適用された日から、ビュースルーコンバージョンとこれらに紐づくアプリ内イベントはrestrictedというメディアソースの下に表示されます。ローデータレポート、Push APIメッセージ、Pull APIレポートなどのユーザーレベルの成果計測項目は、空になります。
コスト、クリック、インプレションのデータ
Facebookコストを有効にすると、Facebookのキャンペーン、広告セット、広告、チャネルレベルでコストデータを取得できます。また、それらのクリック数とインプレッション数の集計値も取得されます。
- Facebookでアカウントのキャンペーン設定ができるFacebookユーザーアカウントにログインしていることを確認してください。サインインするユーザーは、Facebook Business Managerで全てのキャンペーン運用ができる権限を持っている必要があります。
- [コスト]タブを開きます。
- コスト、クリック、インプレッションデータの取得を有効にします。
- Facebookログインボタンをクリックします。
- 画面が表示されたら、AppFlyerがFacebookキャンペーンデータへアクセスすることを承認してください。
注 :連携後の最初のデータ同期では、AppsFlyerはFacebookのコストデータを最大30日間遡って受け取ります。その後の同期では、AppsFlyerは過去7日間のデータを受信します。
Facebookのクリックとビューの定義についてご参照ください。
接続済みのFacebookアカウントを削除する方法:アクション列で、アカウントにカーソルを合わせ、接続を削除をクリックします。
注:
- すでにFacebookにログインしている場合、[Facebookログイン] ボタンをクリックすると、Facebookウィンドウがすぐに開いて閉じます。これは正常な動作です。
- Facebookへのアクセス権限を持つユーザーが複数いる場合、部分的なデータのみ取得されることを防ぐため、これら全てのユーザーがFacebookログインを実施することを推奨します。
コストデータ同期ステイタス
[コスト] タブではコスト連携のステイタスと、AppsFlyerが最後にコストデータを取得した時間が表示されます。
Facebookでは、複数のアカウントを同期して、コストデータを取得することができます。同期されたアカウントごとに、AppsFlyerはコストインテグレーションのステイタスを表示し、最後に対象のコストデータが取得された時間を表示します。
次の表は、ステータスメッセージと、[コスト]タブに表示された場合の対処方法を示しています。
ステイタスメッセージ | 説明 | 対処法 |
---|---|---|
Active |
パートナーAPIが応答してデータを返しています。 |
何もしない |
Active
以下の同期メッセージも表示: Cost Data was never successfully pulled(コストデータが正常に取得されたことはありません) |
以下のいずれかの可能性が考えられます:
|
|
No Matching Data(一致するデータはありません)
|
AppsFlyerはパートナーAPIを使用してこのアプリのアクティブなキャンペーンをクエリしますが、パートナーAPIはキャンペーンのデータを返しません。 |
これは、キャンペーン実行中にキャンペーンIDを変更した場合に発生する可能性があります。 正しいコストデータが必要な場合は、キャンペーンがアクティブに運用されている間は、キャンペーンIDを変更しないでください。 また、 正しいアプリに紐づくFacebook情報でログインしていることを確認してください。 |
Partner API is not responding(パートナーAPIが応答していません) |
|
|
Invalid Credentials(認証情報が無効です) |
接続が無効のため、AppsFlyerはコストデータを取得できません。これは、Facebookのパスワードが変更された場合、またはAppsFlyer権限が取り消された場合に発生します。 |
[コスト] タブでFacecookに再度ログインします。 |
最新のデータ取得
コストタブでは、コストが取得された最新時刻が表示されます。コストデータが一度も取得されていない場合は、Cost Data was never successfully pulled(コストデータは一度も取得されていません)という同期メッセージが表示されます。
例
例
シナリオ1:停止したキャンペーン
AppsFlyerは、アドネットワークAで実行するいくつかのキャンペーンのコストを取得します。[コスト]タブを見ると、 Last successful sync 2 hours ago(前回の同期は2時間前です)というメッセージが表示されています。同日に、アドネットワークAでキャンペーンを停止します。2週間後にアドネットワークAの[コスト]タブを見ると、 Last successful sync 14 days ago(前回の同期は14日前です)というメッセージが表示されます。
シナリオ2:広告ネットワークAPIの問題
AppsFlyerは、アドネットワークAで実行するいくつかのキャンペーンのコストを取得します。[コスト]タブを見ると、 Last successful sync 2 hours ago(前回の同期は2時間前です)というメッセージが表示されています。次に、アドネットワークBでAPIの問題が発生します。この問題の修正には数時間かかります。[コスト]タブを見ると、 Last successful sync 8 hours ago(最後の同期は8時間前です)というメッセージが表示されています。
アプリ内イベントのマッピング

アプリ内イベントをマッピングする方法:
- アプリ内イベントポストバックを有効にします。
Facebookのアプリ内イベントのマッピングを初めて有効にする際は、SDKの全てのaf_XXXイベントは自動でFacebookの規定イベントリストにマップされます。この自動マッピングにより、手間が省け、マッピングミスを大幅に削減できます。 - 次のパラメータを設定します。
パラメーター名 説明 SDK Event Name アプリと連携済みのSDKから、またはサーバー間(S2S)イベントからAppsFlyerが受信したイベント名
ヒント - アプリ内イベント名がリストに表示されない場合、デバイス上で非オーガニックインストールによってアプリ内イベントが発生しているかを確認してください。Partner Event Identifier 規定のFacebookイベントタグから、イベントに最適なものを選択します。FacebookのCUSTOM イベントも送信できます。 Send Revenue チェックなしの場合 - AppsFlyerはリッチアプリ内イベントのすべてのパラメーターをパートナーに送りますが、af_revenueパラメーターに含まれるrevenueパラメータは送信しません。
チェックありの場合 - AppsFlyerはrevenue値(イベントに存在する場合)を含むすべてのパラメータをパートナーに送ります。 - リストにSDKイベントを追加するには、イベントを追加をクリックします。
全てのSDKイベントに対する送信オプションは、オーガニックを含む、全てのメディアソースで、つまり全てのユーザーベースがFacebookに送信されます。
イベント名に関する制限:
- イベント名の文字数制限:小文字の英数字で2~40文字
- 次の文字は使用できません:
- コロン (:)
- ピリオド (.)
- ラテン文字(英語)以外の文字:2020年1月12日から、Facebookは漢字のサポートを停止しています。AppsFlyerでは、他の言語について検証をしていませんので、これらの文字がポストバックでサポートされているか、事前にFacebookに確認してから使用してください。
- イベント名は大文字小文字を区別します。乖離を避けるために、全てのメディアソースとアプリバージョンで、イベント名の大文字小文字が正しく統一されていることを確認してください。
詳細は、Facebook Adsのアプリ内イベントマッピングを参照してください。
リターゲティングアトリビューション
AppsFlyerのFacebook向けリターゲティング計測では、既存ユーザーのエンゲージメントをFacebook広告の成果に紐づけ、AppsFlyerレポートを使用してユーザーの質とエンゲージメントを計測できます。
Facebookで既存ユーザーが対象のリターゲティングキャンペーンをせっりょく的に実施している場合にのみ使用してください。
- [アプリ設定] ページでリターゲティング広告の計測を有効にしてください。
- Facebook Adsのパートナーページにて、リエンゲージメント計測を有効にします。
- リエンゲージメントのクリックスルールックバック期間を設定します。
リエンゲージメントルックバック期間とは、クリックがエンゲージメントとして計測されるために、広告クリックからアプリが起動されるまでの期間を指します。
時間または日単位でルックバック期間を選択し、スライダーを希望の値に設定します。 - リエンゲージメント期間を設定します。
これは、ユーザーのアプリ内イベントが、主な成果源として、リターゲティングメディアソースの成果として紐づけられる期間を指します。
値には、日数(1~90)、時間数(最大23)、またはLifetime(無限)を設定できます。デフォルトは30日です。
詳細は、AppsFlyerリターゲティング計測を参照してください。
詳細は、Facebook等のSRN経由のユーザー向けディープリンクを参照してください。
カリフォルニア州消費者プライバシー法(CCPA)への準拠
CCPAプライバシー規制に準拠すると、米国カリフォルニア州に拠点を置く Facebookユーザーからのデータが制限されます。
CCPAへの準拠を有効にする方法:連携タブにて、Limit Facebook use of users' parsonal information (CCPA) を有効にします。
詳細は、CCPAコンプライアンスを参照してください。
広告収益の計測
広告収益化のためにFacebook Audience Network Ad Revenueを使用している場合、AppsFlyerにてFacebook経由の広告収益を記録することができます。これにより、アプリ内課金の収益データの有無にかかわらず、ユーザー収益の全体像を把握できます。
Facebook Audience Networkの広告収益を計測する方法:
- [広告収益] タブで、[広告収益データを取得] のトグルをオンにします。
- [イベントソース] を選択します。これは、広告収益モデルを示す最適なイベントです。例えば、インプレッションに基づいて広告収益が入る場合、広告が表示されたというイベントをAppsFlyerに送信することをお勧めします。最適なイベントは各広告収益化プラットフォームごとに分けて設定が可能です。ただし、
af_app_opened
イベントを使用することも可能です。この場合、ユーザーがアプリを開くたびに、広告収益イベントが計測されます。 - 広告収益イベントが表示されます。これは、[source event]_monetized という新しい広告収益イベント(例:上記のようにAd_Watched_Monetizedなど)を示す読み取り専用フィールドです。広告収益イベントは、管理画面で追加イベントとして表示されます。
- Facebookの [広告収益] をクリックして、Facebook Audience Network の広告収益に関するデータの収集を有効にします。Facebook Audience Network Ad Revenueを認証するには、Facebook情報でログインをしてください。
- Audience Network App ID (Facebook App ID)を入力します。これは、Facebook Audience Network (FAN)から取得できます。
- Facebook App IDを取得します。
- AppsFlyerの Audience Network App ID フィールドにIDを貼り付けます。
- [広告収益を保存] をクリックします。
Facebookアプリ内イベントマッピング
広告主はSDKまたはS2Sのアプリ内イベントをFacebookの既存イベントに簡単に紐づけることができます。広告主は、アプリ起動や既知のアプリのアンインストールごとにFacebookポストバックを送信することができます。
これにより、広告主は Facebook の高度な最適化機能を利用したり、カスタムおよび類似オーディエンスセグメントを構築できます。
規定イベントの紐づけ
Facebookはすでに定義されており紐づけ可能な幅広いイベントを提供しています。
こちらにて、イベントの質に関する追加情報を含むパラメータと一緒に Facebookに送信できる リッチアプリ内イベントの一覧をご覧ください。
以下は、追加のパラメータを持たない、他のFacebook 規定イベントの一覧です:
Facebookイベント識別子 |
説明 |
AppsFlyer SDK上で推奨されるイベント名 |
---|---|---|
Donate |
団体または活動への資金の寄付。 |
af_donate |
Schedule |
いずれかのロケーションを訪問するための予約。 |
af_schedule |
SubmitApplication |
クレジットカード、教育プログラム、仕事など、提供する製品、サービスまたはプログラムへの申込みの提出。 |
af_submit_application |
FindLocation |
訪問する意図を持って、ウェブまたはアプリを介していずれかのロケーションを見つけた場合。例えば、製品を検索し、ローカル店舗でその製品を見つけた場合。 |
af_find_location |
Contact |
電話またはSMS、メール、チャットなど、またはその他の顧客とビジネス間の連絡手段。 |
af_contact |
CustomizeProduct |
ビジネスが所有する設定ツールやアプリケーションを介する製品のカスタマイズ。 |
af_customize_product |
カスタムアプリ内イベントマップ
AppsFlyerでは、CUSTOM Facebookイベント識別子オプションを使うことで、どんなカスタムアプリ内イベントもFacebookに送信することができます。
SDKで定義されたイベント名とイベント値(イベントパラメーターを含む)は、そのままFacebookに転送されます。
Facebook Analyticsにて全てのカスタムイベント名を確認できます。これらは Facebook Ads Managerにて、「カスタムイベント」として集計、表示されます。
注意
「CUSTOM」としてマップされたイベントは、Facebookの次の機能では使用できません。
- アプリイベントの最適化
- イベント値に基づいた最適化
- ダイナミックプロダクト広告
Facebookでこれらの機能を使用できるようにするには、イベントデータに基づいて、Facebookの規定イベントに紐づけることを推奨します。
カスタムイベントによる自動パラメータマッピング
AppsFlyerとFacebookの緊密な連携により、AppsFlyerの標準SDKイベントパラメータの多くは、自動でFacebookの規定パラメータに紐づけされます。例えば、 af_revenue パラメータは Facebookの _valueToSum パラメータに変換され、イベントごとの収益値を送信し、Facebook上で測定および最適化に利用することができます。
注意
自動パラメータマッピングは、CUSTOMイベントと 定義済みイベントでは異なる場合があります。
事前定義されたイベント の場合、 af_price は _valueToSum にマップされる場合もあります(例えば、fb_mobile_add_to_cart
の場合)。それ以外の場合、af_revenue は _valueToSum にマッピングされます(例えば、 fb_mobile_purchase
の場合)。
CUSTOMにマップされたイベントの場合、常に af_price は fb_priceに、af_revenueは valueToSum にマップされます。
次の表は、CUSTOMイベントを通じてFacebookにマップされたときに自動的にFacebookのパラメータにマップされる、すべてのAppsFlyerイベントパラメータを示しています。
AppsFlyerのパラメータ | Facebookのパラメータ |
---|---|
af_city | fb_city |
af_class | fb_travel_class |
af_content_id | fb_content_id |
af_content_list | fb_content_id |
af_content_type | fb_content_type |
af_country | fb_country |
af_currency | fb_currency |
af_date_a | fb_checkin_date |
af_date_b | fb_checkout_date |
af_departing_arrival_date | fb_departing_arrival_date |
af_departing_departure_date | fb_departing_departure_date |
af_description | fb_description |
af_destination_a | fb_origin_airport |
af_destination_b | fb_destination_airport |
af_destination_list | fb_destination_ids |
af_hotel_score | fb_hotel_score |
af_level | fb_level |
af_max_rating_value | fb_max_rating_value |
af_num_adults | fb_num_adults |
af_num_children | fb_num_children |
af_num_infants | fb_num_infants |
af_order_id | fb_order_id |
af_payment_info_available | fb_payment_info_available |
af_preferred_neighborhoods | fb_preferred_neighborhoods |
af_preferred_num_stops | fb_preferred_num_stops |
af_preferred_price_range | fb_preferred_price_range |
af_preferred_star_ratings | fb_preferred_star_ratings |
af_price | fb_price |
af_quantity | fb_num_items |
af_region | fb_region |
af_registration_method | fb_registration_method |
af_returning_arrival_date | fb_returning_arrival_date |
af_returning_departure_date | fb_returning_departure_date |
af_revenue | _valueToSum |
af_search_string | fb_search_string |
af_success | fb_success |
af_suggested_destinations | fb_suggested_destinations |
af_suggested_hotels | fb_suggested_hotels |
af_travel_end | fb_travel_end |
af_travel_start | fb_travel_start |
af_user_score | fb_user_score |
イベントとパラメータの制限
送信されるイベントデータには、Facebook側でいくつかの制限があります:
- 一つのアプリ内イベントにつき、利用できるパラメータは最大25個です。
- イベント名とパラメータ名の文字数制限は、小文字英数字で2~40文字以下で、アルファベット、アンダースコア、ハイフン、スペースのみで構成されている必要があります。
- 非ラテン文字(英数字)以外は使用しないでください。ラテン文字以外の文字を使用すると、一貫性のない結果が表示されます。
- 各パラメーター値の長さは100文字以下にしてください。
- AppsFlyerのイベント名はFacebookのイベント名と同じ名前を付けることができますが(例:fb_price)、これらのイベントはCUSTOMイベントとしてFacebook側に送信できません。このミスを防ぐため、Facebookのイベント名と同じイベント名をSDKで定義するのは避けてください。
- Facebookでアプリ内イベントのポストバックマッピングを実行するには、オーガニックを含むすべてのソースからイベントデータを取得する必要があります。
重要!
上記のパラメーターを除いて、AppsFlyerはCUSTOMイベントデータをそのまま Facebookに送信します。アプリ所有者の責任で、イベントのデータがFacebookの要件に合っているかを確認してください。
イベント値に、有効な Facebook パラメータにマッピングされていないパラメータが含まれている場合(上記の表を参照)、これらのパラメータは Facebook に送信されません。
AppsFlyer SDK vs. Facebook SDK
アプリにAppsFlyer SDKを実装する前に、既にFacebook SDK が実装されている場合があります。そうでない場合でも、AppsFlyer SDKに加えてFacebook SDKが本当に必要か疑問に思う方もいるでしょう。また両方のSDKが必要な場合、重複せずにこれらが共存することは可能なのでしょうか?
どんな場合にFacebook SDK が必要ですか?
一般的に、単にリンクのクリック時にアプリを起動し、ユーザー獲得を目的とする広告計測の場合、AppsFlyer の SDK がアプリに実装されていれば、Facebook の SDKは必要ありません。AppsFlyerの SDK は、エンゲージメント、インストール、セッション、インストール後のイベントを含む、Facebookユーザーのモバイルユーザー獲得を目的とした広告成果が全て計測できます。
ただし、アプリで次のいずれかを使用する場合、AppsFlyerに加えてFacebook SDKも必要です:
-
ディープリンクデータ
Facebookからディープリンクデータが必要な場合、Facebook SDKからのみ取得可能です。AppsFlyer SDKを使用すると、ディープリンクデータとルーティングパラメーターの引き渡しは、Facebookから受信するデータ(キャンペーン、広告セット、広告、チャネル)を使用したものに限られます。 -
ディファードディープリンクとダイナミックプロダクト広告キャンペーンデータの取得
Facebookからディファードディープリンク、またはダイナミックプロダクト広告向けのデータが必要な場合は、これらはFacebook SDKからのみ取得可能です。以下の手順に従って、ディファードディープリンクデータをFacebook SDKからAppsFlyer SDKに自動的に送信することができます。
または、Facebook SDKをアプリに実装することなく、キャンペーンまたは広告名を初回起動時にコンバージョンデータから取得して使用します。この方法には、キャンペーン名または広告名からディープリンクデータを割り出すロジックを組み込む必要がある、という制限があります。 -
その他のFacebook機能
認証、広告の収益化、ソーシャル共有、ユーザー招待など、成果計測に関係のない理由でFacebook SDKが必要になる場合があります。
ディファードディープリンク向けにFacebook AdsとAppsFlyer SDKを使用する
Facebookからディファードディープリンクをサポートするには:
- 前提条件
*必要最低限のAppsFlyer SDKバージョン:
- Android AppsFlyer SDK 4.10.3
- iOS AppsFlyer SDK 4.10.4
* Facebookの連携ステップを完了している。
* Facebook SDKがアプリに実装されている(Androidの場合、開発者がFacebook SDKの特定のコンポーネントをアプリに実装する場合、AppLinksモジュールが追加されていることを確認してください。) - Facebook SDKからAppsFlyer SDKにFacebookのディファードディープリンクデータを自動で取得するには、以下を使用してください:
AppsFlyerLib.getInstance().enableFacebookDeferredApplinks(true);
AppsFlyerTracker.shared().enableFacebookDeferredApplinks(with: AppLinkUtility.self)
[[AppsFlyerTracker sharedTracker] enableFacebookDeferredApplinksWithClass:FBSDKAppLinkUtility.class];
- onConversionDataSuccessコールバックでaf_dpを取得します。
- プログラムでaf_dpの値を使ってユーザーをリダイレクトします。
Facebook SDKとの重複を回避する
Facebookでは、AppsFlyerがオーガニックを含む全てのユーザーのインストールとアプリ内イベントをポストバックすることを必須としています。両方のSDKがアプリに実装されていると、インストールとアプリ内イベントはFacebook SDKで計測され、さらにAppsFlyer経由でFacebookサーバーへポストバックとして再度レポートされます。この重複はどのように回避できるのでしょうか?
-
インストール
Facebookはアプリのインストールについて重複排除します。Facebook SDKとAppsFlyerの両方で新規ユーザーがアプリをインストールした場合、Facebookはこのインストールを一度のみカウントできる仕組みになっています。 -
アプリ内イベント
Facebookはアプリ内イベントの重複を排除しません。アプリ内イベントはFacebook SDKと他のソース(AppsFlyerなど)の両方から報告されます。つまり、この重複へ対処しない限り、Facebookは倍の収益やその他のイベントを誤ってレポートする可能性があります。
Facebookでのアプリ内イベントの重複を防ぐためには、次のいずれかの方法を実行してください:
- Facebook SDKでイベントの設定をしないでください。
- AppsFlyerにてFacebookのアプリ内イベントマッピングを無効にします。
Facebookチャネル
Facebookでは、キャンペーン、広告セット、広告という区切りだけではなく、Facebookチャネル(Facebook上はPlacementと呼ばれる)でも、データの内訳を確認できます。
- Facebookチャネル - Facebookアプリからのユーザー
- Instagram - Instagramアプリからのユーザー
- Messenger - Facebook Messenger アプリからのユーザー
- AudienceNetwork - Facebookに属する他のアプリや提携アプリからのユーザー
このデータを使って、Facebookのさまざまなチャネル経由のユーザーの質を比較しましょう。
Facebookと代理店
広告主自身が独自のFacebook広告を運用している場合でも、代理店とFMP(Facebookマーケティングパートナー)は、広告主に代わりAppsFlyer上でFacebook広告の実行および計測ができます。代理店のキャンペーンが正しく代理店の成果に紐づくためには、キャンペーン名の先頭に代理店名を付ける必要があります。
代理店とFacebookインストール計測の詳細については、こちらをご覧ください。
また、代理店はFacebookのルックバック期間とリターゲティング設定を変更することはできません。つまり、必要に応じて広告主にこれらの設定変更を依頼する必要があります。
さらに、代理店はFacebookに送信されるアプリ内イベントのポストバックの設定を変更することができません。なぜなら、FacebookにはFB経由のユーザーデータのみではなく、全てのユーザーデータのポストバックが送信されるためです(代理店経由のユーザーのみではないため)。
次の画像は、代理店がFacebookキャンペーンを管理できるようにするために、広告主が実行する必要がある全ての設定を示しています。
ストア外AndroidアプリのFacebook成果計測
Facebookは、ストア外マーケットにあるAndroid用アプリのモバイルアプリインストールキャンペーンの作成を許可していません。例)Baidu
ただし、次の手順に従って、ストア外アプリをFacebookで宣伝しインストール計測することができます:
- 開発者は、アプリを配信するストア外マーケットごとに、それぞれ個別のAPKを用意する必要があります。詳細はこちらを参照してください。
- モバイルアトリビューションが有効になっている状態で、ユーザーをランディングページに遷移させるための、トラフィックまたはコンバージョンを目的としたキャンペーンをFacebookで作成してください。
- ランディングページには、APKが存在するストア外マーケットに直接リンクする アプリダウンロードボタンを含める必要があります。
- ユーザーがこのボタンをクリックし、ストア外マーケットへリダイレクトされます。インストールが完了すると、AppsFlyerはMMP APIを介してユーザーをFacebookの成果に紐づけます。
注意
Google PlayとAppストアについても、マーケットへリダイレクトする前にランディングページが必要な場合も、同様の方法を使うことができます。
Amazon上のアプリのFacebookクリックの成果計測についての具体的な手順については、こちらをご覧ください。
Facebook コスト
AppsFlyerは、過去7日間にインストールが最低1つある場合、Facebookキャンペーンからコストデータ(クリックとインプレッションを含む)を取得します。
Facebook キャンペーンが複数のプラットフォーム(Android、iOS、デスクトップなど)に対応している場合、ダッシュボードのコストはプラットフォーム固有であり、Facebook によって計算されます。
クリック数とインプレッションを含む Facebookコストを取得。
Facebookコストのよくある質問
AppsFlyerの管理画面に古いコストデータが表示されません
上記のように、Facebook管理者のログインを初めて実行した時点で、AppsFlyerはFacebookの既存キャンペーンについてのコストデータを、過去30日間まで遡って受信します。それ以前のコストデータは利用できません。
その後の同期では、AppsFlyerは過去7日間のデータを受信します。つまり、過去7日間にコンバージョンが 1 回以上あるすべてのキャンペーンについて、コスト、クリック数、インプレッション数のデータが収集されます。
今まで問題なかったコストデータが表示されなくなりました
Facebookはコストデータを取得するための権限を数か月ごとにリセットすることがあります。管理画面でコストデータが表示されなくなった場合は、Facebook管理者のログインステップを再度実行してください。
Facebook管理者ユーザーがFacebookのパスワードを変更した場合も、ログインステップを再度実行する必要があります。
5分前に自社のFacebook広告をクリックしました。なぜAppsFlyerでクリックが計測されないのですか?
AppsFlyerは数時間ごとにクリック数、インプレッション数、コストデータの集計値を定期的に取得します。したがって、これらのアクションがAppsFlyerの管理画面に表示されるまでに数時間かかる場合があります。
Facebookのクリックローデータはありますか
AppsFlyerはFacebookからクリック数とインプレッション数の集計値のみを取得するため、クリックとインプレッションをローデータで取得することはできません。ローデータレポートで取得できるクリックとインプレッションデータは、結果的にインストールに繋がったもののみです。
国別のFacebookコストについて制限はありますか
AppsFlyerの管理画面で国別に絞り込むと、Facebookのコストデータの概要と内訳を確認できます。
このデータは、Facebookの「モバイルアプリインストール広告」のみで利用できます。
また、国別のコストデータは、単一プラットフォームでのキャンペーンのみで利用できます。つまり、AndroidとiOSの両方のプラットフォームをターゲットにした広告セットは、国別のコストデータを表示できません。完全なコストデータを取得するには、各プラットフォームを対象としたキャンペーンをそれぞれ作成してください。
Master API上でのFacebookコストデータの制限は何ですか
Master API レポートにて、Facebookは [国] と [チャンネル] で同時にグループ化する機能をサポートしていません。
完全なコストデータを含むレポートを作成するには、いずれか一つのディメンションのみでグループ化してください。
コストの合計値が一致しません
FacebookとAppsFlyerの計測モデルに違いがあります。これらの違いはFacebookコストデータとの乖離の原因となる可能性があります。
- Facebookのクロスデバイス計測:これによって、一つのプラットフォーム(iOS / Android)のキャンペーンから、別のプラットフォームのインストールがコストデータとともに表示されることがあります。
-
Facebookのモバイルでないキャンペーン:Facebookのリンククリック広告など、これらのキャンペーンでは、デスクトップユーザーが最終的にモバイルアプリをインストールすることがあります。これらのクロスデバイスキャンペーンでは、AppsFlyerにコストは表示されません。ただし、アプリをインストールしたのと同じデバイスで、リンククリックが実行された場合は、コストデータが受信されます。
例えば、Facebookユーザーがデスクトップパソコンで広告主のランディングページにつながる広告をクリックしたとします。一週間後、同じFacebookユーザーが広告主の iOSアプリをiPhoneデバイスにインストールします。インストールはAppsFlyerの管理画面に表示されますが、このクロスプラットフォームインストールのコストは表示されません。 - 過去7日間に成果が 0 のキャンペーン - AppsFlyerでは、過去7日間にインストール/コンバージョンが発生したキャンペーンのみのコストデータを取得します。Facebookコストの設定が済んだばかりで、過去7日間にキャンペーンが停止状態の場合、コストは表示されません。
総収益は同じですが、AppsFlyerが算出するeCPI はFacebookが算出するコストと異なります。なぜですか?
インストール当たりのコストは、コスト総額をインストール数で割ることで計算されます。AppsFlyerとFacebookでインストールの計測方法が異なるため、通常2つのプラットフォーム間で、eCPIは異なる数値が算出されます。
一部のキャンペーンでのみコストデータが表示されるのはなぜですか?
Facebook Business Managerでキャンペーンを実行する権限を持つFacebookユーザーが複数いる場合でも、上記のFacebookログインを実行するために必要なのはそのうちの1人だけです。
ただし、このユーザーがFacebook上で実施中のキャンペーンの一部にアクセスできない場合、結果はAppsFlyerのダッシュボードに表示されますが、コスト、クリック数、インプレッション数のデータは表示されません。
Facebookのコストデータはリターゲティングキャンペーンに表示されますか?
リターゲティングキャンペーンのコストとROIのデータは、 コホートレポート内のコホートタイプを[全体]にすることで確認可能です。
なぜログイン前にFacebookコスト連携画面が閉じるのですか?
設定を実行しているのと同じブラウザでFacebookにサインインしている場合、そのログイン情報を使ってウィンドウが自動的にFacebookに接続し、AppsFlyerのアプリに既にアクセス権が与えられている場合、追加で実施する作業がないため画面が自動で閉じます。
AmazonアプリストアのアプリとFacebookコストの問題は何ですか?
AppsFlyerのデータとは対照的に、FacebookはAndroidアプリとAmazonアプリ(Androidベース)のコストデータを区別しません。
したがって、Amazonユーザーのコストデータは、Amazonキャンペーンではなく、他のAndroidユーザーを対象としたキャンペーンに紐づけられている可能性があります。
Googleのコスト同期を停止できますか?
[コスト] タブのステータスメッセージに「パートナー API は現在応答していません」と表示されます
これは、アカウントをAppsFlyerと連携した後、Facebookで二要素認証 (2FA) を有効にしたことが原因である可能性があります。解決するには:
- Facebookアカウントからログアウトします。
- AppsFlyerで、Facebook連携の[コスト]タブに移動し、接続を削除します。
- コストタブで、[ログイン] をクリックし、その手順に従います。
Facebookコストの例
広告主が Facebook Adsを使用してキャンペーンを実施します。広告主は、AppsFlyer上で以下のデータを確認できます。
コスト情報はFacebookからAppsFlyerに提供されます。インストール数はAppsFlyerの計測ルールを用いて、AppsFlyerが算出します。その結果、FacebookとAppsFlyerのeCPIには通常差異が発生します。
FacebookとAppsFlyerの乖離
モバイルユーザー獲得のエコシステム内で主要なプレイヤーの計測モデルがそれぞれ違うように、AppsFlyerとFacebookの計測モデルも異なります。これはFacebookとAppsFlyerの管理画面の間で、乖離が起こる原因の一つです。
この数値の乖離を最小限に抑えるため、弊社はFacebookと緊密に連携していますが、広告主は以下の原因について理解しておくことが必要です。
AppsFlyerとFacebookの間の乖離を検出する
Facebookの Event Manager や Analytics に表示されるイベントと、AppsFlyerのレポートのイベントを比較します。イベント数が大きく異なる場合は、乖離が発生している可能性があります。
計測モデルの違い
原因 | AppsFlyer | |
---|---|---|
クリックアトリビューションルックバック期間 |
1~30日。Facebookでは28日に設定されていることを確認してください。 |
|
ビュースルーアトリビューションルックバック期間 |
1日間 |
デフォルトは1日ですが、1~48時間に設定できます(デフォルト値のままにすることを推奨します)。 |
インストール記録日 |
Facebookはクリック、インプレッション時に新規インストールを記録します。 |
AppsFlyerでは、インストール時(アプリを初回起動した時)に新規インストールを記録します。 |
マルチチャネルソースのアトリビューション |
Facebookは他のメディアソースに関わらず、インストールを自社の成果に紐づけます。 |
AppsFlyerでは、ラストクリックアトリビューションを使用します(AppsFlyerの計測ロジックの詳細は、こちらをご覧ください)。 |
クロスデバイスアトリビューション |
Facebookは、異なるデバイス(iOS/Android/desktop)でクリックしインストールをしたユーザーを計測します。 |
AppsFlyerは、エンゲージメントとインストールの両方を単一のデバイスで行った場合、成果を計測します。 |
タイムゾーンの違い |
Facebook広告のデフォルトのレポートタイムゾーンはPSTです。AppsFlyerのアプリ設定で定義されているアプリのタイムゾーンと一致するように、Facebook広告マネージャーで変更してください。 |
AppsFlyerのデフォルトのアプリタイムゾーンはUTC+0です。Facebook広告マネージャーで設定されているタイムゾーンと一致するよう、アプリ設定ページにてアプリのタイムゾーンを変更できます。 |
本ページ下の添付PDFにて例をご覧ください(スクロールダウン): Facebook and AppsFlyer - Understanding Discrepancies
クリックスルーとビュースルー計測
AppsFlyerはクリックスルーとビュースルー計測の両方に対応しています。FacebookとAppsFlyerの乖離を最小限に抑えるため、クリックスルーとビュースルーのルックバック期間が同じであることを確認してください。
Facebook上のビュースルーアトリビューション期間がAppsFlyerと同じであることを確認するには、Facebookにアクセスしてください。次のスクリーンショットに示されているように、Facebookと同じ値を、AppsFlyerのアトリビューション期間として設定することをお勧めします。
例
Facebook上のクリックルックバック期間がデフォルト値である28日間であるのに対して、アプリ「com.greatapp」のAppsFlyer上の値が7日間に設定されているとしましょう。Facebook上の「com.greatapp」の広告をクリックしたユーザーが、その後8~28日の間にアプリを初回起動した場合、Facebookはこのユーザーを自社の成果と見なすのに対し、AppsFlyerではこれをオーガニックユーザーと計測します。
制限されたメディアの乖離
コンバージョンシナリオによっては、アドネットワークがユーザーレベルデータを共有しないことがあります。AppsFlyerプラットフォームでは、集計データレポートは通常通り機能しますが、ローデータレポートに記載されるコンバージョンは制限されたメディアソースに成果が起因します。
Facebook Adsは、ビュースルーアトリビューション(VTA)コンバージョンのユーザーレベルデータを送信しません。そのため、AppsFlyerはアシストコンバージョンのインプレッションをFacebook広告に結び付けない場合があります。
例
- ユーザーにAwesomeAppのFacebook広告が表示されます。その後、このユーザーはAwesomeAppのGreatAdNetworkの広告を閲覧し、クリックしてアプリをインストールします。
- Facebook Adsは彼らのVTA期間内に発生したためこのコンバージョンを自社の成果と計測します。
- AppsFlyerは、インストール直前にラストエンゲージメントがあったGreatAdNetworkにこのコンバージョン成果を紐づけます。
- AppsFlyerは、Facebook AdsのVTAに規制があるため、Facebook Adsをコンバージョンアシストとして見なしません。
アプリ内イベントの違い
FacebookとAppsFlyerに表示されるプラットフォーム間の乖離は、インストール後のイベント(例:アプリ内購入)でも発生する可能性があります。次の表は、これらの乖離の最も一般的な原因とそれらを最小限に抑える方法を示しています:
原因 | 説明 | AppsFlyerのヒント |
---|---|---|
インストール値の乖離 |
一つのプラットフォームでは成果が計測されているが、もう一方のプラットフォームでは成果が計測されていないユーザーが行ったイベントは、そもそも乖離が発生します。 |
この記事に従って、インストールおよびアプリ内イベントの乖離を最小限に抑えます。 |
セルフ・アトリビューション |
Facebookは常にイベント成果を自社キャンペーンに紐づけますが、AppsFlyerはこれらのイベントを元々ユーザーを獲得したキャンペーンに紐づけます。 |
Facebookが誤ってセルフアトリビューションしたインストールとイベントは、AppsFlyerではアシストと計測されます。 |
ライフタイムの定義の違い | Facebook でのユーザーのライフタイムは最大で 28 日です。つまり、Facebookは広告クリック後28日以上経過した後に発生したイベントは表示しません。 AppsFlyerでのFacebookユーザーのライフタイムは最大180日です。 |
1か月以上前のFacebookキャンペーンからのユーザーの価値を分析する場合、AppsFlyerのデータを利用するとより広範囲での分析ができます。 |
マップされていないイベント | AppsFlyerはSDKから発生したイベントを取得しますが、それらはFacebookにマップされていないため、送信されません。 | ユーザーの価値を示すアプリ内イベントを全てFacebookとマップしてください(以下キャプチャを参照)。 |
収益が送信されない | AppsFlyerはSDKで発生したイベントから収益データを取得しますが、それらがFacebookに送信されていません。 | アプリ内イベント設定の [収益の送信] にチェックが入っていることを確認してください(以下のキャプチャのPurchaseイベントを参照)。 |
Facebookでイベント値が欠如 | AppsFlyerはイベントの紐づけの一環で、パラメータと値が正しい構造で設定されている場合、それらをFacebookに送信します。 | Facebookとイベント値を全てマップするために、AppsFlyerが推奨する構造に従って、SDKのアプリ内イベントを定義してください。 |
ユーザー獲得の管理画面にリエンゲージメント広告からの新規インストールが表示される?
リエンゲージメント広告により、ユーザーは既にインストール済みのアプリを再度起動します(リエンゲージメント)。また、AppsFlyerは、アプリが同じデバイス上で以前インストールされていたことを認識した場合、AppsFlyerはそのコンバージョンをリアトリビューション と呼びます。
もし、リエンゲージメント広告で、Facebookが新規ユーザーやアプリの初回インストール後のリアトリビューション期間を過ぎた後にアプリを初めてインストールしたユーザーをターゲットにした場合、これらのユーザーは、Facebookではリエンゲージメント広告に紐づきますが、AppsFlyerでは新規ユーザー獲得インストールと計測されます。
一方、元のインストールの後で、設定されたリアトリビューション期間以内に発生したインストールは、リアトリビューションとみなされ、AppsFlyerのリターゲティング画面に表示されますが、Facebookでは新規インストールと表示される可能性があります。
注意
Facebook広告では、リターゲティングキャンペーンのインストールすべてを同じ場所で表示します。一方、AppsFlyer管理画面では、インストール数はオーバービューページ(新規インストール)とリターゲティングページ(リアトリビューションとリエンゲージメント)に分割されています。
クロスデバイスアトリビューション
Facebookではクロスデバイスアトリビューションが計測されます。これにより、あるプラットフォーム(iOS/Android)のキャンペーンが、別のプラットフォームのインストールとして表示される事象が起こることがあります。
例
リンダは、Android携帯電話を使用して、Facebook上のGreatAppのモバイル広告をクリックしました。Facebookは、Androidの「Android 女性」というターゲットのキャンペーンにて、リンダのクリックを記録します。リンダは家のiPadでGreatAppをインストールすることにしました。初回起動時に、AppsFlyerはこのiOSインストールの起源をFacebookにサーバー経由で尋ね、Facebookは「Android 女性」のキャンペーンとデータを返します。
検証ルールとProtect360
AppsFlyerの検証ルールを使用すると、Facebook経由のインストールが拒否された場合、AppsFlyerとFacebookで計測結果が異なる可能性があります。このような場合、Facebookは自社にインストール成果を紐づけますが、AppsFlyerはこのインストール成果を拒否します。
同様に、AppsFlyerの不正防止ソリューションProtect360を使用すると、Facebookが自社にインストール成果を紐づける一方で、AppsFlyerはこれを拒否する場合があります。
例
GreatAppのユーザー獲得担当のジェフは、北米のスペイン語を話す人のみをターゲットにした「SPNA」というキャンペーンを作成します。ジェフは、この設定を検証するため、カナダとアメリカからのみのユーザーを承認する検証ルールを設定します。スペインからのFacebookユーザーがクリック後インストールすると、Facebookはインストールを計測しますが、AppsFlyerは検証ルールに基づいて、このユーザーの成果計測を拒否します。
Facebook連携に関するトラブルシューティング
基本的な連携が完了してもFacebookの成果がAppsFlyerに表示されない場合、まず最初に、連携が完了してからFacebook経由の新規インストールが発生しているかを確認してください。
既に新規インストールが計測できている場合、以下の主な原因を参照して問題を解決してください:
IDFAが収集されていない
SDK実装ガイドに記載されているように、IDFA収集を実行するには、AdSupport.framework をプロジェクトに追加する必要があります。大抵の場合はフィンガープリントにより計測はできますが、IDFAの収集はFacebookの成果測定において必須です。インストールのローデータレポートにてIDFA列でデータが取得できているかを確認してください。
Androidのインストールは、GAIDが収集されていなくてもFacebookで機能しますが、GAIDの収集を実装することを強く推奨します。
間違ったFacebook App ID
Facebook管理画面で、アプリIDが正しく、アプリストアの値と一致しているかを確認してください。
注 - Facebook's Graph APIを使ってFacebook App IDを確認することもできます。
Facebookのアプリステータス
成果測定が機能するためには、Facebook上でアプリが In development ではなく Liveと定義されている必要があります。
間違ったFacebookキャンペーンタイプ
Facebookアプリインストール
正しい設定 - 正しく計測されます。
間違った設定 - アトリビューションが機能しません。
Facebookに関するよくある質問
AppsFlyer管理画面にFacebookキャンペーンのクリックが表示されません
デフォルトでは、Facebookはコンバージョンとエンゲージメントデータのみを送信します。ただし、Facebookキャンペーンのクリック数、インプレッション数、コストデータも簡単に計測し始められます。
コストデータの同期を停止できますか?
Facebookとのコストデータの同期を停止するには、 FacebookアカウントのビジネスインテグレーションからAppsFlyerを削除します 。
AppsFlyerはキャンペーンレベルと広告グループレベルを表示できますか?
Facebookデータはリアルタイムで表示されますか?
いつAppsFlyerで新しいキャンペーンデータを確認できますか?
Facebookでの新しい広告、広告セット、キャンペーンのデータを表示するには、少なくとも一つのインストールが発生している必要があります。
例えば、クリックが100件発生しているにも関わらずインストールがまだ0件の広告は、AppsFlyerの管理画面には表示されずデータもありません。別の広告はクリック1件とインストール1件しかありませんが、AppsFlyerに表示されます。
Facebookからより多くのインストールを獲得するにはどうすればよいですか?
その方法についてはこちらをご覧ください。
代理店はFacebookローデータを取得できますか?
インストールとアプリ内イベントレポートにFacebookのローデータが表示されません
デフォルト設定ではFacebookはユーザーレベルデータの送信を許可していません。AppsFlyerからこのローデータを取得したい広告主は、高度なモバイルアプリ計測のためのFacebookのデータ利用規約に同意する必要があります。
広告主がFacebookのデータ利用規約に同意しても、データはすぐには表示されません。広告主が Facebookのデータ利用規約に同意した後、AppsFlyerにデータが表示されるためには、Facebook経由のインストールが最低1件計測される必要があります。Facebook広告アカウントへアクセスできる方が、次の手順を実行してください:
- AppsFlyerにてFacebookの設定画面を開きます。
- 利用規約 をクリックします。
- Facebookへ進み利用規約に同意します。
または、こちらより直接Facebookへ進んでください。
規約に同意後、Facebookのデータ使用規約に同意してから少なくとも一度インストールが計測されると、Facebookのローデータ履歴がAppsFlyerに表示されます。
AppsFlyerのパフォーマンスレポートにFacebook特有のカラムはありますか?
FacebookのFMPを使って、AppsFlyerでパフォーマンスを測定することはできますか?
FMP(Facebookマーケティングパートナー)で計測の設定をする詳細については、こちらをご覧ください。
次のような警告が表示されたらどうすればいいですか?
Facebookと異なるルックバック期間を設定するとどうなりますか?
AppsFlyerでこの期間を短くすると、AppsFlyer上のFacebookの成果数が減少します。一方で、AppsFlyer上でFacebookより長く設定しても成果数に影響はありません。なぜなら、Facebookルックバック期間後にインストールが発生しても、Facebookに成果として計測されないためです。
したがって、乖離を最小限に抑えるためには、AppsFlyer上のFacebookのルックバック期間をクリック後28日、表示後1日に設定することをお勧めします。
Facebook APIのパラメータは何ですか?
コンバージョンデータ | AppsFlyerのローデータ | |
---|---|---|
campaign | campaign | campaign_group_name |
campaign_id | Campaign ID | campaign_group_id |
adgroup | 広告 | adgroup_name |
adgroup_id | Ad ID | adgroup_id |
adset | アドセット | campaign_name |
adset_id | Adset ID | campaign_id |
ad_id | Ad ID | ad_id |
agency | パートナー | N/A |
is_fb | メディアソース | is_fb |
af_channel | Channel | publisher_platform |
Facebookのユーザーレベルのデータをどのくらいの期間保持しますか?
過去の集計データは変わりません。
これは全てのFacebookチャネル(Facebookアプリ、Instagram、メッセンジャー、AudienceNetwork)に該当します。
Facebookモバイルアプリのインストール広告でOneLinkを使用できますか?
Facebookでは、アプリ広告を掲載する際に、アプリのインストール、トラフィック、コンバージョンなど、さまざまな広告目標を選択できます。
トラフィックやコンバージョンなど、ほとんどの目的では、OneLinkの計測リンクやその他のサードパーティリンクを使用できます。ただし、アプリのインストールの目的の場合、Facebookは、ディープリンク用のFacebook App Linksのみを受け入れます。