TikTok for BusinessとAppsFlyerの乖離

概要:TikTok for Business とAppsFlyerのアトリビューションモデルの違いについて理解しましょう。

概要

モバイルユーザー獲得エコシステムの2大プレーヤーであるTikTok for BusinessとAppsFlyerは、それぞれ異なるアトリビューションモデルを使用しています。このため、TikTok for BusinessとAppsFlyerのダッシュボード間の数値に不一致が生じる可能性があります。これらの不一致を最小限に抑えるためにTikTok for Businessと密接に連携していますが、広告主は潜在的な原因を把握しておく必要があります。

アトリビューションモデルの違い

以下の表は、TikTok広告マネージャーとAppsFlyerダッシュボード間の不一致の可能性がある理由を説明します:

原因 TikTok広告マネージャー AppsFlyer

クリックスルー:ルックバック期間

デフォルトの期間は7日間です。しかし、AndroidアプリやTikTokのセルフアトリビューション(TikTokアドバンスSRN)に移行したアプリでは、異なる設定が可能です。

デフォルトの期間は7日間です。期間は1日から30日間の間で設定できます。必ずTikTokのアトリビューション期間と同じ期間を設定してください。

ビュースルー:ルックバック期間

デフォルトの期間は1日です。しかし、AndroidアプリやTikTokのセルフアトリビューション(TikTokアドバンスSRN)に移行したアプリでは、異なる設定が可能です。

デフォルトの期間は1日です。期間は1時間から48時間の間で設定できます。必ずTikTokのアトリビューション期間と同じ期間を設定してください。

マルチチャネルソースアトリビューション

TikTokは他のメディアソースとは無関係にインストールを自己アトリビューションします。

AppsFlyerはラストクリックアトリビューションを使用します(詳細:AppsFlyerの計測モデルについて)。

クロスデバイスアトリビューション

TikTokは、iOS、Android、デスクトップなど、異なるデバイスを使用してエンゲージメントとインストールの両方を行うユーザーを対象としています。

AppsFlyerは、エンゲージメントとインストールの両方を同一デバイスで実行したユーザーをアトリビューションします。

異なるタイムゾーン

TikTokのタイムゾーン(日付範囲の横に表示されます)は変更できません。広告アカウント作成時に設定されます。

AppsFlyerのデフォルトのアプリタイムゾーンはUTC+0です。TikTokイベントマネージャーに設定されたタイムゾーンに合わせるには、アプリ設定画面でアプリのタイムゾーンを変更してください。

iOSアトリビューション

iOSアプリに関しては、TikTok広告マネージャーにはSKANアトリビューションの結果のみが表示されます。

iOSアプリにおいて、AppsFlyerはSKANアトリビューションの結果を表示し、SRNおよびアドバンスSRNのAppsFlyerアトリビューション結果と重複排除されたSSOTデータを含めた情報を提供します。SKANデータのみが両プラットフォームで一致することが期待されます。 

アプリ内イベントのアトリビューション期間

各プラットフォームのアトリビューションは、インストール時からの期間に基づいて異なる場合があります。

1日目〜90日目

アトリビューションの矛盾はありません。両方のプラットフォームがアプリ内イベントをインストールに紐付けます。

91日目〜180日目

90日以降、アプリ内イベントはTikTokでサポートされなくなります。

AppsFlyerは、アプリ内イベントをインストールに紐付けます。

180日目以降

TikTokのデータ保持ポリシーにより、アプリ内イベントはオーガニックとして紐付けられます。

インストールの違い

場合によっては、TikTok for BusinessにはAppsFlyerが拒否したインストールや、新規インストールとしてカウントされないインストールが含まれることがあります。 

リエンゲージメントキャンペーン

リエンゲージメントキャンペーンは、ユーザーが既にインストール済みのアプリを起動させるための施策です(リエンゲージメントCV)。AppsFlyerが同じデバイスでのアプリの以前のインストールを認識した場合、そのコンバージョンはリアトリビューションCVと計上されます。

