フローを既存のペイウォールと並行して段階的にロールアウトする
収益を生み出しているライブのペイウォールがある場合、全員を切り替える前にオーディエンスの一部で新しいフローをテストしたいことがあるでしょう。
フローとペイウォールはコンテンツタイプが異なるため、それぞれ専用のプレースメントタイプに属します — フロープレースメントとペイウォールプレースメントがトラフィックを共有することはありません。
つまり、Adapty のネイティブ A/B テストは両者を橋渡しできません。通常の A/B テストは単一プレースメント上のバリアントのみを比較し、クロスプレースメント A/B テストはペイウォールプレースメント間でのみ機能します。新しいフローと既存のペイウォールを比較するのは、ネイティブテストではなくコホート比較になります。
このガイドでは、その比較を段階的なロールアウトとして実施する方法を説明します。フローとペイウォールの間でトラフィックを自分で分割し、時間とともにフローのシェアを拡大していきます。
ロールアウトのセットアップ
- フローのビルドとプレビュー: 新しいフローを作成し、アプリに組み込む前にデバイスでプレビューします。完全な移行手順については、フローへの移行を参照してください。
- 専用フロープレースメントの作成: プレースメントは1つのコンテンツタイプのみを提供するため、フロー用に新しいプレースメントを作成する必要があります — 既存のペイウォールプレースメント ID は再利用できません。ペイウォールプレースメントはそのまま稼働させておきます。
- 自分側でトラフィックを分割する: リモートコンフィグまたは機能フラグツールを使って、ユーザーごとにアプリが
getFlowに渡すプレースメント ID を決定します — 新しいフロープレースメントか、既存のペイウォールプレースメントかを選びます。
Firebase Remote Config はこれを行う一般的な方法の1つです — パラメーター(例: flow_rollout_percentage)を追加し、アプリ内で読み取ってプレースメントを選択します。これは Adapty の機能ではありません。フローとペイウォールのコンテンツ自体を設定する Adapty リモートコンフィグとは別に、自分で設定するツールです。
- ユーザーを永続的に振り分ける: ユーザー ID のハッシュなどを使って各ユーザーを一度だけバケットに割り当て、ロールアウト率を変更してもそのユーザーは常に同じオプション(フローまたはペイウォール)を見続けるようにします。そうしないと、セッションごとに切り替わってしまう可能性があります。
- 段階的にパーセンテージを上げる: まず小さく(例: 10%)から始め、フローが期待どおりに機能していることを確認しながら、25%、50%、100% と段階的に引き上げます。
結果の比較
ネイティブ A/B テストのように Adapty がランダムに割り当てて再バランスするのではなく、各ユーザーをコホート(フローまたはペイウォール)に手動で割り当てるため、2つのプレースメントをテストバリアントではなく別々のコホートとして扱ってください。各プレースメントは独自の指標をトラッキングするため、アナリティクスをプレースメントでフィルタリングして各コホートの数値を確認します。
2つのコホート間でコンバージョン率を比較してください(生の件数ではなく)。ロールアウト率を上げると、フローコホートが増加してペイウォールコホートが縮小するため、絶対数は比較できなくなりますが、コンバージョン率は引き続き比較可能です。
完全に切り替えた後
すべてのトラフィックがフローに移行したら、古いペイウォールプレースメントを廃止します。その後は、フロープレースメント上でフローバリアントに対してネイティブの通常 A/B テストを使い、引き続き最適化を進めます — 通常テストとクロスプレースメントテストの違いについては、A/B テストの種類を参照してください。