[ベータ] 自動更新サブスクリプションの計測 (ARS)

beta_feature.png

概要:自動更新のサブスクリプション (略:ARS) からの収益を自動的に計測して、サブスクライブユーザーのライフサイクルの全体像と正確なROAS計測を取得します。

ARSの概要

自動更新サブスクリプション (ARS) は、アプリで定期的に繰り返し発生するイベントです。サブスクリプションは、ユーザーがアップグレード、ダウングレード、またはキャンセルを選択するまで、期間の終了時に自動的に更新されます。アップグレード、ダウングレード、またはキャンセルのたびに、収益が変わります。

AppsFlyerのARS計測ソリューションは、アプリ内外で発生するサブスクリプション関連のイベントを自動的に検証および記録し、それらをアトリビューションします。

サブスクリプション関連のイベントは、次から発生します:

  • AppsFlyer ARS用 Android および iOS用のSDKコネクタ
  • App Store および Google Play (RTDN) サーバー通知が AppsFlyer に送信されます。

ARS データは、AppsFlyer ダッシュボードとレポートから取得できます。

注意事項

  • ARS計測ソリューションを使用する場合は、購入確認の検証を使用してサブスクリプションをログに記録しないでください。そうでないと、収益が重複してレポート・計測されます。
  • ARSイベントは is_receipt_validated フラグは含まれません。

AppsFlyer ARSソリューションのセットアップ

作業範囲
作業担当者 タスク
マーケティング担当者
  • Android用のARSセットアップを構成します。
  • iOS用のARSセットアップを構成します。
Androidディベロッパー

AppsFlyer Android ARS 購入 SDK コネクタを連携します。

推奨: サブスクライバーベースをより迅速に識別するには、ARS購入SDKコネクタを使用してアプリバージョンをリリースする前に、サーバー通知を設定してください。

iOSデベロッパー

AppsFlyer iOS ARS購入SDKコネクタを連携します。

推奨: サブスクライバーベースをより迅速に識別するには、ARS購入SDKコネクタを使用してアプリバージョンをリリースする前に、サーバー通知を設定してください。

Android ARSを設定する

はじめる前に

  • ARSのセットアップは、App Store Connect, Google Cloud Platform, および AppsFlyer管理画面で設定される手順で構成されます。
    セットアップ中は、App Store Connect, Google Cloud Platform, AppsFlyerのタブを開いたままにしてください。
  • AppsFlyer管理画面でのセットアップには、管理者(アドミン)権限が必要です。

admin.pngARSを設定する:

  1. AppsFlyerで、 連携 > サブスクリプション計測に移動します。
    ARS収益レポート画面が開きます。
  2. GoogleからARSデータを受信する方法を以下のいずれかから選択してください:
    • AppsFlyerがGoogleから直接RTDNメッセージを取得できるようにします。
      1. AppsFlyerトピックをコピーします。
      2. Google Playのコンソールで、アプリを選択します。ダッシュボードが開きます。
      3. マネタイゼーション設定に移動し、Google Playの支払い情報 セクションの トピック名 項目に、サブステップ1 で記録した AppsFlyerトピックを貼り付けます。
      4. 保存 をクリックしてください。
    • RTDNメッセージを AppsFlyerに転送します。
      1. AppsFlyerトピックをコピーします。
      2. Google Cloud Platform の Pub/SubTopic セクションに移動し、サブスクリプション専用の Pub/Sub topic があることを確認します。
      3. Google Cloud Platform の Pub/Sub で、サブスクリプション セクションに移動し、サブスクリプションの作成 をクリックします。
      4. サブスクリプション ID(名前)を入力します。
      5. ドロップダウンから関連するサブスクリプションのパブ/サブスクライブのトピックを選択します。
      6. 配信の種類 で、プッシュ を選択します。
      7. サブステップ1 で記録したエンドポイント URL (AppsFlyer トピック) を入力します。
      8. 有効期限 で、有効期限なし を選択します。
      9. 他すべての項目はそのままにしておきます。
      10. 保存 をクリックしてください。
      11. Google Cloud Platform の パブ/サブスクライブ で、サブスクリプション セクションに移動し、トピック名をコピーします。
      12. Google Play コンソールで マネタイゼーション設定に移動し、Google Play のお支払い情報 セクションの [トピック名] フィールドに、サブ手順 11 でコピーした トピック名 を貼り付けます。
      13. 保存 をクリックしてください。
  3. Google Cloud Platform で、サービスアカウント に移動し、サービスアカウントの作成 をクリックします。
  4. サービスアカウント名を入力します。
  5. 作成して続行をクリックします。
  6. Role は、Pub/sub subscribe を選択します。
  7. 続行 > 完了 をクリックします。
  8. Google Cloud Platform で、サービスアカウント に移動し、関連するサービスアカウントを見つけて、アクション > キーの管理 をクリックします。
  9. ADD KEY > 新しいキーの作成 をクリックします。
  10. キーの種類で、 JSON を選択します。
  11. 作成をクリックしてください。Googleサービスアカウントの秘密キー JSON がダウンロードされます。
  12. AppsFlyer ARS 収益レポートページで、Google サービスアカウントの秘密キー JSON をアップロードします。
  13. 保存 をクリックしてください。
  14. Google Play コンソールで、Seup > API access に移動します。
  15. Service accountsリストで、関連するサービスアカウントを見つけ、Grant permissions をクリックします。
  16. Premissions セクションで、Account permissions に移動し、以下の両方を選択します:
    • 財務データ、注文、およびキャンセル調査の回答を表示します。
    • 注文とサブスクリプションを管理します。
  17. Invite user > Send invite をクリックします。
  18. 社内のAndroid開発者にAppsFlyerのAndroid ARS購入SDKコネクタを連携するように依頼してください。