ユーザーがTikTok for Businessのリエンゲージメントキャンペーンを通じて初めてアプリをインストールした場合、そのユーザーはAppsFlyerに新規ユーザー獲得インストールとして記録されます。さらに、ユーザーが初期インストール後の指定されたリアトリビューション期間後にアプリをインストールした場合も、新規獲得と見なされます。

一方で、最初のインストールに続く設定されたリアトリビューション期間内で発生するインストールは、リアトリビューションとして分類されます。これらのインストールは、AppsFlyerのリターゲティングページに表示されます。ただし、TikTok for Businessでは新規インストールと見なされる可能性があります。

検証ルールとProtect360を使用する際のインストール拒否

検証ルールProtect360は、特定のインストールを拒否(ブロック)することで保護を提供するAppsFlyerの機能です。これらの機能を使用すると、TikTok for Business発の拒否されたインストールはAppsFlyerによってブロックされ、TikTok for Businessはそれらのインストールを自己報告します。 

 例

GreatAppのユーザー獲得マネージャーであるJeffは、北アメリカのスペイン語話者のみをターゲットにしたSPNAというキャンペーンを作成しました。これを検証するために、Jeffはカナダとアメリカのユーザーのみを受け入れる検証ルールを設定します。
スペインのTikTok for Businessユーザーがアプリをクリックしてインストールした場合、TikTok for Businessはそのインストールを自己報告しますが、AppsFlyerは検証ルールを通過しないインストールを拒否します。

乖離を減少させる

アトリビューションモデルの違いがあるものの、場合によっては不一致を軽減できることがあります。

クリックスルーとビュースルー計測

AppsFlyerは、クリックスルーおよびビュースルーのアトリビューションをサポートしています。TikTok for BusinessとAppsFlyer間での不一致を減らすためには、クリックスルーとビュースルーの両方のルックバック期間がTikTok for Businessで定義されたものと一致していることを確認してください。

TikTok for Businessのクリックスルールックバック期間がアプリcom.greatappに対してAppsFlyerでは1日に設定されている一方、TikTok for Businessではデフォルト値である7日に設定されていると仮定します。TikTokでGreatappの広告をクリックしたユーザーが2〜7日後に初めてアプリを起動すると、AppsFlyerではオーガニックユーザーとしてカウントされ、一方でTikTok for Businessではそのユーザーを自己レポート(アトリビューション)します。

アプリ内イベントのアトリビューション

プラットフォーム間の違いは、インストール後のイベント(例:アプリ内購入)がTikTok for BusinessおよびAppsFlyerに表示される場面でも現れる場合があります。以下の表では、これらの違いの最も一般的な理由と、その不一致を減少させる方法についてアドバイスします:

原因 説明 AppsFlyerのヒント

セルフアトリビューション

TikTokはインストールとイベントを常に自社のキャンペーンにアトリビューションさせるのに対し、AppsFlyerはそれらを獲得ソースへアトリビューションします。このようなイベントは、AppsFlyer内ではTikTokによるアシストとして表示されます。

 

TikTokのアトリビューションコンバージョンのローデータと、TikTokがアシストしたローデータを合わせて処理します。

マッピングされていないイベント

AppsFlyerはSDK由来のイベントを取得しますが、それらがTikTok for Businessにマッピングされていないため、送信されません。

ユーザーの質を示すアプリ内イベントを必ずTikTok for Businessにマッピングしてください。
未送信の収益 AppsFlyerはSDK由来のイベントから収益を得ますが、それらがTikTok for Businessへ送信されていません。

TikTok for Businessアプリ内イベントをマッピングする際に必ず収益を含めてください。

TikTok for Businessでイベント値が欠けている場合 AppsFlyerは、正しい構造があれば、イベントマッピングの一環としてパラメーターと値をTikTok for Businessに送信します。 AppsFlyerの推奨構造に基づいてSDKのアプリ内イベントを構築し、TikTok for Businessでイベントの値を完全にマッピングしてください。