# アトリビューションサポート

> Understand how user acquisition attribution helps you track which ad networks and campaigns bring valuable players.

ゲーム業界の競争はますます激しくなり、オーガニックグロースによってユーザーを獲得することはさらに困難になっています。現在、成功しているすべてのゲームスタジオは、他のゲームまたはプラットフォームに広告を配信し、望ましいオーディエンスにリーチして、オーディエンスを自社ゲームにリダイレクトしています。これはユーザー獲得と呼ばれます。

広告は、Unity Ads などの広告ネットワークによって配信されます。Unity でユーザーの獲得を開始するには、詳細について [こちら](https://unity.com/products/unity-ads/user-acquisition) を参照してください。

## ユーザー獲得データを利用してゲームを成長させる方法##grow-your-game-using-user-aquisition-data

ユーザー獲得データを分析することで、どの広告ネットワークとキャンペーンによって、最も価値の高いユーザーがゲームにもたらされたかがすぐにわかります。これにより、効果的なネットワークのみに予算を集中させ、時間をかけて価値の高いユーザーのみをゲームに集めて、広告を絞り込むことができます。

各ユーザーに表示される広告の内容に応じて、ゲームの初期コンテンツをパーソナライズすることもできます。例えば、ロールプレイングゲーム (RPG) では、戦士が表示される広告をユーザーがクリックしたことがわかっている場合、そのプレイヤーはチュートリアルでデフォルトの画像ではなく同じ戦士をプレイできます。

## ユーザー獲得データを追跡する方法

ゲームをインストールするユーザーは複数のネットワークやキャンペーンから訪れる可能性があるため、通常は、モバイル計測パートナー (MMP) を使用して、ゲームをインストールする個々のプレイヤーがどのネットワークやキャンペーンから訪れたかを識別します。これはアトリビューションと呼ばれます。アプリケーションのインストールを特定のネットワークとキャンペーンの結果としてアトリビュートします。最もよく使用される MMP は、AppsFlyer、Adjust、Singular、Kochava、Tenjin です。

クライアントサイドで MMP によって提供されるデータを追跡できます。例えば、広告ネットワーク、ユーザーをゲームに取り込んだ特定の広告、そのユーザーの獲得にかかった費用です (ただし、これらに限定されません)。このすべてのデータは、標準イベント acquisitionSource に記録できます。

## acquisitionSource イベント

UGS Analytics は、ユーザーが獲得されたチャンネルに関する情報を記録するために `acquisitionSource` と呼ばれる標準イベントを提供します。このイベントには、アトリビューションプロバイダーの SDK から得られる情報が設定されます。インストールの追跡に関するガイダンスを、例えば Facebook などから、MMP そのもののガイダンスにあるとおりにそのまま記載してください。

以下の表に、アトリビューションイベントパラメーターを示します。

| パラメーター                  | 目的/説明                                                                                                                                          | データ型     | 必須  |
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -------- | --- |
| acquisitionChannel      | トラフィックをゲームに誘導するために使用された特定のマーケティングプロバイダーの名前。獲得ネットワーク名の使用を推奨します。これが、獲得チャンネルでフィルタリングまたはグループ化したときに表示される名前になるためです。深く分析するためには、ネットワーク名とキャンペーン名を使用します。 | `string` | はい  |
| acquisitionCampaignId   | 獲得キャンペーンの ID。                                                                                                                                  | `string` | はい  |
| acquisitionCreativeId   | 獲得キャンペーンのクリエイティブ ID。                                                                                                                           | `string` | はい  |
| acquisitionCost         | インストールのコスト (例えば 2.36)。                                                                                                                         | `float`  | いいえ |
| acquisitionCostCurrency | インストールコストの通貨 (例えば USD)。                                                                                                                        | `string` | いいえ |
| acquisitionCampaignName | 獲得キャンペーン名 (例えば Interstitial:Halloween21)。                                                                                                      | `string` | はい  |
| acquisitionNetwork      | 獲得キャンペーンネットワーク (例えば、Ironsource、Vungle または Unity)。                                                                                              | `string` | いいえ |
| acquisitionProvider     | 使用中のアトリビューションプロバイダーの名前 (例えば、Adjust、AppsFlyer、Singular)。                                                                                        | `string` | はい  |
| acquisitionCampaignType | 獲得キャンペーンタイプ (例えば CPI)。                                                                                                                         | `string` | いいえ |

使用するプロバイダーによって、特定のユーザーのアトリビューションについて提供する情報は変わります。イベントのすべてのフィールドに設定できる十分な情報がないかもしれません。それらは空白にしておくことも、独自のデータを設定することもできます。

## Adjust SDK インテグレーションガイド

コールバックを登録すると、Adjust SDK がユーザーのコンバージョン値を更新し、データを Analytics に送信するたびに通知されます (送信には以下のマッピング例に従ってアトリビューション変数の値が使用されます)。Adjust SDK インテグレーションの詳細については、[https://github.com/adjust/unity\_sdk#attribution-callback](https://github.com/adjust/unity_sdk#attribution-callback) を参照してください。

| イベントパラメーター (\* は必須)       | Adjust SDK の値 (AdjustAttribution アトリビューション)                        |
| ------------------------- | ------------------------------------------------------------------ |
| acquisitionChannel\*      | ユースケースによって異なります。デフォルトでは獲得ネットワーク名の使用を推奨します。例: `attribution.network` |
| acquisitionCampaignId\*   | `attribution.campaign`                                             |
| acquisitionCreativeId\*   | `attribution.creative`                                             |
| acquisitionCost\*         | `attribution.costAmount`                                           |
| acquisitionCostCurrency   | `attribution.costCurrency`                                         |
| acquisitionCampaignName\* | `attribution.campaign`                                             |
| acquisitionNetwork        | `attribution.network`                                              |
| acquisitionProvider\*     | `Adjust`                                                           |
| acquisitionCampaignType   | `attribution.costType`                                             |

ノート: これはガイドです。正確にはプロバイダーに確認することを推奨します。

## Appsflyer SDK インテグレーションガイド

Appsflyer SDK では、インストールごとのリアルタイムユーザーアトリビューションデータにアクセスする機能が提供されます。コールバックの登録方法については、[こちら](https://support.appsflyer.com/hc/en-us/articles/4412863162897#obtain-appsflyer-conversion-data) のインテグレーションの詳細を参照してください。コールバックを登録すると、Appsflyer SDK がユーザーのコンバージョン値を更新し、データを Analytics に送信するたびに通知されます (送信には以下のマッピング例に従ってアトリビューションペイロードの値が使用されます)。Appsflyer ペイロードの詳細については、[こちら](https://support.appsflyer.com/hc/en-us/articles/360000726098-Conversion-Data-Scenarios#Introduction) を参照してください。

以下のフィールドは推奨ガイドラインであり、完全に網羅したものではありません。

| イベントパラメーター (\* は必須)       | Appsflyer コンバージョンデータペイロードフィールド                                     |
| ------------------------- | ------------------------------------------------------------------ |
| acquisitionChannel\*      | ユースケースによって異なります。デフォルトでは獲得ネットワーク名の使用を推奨します。例: `attribution.network` |
| acquisitionCampaignId\*   | `campaign_id`                                                      |
| acquisitionCreativeId\*   | `adgroup_id`                                                       |
| acquisitionCreativeId\*   | `af_cpi`                                                           |
| acquisitionCostCurrency   | プロバイダーに確認                                                          |
| acquisitionCampaignName\* | `campaign`                                                         |
| acquisitionNetwork        | `media_source`                                                     |
| acquisitionProvider\*     | `Appsflyer`                                                        |
| acquisitionCampaignType   | プロバイダーに確認                                                          |

ノート: これはガイドです。正確にはプロバイダーに確認することを推奨します。

## SDK での実装

SDK バージョン 4.0.0-pre1 では、acquisitionSource イベントをトリガーする `AcquisitionSource` というメソッドが提供されます。以下に示すのは、SDK によって提供されるオブジェクトパラメーターです。

```cs
public class AcquisitionSourceParameters
     {
         // Required
         public string channel;
         public string campaignId;
         public string creativeId;
         public string campaignName;
         public string provider;
         // Optional
         public float? cost;
         public string costCurrency;
         public string network;
         public string campaignType;
     }
```

これは、パラメーターを作成し、ゲーム内でアトリビューションイベントをトリガーする例です。

```cs
var acquisitionSourceParameters = new AcquisitionSourceParameters()
{
     channel = "Unity",
     campaignId = "gwOfhjSjyiNfGdGlUjLK",
     creativeId = "creative_name",
     campaignName = "Game Name OS Country",
     provider = "AppsFlyer",
     campaignType = "CPI",
     cost = 12,
     costCurrency = "EUR",
     network = "Unity",
};
AnalyticsService.Instance.AcquisitionSource(acquisitionSourceParameters);
```

## REST API での実装

標準イベント "userAcquisition" を送信して、Acquisition Source (獲得元) ディメンション値を設定します。

イベントペイロードは以下のとおりです。

```cs
{
    "eventTimestamp": {{eventDate}},
    "eventVersion": 1,
    "userID": {{userId}},
    "eventName": "acquisitionSource",
    "eventUUID": {{eventUUID}},
    "eventParams": {
      "clientVersion":"0.1",
      "platform":"Android",
      "userCountry":"DK",
      "acquisitionChannel":"Unity",
      "acquisitionCampaignId":"gwOfhjSjyiNfGdGlUjLK",
      "acquisitionCampaignType":"CPI",
      "acquisitionCampaignName":"Game Name OS Country",
      "acquisitionCreativeId":"creative_name",
      "acquisitionCost":"12",
      "acquisitionCostCurrency":"EUR",
      "acquisitionNetwork":"Unity",
      "acquisitionProvider":"AppsFlyer"
    }
  }
```

パラメーター `acquisitionChannel` によって Acquisition Channel (獲得チャンネル) ディメンションに値が設定されますが、これは Analytics ツール全体のフィルターとグループ化のオプションに含まれています。

### ダッシュボード /Dashboard

ダッシュボードの左側の User Acquisition (ユーザー獲得) をクリックして、ゲーム内での各獲得チャンネルの実績 (最も多くのプレイヤーを獲得しているチャンネル、最も貴重なプレイヤーを獲得しているチャンネル、最も多くの収益をもたらしているチャンネル) を把握します。以下のディメンションによってフィルター処理できます。Country (国)、Platform (プラットフォーム)、Version (バージョン)、Audience (オーディエンス)、および Acquisition (獲得) です。また、獲得チャンネルごとの 1 日ごとの新規ユーザー、獲得チャンネルごとの DAU、獲得チャンネルごとの 1 日ごとの収益、獲得チャンネルごとのリテンションも確認できます。


**Frame:**
![](/api/media?file=/analytics/media/images/attribution-new-user.png)

獲得によってフィルター処理された、DAU (1 日あたりのアクティブユーザー) および MAU (月間アクティブユーザー) を確認します。


**Frame:**
![](/api/media?file=/analytics/media/images/attribution-dau.png)


**Frame:**
![](/api/media?file=/analytics/media/images/attribution-mau.png)

獲得によってフィルター処理された、DAU あたりの平均収益および 1 日ごとの収益を確認します。


**Frame:**
![](/api/media?file=/analytics/media/images/attribution-average-revenue-per-dau.png)


**Frame:**
![](/api/media?file=/analytics/media/images/attribution-daily-revenue.png)

### ゲームパフォーマンス

獲得フィルターを使用し、昨日、7 日間、30 日間の 1 日のアクティブユーザーに基づいて、ゲームの実績を確認します。すべてのダッシュボード (収益、リテンション、ゲームパフォーマンス、ユーザー獲得) は、獲得元によってフィルター処理できます。

データエクスプローラーを使用して、獲得によって指標をフィルター処理します。


**Frame:**
![](/api/media?file=/analytics/media/images/attribution6.png)