注意:サービスアカウント認証情報と権限を設定してから、最大24時間時間を要する場合があります。これにより、Google RTDNに接続しようとしたときにエラーが発生することがあります。

iOS ARSを設定する

はじめる前に

  • ARSのセットアップは、App Store ConnectとAppsFlyer管理画面で実行される手順で構成されます。 セットアップ中は、App Store Connect と AppsFlyer の両方のタブを開いたままにします。
  • AppsFlyer管理画面でのセットアップには、管理者(アドミン)権限が必要です。

admin.pngARSを設定するには:

  1. AppsFlyerで、 連携 > サブスクリプション計測に移動します。
    ARS収益レポートページが開きます。
  2. App Store Connectの共有シークレットキーを入力してください。
  3. AppsFlyerエンドポイントをコピーし、App Store Connect構成に入力します。
  4. [オプション] サーバー通知をエンドポイントに送信し、エンドポイントを入力する場合に選択します。
  5. 保存 をクリックしてください。
  6. App Store Connectにログインし、アプリを選択します。
  7. App Informationセクションで、App Store Server通知まで下にスクロールし、Production Server URL 項目に、ステップ3 でコピーした AppsFlyer エンドポイントを貼り付けます。
  8. Saveをクリックしてください。
  9. iOS開発者に、AppsFlyer iOS ARS購入SDKコネクタ連携するように指示します。

注意

  • Appleは、サーバー通知を 1つのエンドポイントにのみ送信できます。AppsFlyerがすべての着信通知をエンドポイントに転送する場合は、CSMにエンドポイントURLをご連絡ください。
    (URLは、有効なHTTPまたはHTTPSエンドポイントである必要があります。推奨:HTTPS)
  • バックエンドから通知エンドポイントの URLに直接 Appleサーバー通知を送信できますが、リクエストは App Store から受信したとおりにする必要があります。

サブスクリプション関連のイベントとパラメーター

次のセクションでは、AppsFlyerが計測するサブスクリプション関連のイベントと、各イベントに記録されるパラメーターを示します。

注意: すべてのパラメータは、特に明記されていない限り、AndroidとiOSに適用されます

トライアル開始(af_ars_trial_started)

説明

サブスクリプションユーザーがトライアル期間を開始したときに記録されます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type

トライアルキャンセル (af_ars_trial_cancelled)

説明

トライアル期間中にサブスクライブユーザーがサブスクリプションの自動更新をキャンセルしたときに記録されます。
ユーザーがトライアル期間内に自動更新を復元しない場合、解約イベントが続きます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type

トライアル解約 (af_ars_trial_churned)

説明

試用期間後にサブスクライブユーザーが解約したときに記録されます。これは、自動更新のキャンセルとトライアル期間の満了後に発生します。また、課金や技術的な問題に続いて、更新によって解約が発生することもあります。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type
  • af_churn_reason

トライアル後のコンバージョン (af_ars_trial_converted)

説明

トライアル期間の後、完全価格の更新が開始されたときに記録されます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type
  • af_discount_id
  • af_discount_type
  • af_revenue_usd
  • af_revenue
  • af_revenue_usd
  • net_revenue
  • net_revenue_factors

サブスクリプション開始(af_ars_subscription_started)

説明

割引または完全価格のサブスクリプションが開始されたときに記録されます。

注意

  • 新しいサブスクリプションは、SDKコネクタを介してのみ記録できます。
  • iOSの場合、サブスクライブユーザーが既に所有しているサブスクリプションを再購入すると、SDKコネクタはレシートの検証が成功したことをアプリにレポートしますが、AppsFlyerに新しいトランザクションは記録されません。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type
  • af_discount_id
  • af_discount_type
  • af_revenue_usd
  • af_revenue
  • af_revenue_usd
  • net_revenue
  • net_revenue_factors

サブスクリプション解約 (af_ars_subscription_cancelled)

説明

請求期間の途中で自動更新サブスクリプションがキャンセルされたときに記録されます。ユーザーが同じ請求期間内に自動更新を復元しない場合、解約イベントが続きます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type

サブスクリプション一時停止 (af_ars_subscription_paused) - Androidのみ

説明

ユーザーがアクティブなサブスクリプションを一時停止したときに記録されます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type

サブスクリプション再開 (af_ars_subscription_resumed)

説明

解約または返金されたサブスクリプションの後に、完全価格のサブスクリプションが再開されたときに記録されます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type
  • af_discount_id
  • af_discount_type
  • af_reason
  • af_revenue
  • af_revenue_usd
  • net_revenue
  • net_revenue_factors

サブスクリプション解約 (af_ars_subscription_churned)

説明

サブスクライブユーザーが解約したときに記録されます。これは通常、自動更新のキャンセルまたは請求期間の満了後に発生します。また、課金や技術的な問題に続いて、更新によって解約が発生することもあります。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type
  • af_churn_reason

サブスクリプションの払い戻し (af_ars_subscription_refunded)

説明

加入者が払い戻しを受けたときに記録されます。

注意: このイベントは通常、マイナス値と共に生成されます。どのトランザクションが返金されたかを検出できない場合、または返金の詳細が通知に含まれていない場合、返金イベントには何の値も表示されません。

パラメーター 

  • app_id
  • customer_user_id
  • af_cancellation_reason
  • af_subscription_ownership_type
  • af_discount_id
  • af_discount_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_refunded_transaction_ids
  • af_revenue_usd
  • af_revenue
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_store
  • af_environment
  • af_period_type
  • af_revenue_usd
  • net_revenue
  • net_revenue_factors
  • net_revenue_usd

サブスクリプション請求の猶予 (af_ars_subscription_billing_grace)

説明

請求の問題が原因でサブスクリプションの更新に失敗し、サブスクライブユーザーが請求猶予期間に入ったときに記録されます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type

サブスクリプション更新 (af_ars_subscription_renewed)

説明

自動更新サブスクリプションがいつ行われたかを記録します。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type
  • af_discount_id
  • af_discount_type
  • af_revenue_usd
  • af_revenue
  • af_revenue_usd
  • net_revenue
  • net_revenue_factors

サブスクリプション変更 (af_ars_subscription_xgraded)

説明

サブスクライブユーザーが別のサービスにアップグレード、ダウングレード、またはプラン変更したときに記録されます。

パラメーター 

  • app_id
  • customer_user_id
  • af_currency
  • af_expires_date_ms
  • af_subscription_ownership_type
  • af_original_transaction_id
  • af_order_id
  • af_purchase_token
  • af_transaction_id
  • af_product_id
  • android_id
  • idfa
  • ip
  • appsflyer_id
  • af_purchase_date_ms
  • af_store
  • af_environment
  • af_period_type
  • af_discount_id
  • af_discount_type
  • af_revenue_usd
  • af_revenue
  • af_revenue_usd
  • net_revenue
  • net_revenue_factors

イベントパラメータ辞書

パラメーター 備考
app_id

アプリ ID

customer_user_id

広告主からレポートされた最新の顧客ユーザーID

af_cancellation_reason
  • ユーザーが払い戻しを受けた理由:
    • 1: アプリに関する問題
    • 0: その他の理由
  • iOSのみ
af_churn_reason

ユーザーが解約した理由
可能な値:

  • iOS
    • cancel_intent(意図的な解約)
    • billing_issue(請求問題)
    • cost_related(コスト問題)
    • product_unavailable(サービス利用不可)
    • unknown_reason(不明)
  • Android
    • I don't use this service enough(このサービスを利用していません)
    • Technical issues(テクニカル問題)
    • Cost-related reasons(コスト問題)
    • I found a better app(他に良いアプリを見つけた)
    • その他
country_code

国コード

af_currency

トランザクションの現地通貨

af_expires_date_ms

現在のサブスクリプション請求サイクルの有効期限

af_subscription_ownership_type

FAMILY_SHARED:ユーザーがファミリー共有を介してアクセスできることを意味します。
PURCHASED:有料ユーザーが購入を行ったことを意味します。

af_discount_id

最初の購入時にユーザーに提示されたオファー ID

af_original_transaction_id
  • 元のトランザクション ID
  • iOSのみ
af_order_id
  • トランザクションの注文 ID
  • Androidのみ
af_purchase_token
  • トランザクションの購入トークン
  • Androidのみ
af_transaction_id
  • トランザクションID
  • iOSのみ
af_refunded_transaction_ids 返金されたすべてのトランザクションの配列(iOSのみ)
af_revenue_usd

=USDでレポートされた総収益 - 最新の既知の製品価格

af_revenue

最新の既知の製品価格に基づいて現地通貨で報告された総収益

af_product_id

サブスクリプションのプロダクトID

advertiser_id

広告ID

idfa

iOS端末識別子

ip

IPアドレス

appsflyer_id

AppsFlyerユーザーID

purchase_date_ms

レポートされたサービスIDアプリ内イベントの購入日

af_store

サブスクリプションサービスの購入元であるアプリストア(例:Google Play / App Store)

af_environment

データの受信元の環境(実稼働環境またはサンドボックス)

af_period_type

サブスクリプション期間の種類
例: トライアル、イントロ、通常など

af_revenue_usd
  • 購入されたサービスから生成されたストアが受け取るコミッションの割合(%)
  • 10進数で表示されます。
net_revenue

すべての要因分析された理由に基づいて計算された純収益
net_revenue_factors を参照してください。

net_revenue_factors
  • レポートされた net_revenue の額を生成するすべての因数分解された理由を表す配列
  • 値の例: store_commission
custom_data
  • ARSのコンテキストでは、このパラメーターにはすべてのCUIDを持つ af_cuids 配列が含まれます。
  • CUIDの配列は、端末IDに関係なく表示されるため、同じCUIDを複数の端末IDに対して表示できます。
パラメーター

追加情報

サンドボックスによるARSのテスト

サンドボックス環境でのARS連携を検証し、次のことを確認できます:

  • ARS SDKコネクタは適切に連携されていること
  • ARSサーバー通知が正しく設定されていること

注意事項:

サンドボックス環境:

  • 最初の購入イベントのみが、ARS SDKコネクタによってイベントを生成します。
    このイベントは af_ars_sandbox_sdk と呼ばれ、次のものが含まれます:
    • 収益額:0
    • 購入したサービスの収益額を含む af_sandbox_revenue パラメーター
  • 他のすべての購入イベントは削除されるため、ARS SDKコネクタはイベントを生成しません。
  • 受信サーバー通知は、ARS SDKコネクタが最初に元のトランザクションを記録する場合にのみ処理されます。この場合、 af_ars_sandbox_s2s というイベントが生成されます。
  • ARS SDKコネクタが最初に元のトランザクションを記録しなかったサーバー通知に対してイベントは生成されません。

特性と制限

特性と制限
特性 備考
Google課金ライブラリ V4 & V5 サポートされていません
Apple 通知 V2 サポートされていません
総収益(グロス) サポート対象
純収益(ネット) サポートされていません
新しいサブスクリプション AppsFlyer SDK経由でのみ記録
価格変更 ARSが新しいサービス料金を含むSDK発信の通知を受信しない場合、ARSは引き続き以前のサービス料金を収益としてレポートします。
ARS購入SDKから新サービス料金を受け取ると、新しい料金が記録されます。