カスタマーが支払いに関する問題をアプリ内で直接解決できるようになりました。詳しくはこちら

自動更新サブスクリプション

アプリ内でデジタルサブスクリプションのシームレスな体験を提供しましょう。StoreKit APIを活用すると、すべてのAppleプラットフォーム、またApp Store上の全カテゴリのアプリにおいて、自動更新サブスクリプションをシンプルかつ効果的に実装できます。

    概要

    自動更新サブスクリプションとは、ユーザーがアプリのコンテンツ、サービス、プレミアム機能を継続的に利用できるようにするものです。各サブスクリプションは、ユーザーがキャンセルしない限り、期限終了時に自動的に更新されます。サブスクリプションはiOS、iPadOS、macOS、tvOS、visionOS、watchOSで利用できます。

    ユーザーにとって定期的に支払う価値があるサブスクリプションアプリとは、常に革新的なアプリ体験を提供し、継続的な価値を提供するものです。サブスクリプションモデルの導入を検討している場合は、機能強化やコンテンツの拡大で、アプリを定期的にアップデートすることを計画しましょう。

    新しいゲームレベル、コンテンツの新しいエピソード、サービスとしてのソフトウェア、クラウドサポートなど、さまざまな種類のアプリでサブスクリプションを活用することができます。その他にも、実質的なアップデートが定期的に提供されるアプリ、コンテンツのライブラリやコレクションにアクセスするアプリなどもサブスクリプションに適しています。アプリ内課金の一種であるサブスクリプションは、他のアプリ内課金タイプと一緒に提供することができます。

    準備方法

    サブスクリプションを提供するには、App Store Connectでサブスクリプションを設定し、アプリでStoreKit APIを使用する必要があります。また、各サブスクリプションを1つのサブスクリプショングループ(ユーザーが選択できる、さまざまなアクセスレベル、価格、期間で構成されるサブスクリプショングループ)に割り当て、名前、価格、説明などの詳細情報を追加します。この情報は、App Storeのプロダクトページの「アプリ内課金」セクションに表示されます。対象のサブスクリプションが、アプリが対応しているすべての種類のデバイスで利用できることを確認してください。また、アプリ内でサブスクリプション登録者にサブスクリプションステータスの確認方法、アップグレード/クロスグレード/ダウングレードのオプション、自動更新サブスクリプションの管理またはキャンセルのオプションなどを提供することをおすすめします。デザインと審査に関するガイドラインに必ず従ってください。

    準備として、以下をご確認ください。

    サブスクリプションのガイドラインの理解

    サブスクリプションを作成する前に、優れた体験を提供するための種々の要件や、ベストプラクティスを理解しておくことが必要です。以下のガイドラインでは、サブスクリプションに含めるべき内容、アプリでサブスクリプションを提示する方法、既存のサブスクリプションに変更を加える方法、無料トライアルを提供する方法などについて詳細な情報が掲載されています。

    リソース:

    1年経過後の純収益率が85%に

    自動更新サブスクリプションは、App Storeにおける他のビジネスモデルとは純収益を計算する方法が異なります。サブスクリプション登録者の最初の1年間、デベロッパはそれぞれの請求サイクルで、サブスクリプションの価格の70%から税額を差し引いた金額を受け取ります。サブスクリプション登録者の有料サービスの日数が1年分累積されると、デベロッパの純収益率はサブスクリプションの価格の85%から税額を差し引いた金額に引き上げられます。

    仕組みは次のようになっています。

    • すべてのAppleプラットフォームの自動更新サブスクリプションで有効です。
    • 有料サービスの日数には、有料の価格設定オプション(都度払い、前払い)が適用されたすべての種類のサブスクリプションオファー(お試しオファー、プロモーションオファー、オファーコード)の利用期間が含まれます。
    • 無料トライアルおよび更新日の延長期間は、有料サービスの日数に含まれません。
    • 有料サービスの日数は、サブスクリプショングループごとに計算されます。
    • 同じサブスクリプショングループ内のサブスクリプション間でアップグレード/ダウングレード/クロスグレードが行われても、1年間の有料サービス該当期間の計算には影響しません。
    • 現在App Store Small Business Programに登録しているデベロッパは、サブスクリプションの有料サービスの日数が1年分累積されているかどうかにかかわらず、請求サイクル毎にサブスクリプションの価格の85%(該当する税額をこれから差し引いた金額)を受け取ります。

    キャンセルや請求に関する問題が原因でサブスクリプションが期限切れになった場合、有料サービスの日数の累積は停止します。60日以内にサブスクリプションが更新された場合は、その更新日から有料サービスの日数の累積が再開されます。

    サブスクリプションの作成

    自動更新サブスクリプションは、App Store Connectで設定します。各サブスクリプションプロダクトは、サブスクリプショングループの一部として作成し、レベルを割り当てます。サブスクリプショングループの設定によって収益率が決まるほか、ユーザーによるコンテンツおよびサービスへの登録方法やサブスクリプションの切り替え方法、および請求の時期が決まります。サブスクリプションを作成する前に、自分のビジネスモデルに適したサブスクリプション設定を確認してください。

    サブスクリプショングループの作成

    提供するサブスクリプションはそれぞれ、1つのサブスクリプショングループに割り当てる必要があります。サブスクリプショングループは、アクセスレベル、価格、期間が異なる複数のサブスクリプションで構成されているため、ユーザーが自分のニーズに最適なオプションを選択できるようになっています。ユーザーが1回に購入できるのは各グループ内の1つのサブスクリプションのみです。このため、大抵のアプリではグループを1つだけ作成することがベストプラクティスです。これにより、ユーザーによる複数のサブスクリプションの誤購入を防ぐことができます。

    ユーザーがアプリで複数のサブスクリプションを購入できるようにする必要がある場合(ストリーミングアプリで複数のチャンネルのサブスクリプションを提供する場合など)は、サブスクリプションをそれぞれ異なるグループに追加することもできます。複数のグループのサブスクリプションを購入したユーザーには、サブスクリプションごとに請求が行われます。ユーザーがあるグループのサブスクリプションをキャンセルし、その後別のグループのサブスクリプションを新たに購入した場合は、更新日が変更され、有料サービスの日数もリセットされます。

    ユーザーが有効なサブスクリプションを1つだけ利用することが予想されるアプリでは、複数のサブスクリプショングループを設定することは推奨されません。提供するラインアップをできるだけシンプルにして、わかりやすくしてください。各サブスクリプションには、ユーザーにとってシンプルでわかりやすく、かつ同じグループ内のその他のサブスクリプションと区別しやすい名前を付けてください。混乱を避けるため、アプリ名、サブスクリプショングループ名、各サブスクリプション名は、明確にわかるようそれぞれ差別化してください。

    アプリ名またはカスタムアプリ名
    サブスクリプションの表示名
    価格/期間
    アプリ名またはカスタムアプリ名
    サブスクリプションの表示名
    価格/期間

    グループ内でのサブスクリプションのランク付け

    価格帯が異なる複数のサブスクリプションを提供する場合、App Store Connectでそれぞれのサブスクリプションを異なるレベルに割り当てることができます。サブスクリプションにランクを付けることで、利用可能なアップグレード/ダウングレード/クロスグレードのオプションを決定します。提供する内容が最も充実したサブスクリプション(レベル1)が最上位に、最も少ないものが最下位になるよう、各サブスクリプションを順にランク付けしてください。提供するサービスやコンテンツが少ないサブスクリプションは、意図している内容に応じて、レベル2や3に割り当てることができます。提供する内容が同等の場合は、各レベルに複数のサブスクリプションを追加することができます。詳細については、「自動更新サブスクリプショングループの設定の概要」を参照してください。

    ユーザーは、App Storeのアカウント設定でサブスクリプションを管理できます。アカウント設定では、すべての更新オプションやサブスクリプショングループを確認したり、サブスクリプション間のアップグレード/クロスグレード/ダウングレードをいつでも行うことができます。また、showManageSubscriptions(in:)メソッドを使用すると、これらをアプリ内でも管理できるようになります。ユーザーがサブスクリプションレベルを変更する際、その変更のタイミングは以下のような状況によって異なります。

    アップグレード:ユーザーが、現在のサブスクリプションよりもサービスレベルの高いサブスクリプションを購入することを指します。この場合、ユーザーはただちにアップグレードされ、元々のサブスクリプションの利用日数に基づく金額が返金されます。追加のコンテンツや機能をユーザーがただちに利用できるようにしたい場合は、より高いランクのサブスクリプションとして設定し、ユーザーがアップグレードとして購入できるようにしてください。

    ダウングレード:ユーザーが、現在のサブスクリプションよりもサービスレベルの低いサブスクリプションを選択することを指します。この場合、現在のサブスクリプションは次回の更新日まで継続され、その後低いレベルと価格で更新されます。

    クロスグレード:ユーザーが、同等のレベルの新しいサブスクリプションに切り替えることを指します。サブスクリプションの期間が同じであれば、新しいサブスクリプションはただちに開始されます。期間が異なる場合は、新しいサブスクリプションは次回の更新日に有効になります。

    地域ごとのサブスクリプションの価格設定

    自動更新サブスクリプションを提供するアプリでは、利用可能なすべての通貨と価格帯で、800の価格ポイントから選択することができます。リクエストにより、さらに高額な100の追加価格ポイントも利用できます。複数のマーケットで配信する場合、地域ごとに異なる価格を設定することもできれば、どのストアフロントでも同等の価格になるよう設定することもできます。

    価格設定ツール:App Store Connectの価格設定ツールを使用すると、現在の為替レートに基づいた価格管理ができます。特定の地域で税制の変更や通貨の調整が行われた場合、デベロッパがその差分の影響をユーザーに課さない限り、通常はサブスクリプションの価格に影響しません。特定のマーケットでサブスクリプションの価格を変更する場合は、実行に移す前に、そのマーケットでの価格が税込みであるかどうかを把握することが重要です。たとえば、ドイツのユーザーに向けたサブスクリプションの価格を引き下げる場合、デベロッパが受け取る収益は購入価格から欧州連合の付加価値税(VAT)とAppleの手数料を差し引いた額になります。App Store Connectの価格設定ツールで設定されているデフォルトの価格には、Appleが徴収し納付する税金が含まれています。詳細については、「Apple Developer Program使用許諾契約」の別紙2に記載されている、税務上の処理が異なる地域に関する説明をご確認ください。

    App Store Connectでは、アプリおよびアプリ内課金アイテムに対して税金カテゴリを設定することもできます。これらのカテゴリはアプリのコンテンツ(ビデオ、ブック、ニュース関連出版物など)に基づくもので、各地域の税法や規制に従って定義されます。これにより、Appleではデベロッパに代わり、アプリに関わる納税を所定の税率で管理することができます。

    ファミリー共有

    ファミリー共有は、自動更新サブスクリプションへのアクセスを最大5人のファミリーメンバーと共有し、メンバーのすべてのAppleデバイスで利用できるようにするものです。スムーズで便利なユーザー体験を提供するファミリー共有は、サブスクリプション登録者の獲得、有料サブスクリプションの促進、エンゲージメントやリテンションの向上に役立ちます。サブスクリプションのファミリー共有は、App Store Connectで有効にすることができます。一度有効にすると、無効にすることはできない点に注意してください。

    購入検証を通してサブスクリプションのアクセス権がチェックされ、その後、適切なアクセス権が登録者とその家族に付与されます。サブスクリプションが登録者の家族にデフォルトで共有されるかどうかは、登録者のサブスクリプションの共有設定、およびApp Store Connectでファミリー共有が有効化される前に当該のサブスクリプションが購入されたかどうかによって異なります。サブスクリプションの共有をデフォルトで設定していない登録者には、サブスクリプションを家族と共有できることを知らせるプッシュ通知がAppleから届きます。

    ファミリー共有をハイライトする方法は数通りあります。

    サブスクリプション登録がまだ行われていないユーザーに対してファミリー共有をハイライトする。サブスクリプションの表示名にファミリー共有を含めることで、ユーザーがサブスクリプションのオプションを確認する際にファミリー共有が提供されていることに気づきやすくなります。ファミリー共有が有効なサブスクリプションと、ファミリー共有を含まないサブスクリプションの両方を提供する場合は、ファミリー共有オプションを利用する場合の価格差を登録画面で明示できます。

    ファミリー共有を有効化するようサブスクリプション登録者にリマインドする。たとえば新規サブスクリプション登録者向けのオンボーディングの一部として、または既存の登録者に対するアプリ内のメッセージを通じて、アプリ内でファミリー共有について通知できます。ファミリー共有が有効に設定されているか確認する方法を説明に加えましょう。ファミリー共有が有効なサブスクリプションを提供する場合、ファミリー共有版の登録がまだのユーザーのために、アプリ内で直接アップグレードするオプションを提供することをおすすめします。シームレスにアップグレードできるように、App Store Connectでこれらのサブスクリプションを同じサブスクリプションレベル内にランク付けするようにしてください。

    サブスクリプション登録者がサブスクリプションを共有できるようにする。アプリ内のメッセージを通じて、サブスクリプション登録者にファミリー共有設定を確認するよう伝えたり、アプリを簡単に共有できるようにShare Extensionを実装したりできます。決済情報でownershipTypeを確認することで、ユーザーがサブスクリプション登録者なのか、ファミリー共有のメンバーなのかを特定できるため、購入手続きをしたユーザーに対してメッセージが表示されるようにすることができます。

    リソース:

    複数のアプリへのサブスクリプション提供

    自動更新サブスクリプションは複数のアプリで提供することができます。それぞれのアプリは、自動更新型アプリ内課金の使用承認を得ており、同じデベロッパアカウントで公開されている必要があります。

    App Store Connectで、マルチアプリサブスクリプションに含まれる各アプリに同等の自動更新サブスクリプションを個別に設定して、ユーザーがどのアプリからでも登録できるようにしてください。同じサブスクリプションへの支払いが重複することがないよう、サブスクリプションのオプションをユーザーに表示する前に、そのユーザーがサブスクリプションに現在登録しているかどうかを確認する必要があります。サブスクリプションが有効かどうかの判断に関する詳細をご確認ください

    App Bundle(アプリバンドル)を作成して、複数のサブスクリプションアプリを割引価格でまとめてダウンロードできるようにすることもできます。App Bundleには、iOSアプリを最大10個まで、またはmacOSアプリを最大10個まで含めることができます。

    リソース:

    サブスクリプション登録者の獲得

    サブスクリプション登録者獲得の可能性を高めるには、ユーザーの関心が最も高いときにサブスクリプションのトライアルを提供するのが効果的です。サブスクリプションを体験してもらう方法はいくつかあります。

    オンボーディング時のサブスクリプションのメリットの提示:ユーザーが初めてアプリを開いたときにサブスクリプションの価値を強調することで、アプリの仕組みやサブスクリプションのメリットを理解してもらうことができます。オンボーディング時は、簡潔かつ魅力的で、ユーザーの関心が高い機能(複数の種類のデバイスでサブスクリプションを利用できる機能など)にフォーカスしてください。また、登録を促す簡潔な呼びかけや、サブスクリプションの利用規約を明確に記載してください。

    記載すべき内容について詳しく

    フリーミアムアプリの提供:フリーミアムアプリは、アプリの利用を無料で提供し、さらに体験を深めたいユーザーに任意のサブスクリプションを提供するモデルです。ユーザーにとって試しやすい無料アプリをまず利用してもらうことで、有料の機能を購入してもらえる可能性が高くなります。

    メーター制課金の提供:メーター制課金とは、料金を支払わなくても、一定量のコンテンツに特定の期間アクセスできる方法です(ニュースアプリで毎月記事を10件まで無料で閲覧できるなど)。この方法では、ユーザーに気軽にサブスクリプションを体験してもらえると同時に、サブスクリプションの魅力をアピールできます。

    フリーミアムおよびメーター制課金のアプリでは、無料記事や無料ビデオの月間の上限に近づいたときなど、状況に合わせてサブスクリプションを促すメッセージを表示するようにしてください。さらに、アプリのインターフェイスの各所で、ユーザーがいつでも簡単にサブスクリプションに登録できるようにしましょう。こうした登録を促すアクションの有効性のテストや評価を行い、また何がオーディエンスに対して最も有効かを理解するため、メッセージを複数作成して試してみましょう。

    サブスクリプションを成功へと導く最適化:獲得

    サブスクリプションに関する明確な説明

    効果的なサブスクリプションの購入フローを設定すると、ユーザーは興味を持っているプロダクトやサービスを簡単に購入できるようになります。サブスクリプションの価値をユーザーが理解しやすいよう、一貫したメッセージを使用し、明確な利用規約を含めましょう。サブスクリプションのプロセスに時間がかかりすぎると、サブスクリプションのコンバージョン率が低下します。購入フローはシンプルにし、入力を求める情報は必要最小限にしましょう。さらに、サブスクリプションの登録画面には以下の情報を含めてください。

    • サブスクリプションの名前と期間、および登録期間中に提供されるコンテンツやサービス
    • 完全更新の価格(利用可能な通貨での現地価格を明確かつ目立つように表示)
    • 既存のサブスクリプション登録者がサインインしたり購入を復元したりする方法

    アプリおよびApp Storeのメタデータには、必ずアプリの利用規約とプライバシーポリシーへのリンクを含めてください。

    請求金額
    購入フローでは、請求金額をレイアウトの価格要素の中で最も目立つようにする必要があります。たとえば、年間サブスクリプションの場合は、購入時に請求される合計金額を明確に表示する必要があります。年間金額の内訳や、週間または月間のサブスクリプションと比較した際の割引額などを表示することもできますが、こうした追加情報は、年間金額よりも目立たない場所に目立たないサイズで表示するようにしてください。こうすることで、ユーザーの混乱を避けることができます。

    無料トライアル
    無料トライアルの購入フローでは、無料トライアルの期間と、無料トライアルが終了した時点で請求される額を明確に表示してください。

    App Storeでのサブスクリプションのプロモーション

    アプリ内課金アイテムをApp Storeで直接プロモーションすると、ユーザーはアプリをダウンロードする前でも、サブスクリプションやお試しオファーを見つけて購入を開始できます。プロモーション対象のアプリ内課金アイテムはプロダクトページや検索結果に表示されるほか、「Today」、「ゲーム」、「App」のタブでフィーチャーされることもあります。アプリのコンテンツをさらに見つけてもらいやすくするために、一度に最大20個のアプリ内課金アイテムをプロモーションすることができます。この方法は、特に新規ユーザーにお試しオファーを知ってもらう上で効果的です。

    アプリ内課金のプロモーションについて詳しく

    プロモーション中のアプリ内課金アイテムには、その価値を伝えるための特有のメタデータがあります。

    サブスクリプションオファーの提供

    自動更新サブスクリプションを特定の期間、無料または割引価格で提供することで、ユーザーを獲得、維持することができます。オファー期間が終了すると、登録者がキャンセルするか、自動更新をオフにしない限り、サブスクリプションは通常価格で自動更新されます。サブスクリプションオファーでは、以下のタイプのインセンティブを提供することができます。

    無料トライアル。登録者が一定の期間、無料でサブスクリプションを利用できる方法です(例:1か月間の無料オファー後は、通常の更新価格の月額 $4.99で利用)。サブスクリプションはすぐに開始されますが、オファー期間が終了するまでは請求されません。このオファーは、ユーザーにサブスクリプションを当面無料で体験してもらいたい場合に有効といえます。

    都度払い:登録者が一定期間にわたり、割引価格を請求期間ごとに支払う方法です(例:通常月額$9.99のサブスクリプションを、3か月間は月額$1.99で利用できる)。その期間が終了すると、登録者は通常の更新価格にて請求されます。この方法は、割引が繰り返し適用されるため、価格に敏感なユーザーへの訴求力を高めたい場合に効果的といえます。同時にデベロッパには、サブスクリプションの価格を一定期間経過後に通常価格に戻せるというメリットがあります。

    前払い:登録者が1回限りの価格を支払うことで、サブスクリプションを特定の期間利用できるようになる方法です(例:通常は年間$39.99のサブスクリプションを、最初の半年間は$9.99の前払いで利用できる)。その期間が終了すると、通常の更新価格に基づいて請求が行われます。この方法は、次回更新時までコンテンツを十分に楽しんでもらえるよう、長めにサブスクリプションの体験期間を設定したい場合に効果的といえます。

    オファーの種類

    提供可能なサブスクリプションオファーには、お試しオファー、プロモーションオファー、オファーコードの3種類があります。ビジネスの目標に応じて、3種類のオファーを一度に提供することが可能です。特定のユースケースにどの種類が最適かを判断するには、各オファーの想定用途、利用資格、オファー利用の限度、その他の基準を考慮してください。すべてのオファーはApp Store Connectで設定し、そこでオファーの種類、期間、価格などを選択します。オファーの種類と利用可能な期間の詳細については、「価格および配信状況」をご確認ください。

    サブスクリプションオファーの比較
      お試しオファー プロモーションオファー オファーコード
    主な用途 新規サブスクリプション登録者の獲得 既存のサブスクリプション登録者の維持と過去の登録者の再獲得 サブスクリプション登録者の獲得と維持、および過去の登録者の再獲得
    利用資格 アプリ内の新規サブスクリプション登録者 アプリ内の既存または過去のサブスクリプション登録者。アプリ内でのサブスクリプションの履歴がないユーザーは、このタイプのオファーを利用できません。 新規、既存、または過去のサブスクリプション登録者
    配信と利用 アプリ内課金のプロモーションによる、アプリ内またはApp Storeでの配信と利用 アプリ内での配信と利用 デジタルまたはオフラインの任意の方法による配信/配布とアプリ内での配信。ダイレクトURLを介して、またはアプリ内で利用できます。1回限りのコードは、App Storeで利用することもできます。
    利用の限度 ユーザーはサブスクリプショングループごとに1件のお試しオファーを利用可能 デベロッパはユーザーが何件までオファーを利用できるか決定する ユーザーはオファーごとに1つのコードを利用できる
    オファーの限度 サブスクリプションごと、地域ごとに、1件のオファー サブスクリプションごとに、10件のアクティブなオファー サブスクリプションごとに、10件のアクティブなオファー。1つのアプリにつき、四半期ごとに最大百万件のコードを作成できます。
    オファーの設定 デベロッパがApp Store Connectでオファーの時期、地域、価格、期間を選択する デベロッパがビジネスロジックを決定し、App Store Connectで価格と期間を選択し、StoreKit APIを使用して対象ユーザーにオファーを提示する デベロッパが、利用資格、オファーの時期、地域、価格、期間、コードの個数をApp Store Connectで選択する
    互換性 iOS 10、iPadOS 10、macOS 10.12.6、tvOS 10またはそれ以降 iOS 12.2、iPadOS 12.2、macOS 10.14.4、tvOS 12.2またはそれ以降 iOS 14.2、iPadOS 14.2またはそれ以降

    お試しオファー

    新規登録者が、全額を支払う前にサブスクリプションを体験できるようにします。App Store Connectで各サブスクリプションのお試しオファーを作成し、StoreKitを使ってアプリのサブスクリプション登録画面にお試しオファーを表示できます。利用資格のあるユーザーはサブスクリプショングループにつき1件のお試しオファーを利用できるようになります。

    App Storeでサブスクリプションのお試しオファーをプロモーションすることで、より多くのユーザーにリーチできます。プロモーション対象のアプリ内課金アイテムはプロダクトページや検索結果に表示されるほか、「Today」、「ゲーム」、「App」のいずれかのタブでフィーチャーされることもあります。

    リソース:

    オファーコード

    オファーコードは、限定期間中に割引価格または無償でサブスクリプションを提供することで、サブスクリプション登録者の獲得、維持、再登録の促進に役立ちます。2種類のオファーコードを、オンラインまたはオフラインのチャネルを使用して、任意の方法で配信・配信することができます。

    1回限りのコード:App Store Connectで生成した1回限り利用可能な固有のコードで、コード利用URLを介してアプリ内で利用(アプリがofferCodeRedemptionまたはpresentCodeRedemptionSheetメソッドに対応している場合)、またはApp Storeのコード利用フローでコードを入力して利用することができます。これらのコードは小規模の配信や、コードへのアクセスを制限する必要がある場合に適しています。コードの有効期限は作成日から最長6か月です。

    カスタムコード:固有の名前(「SPRINGPROMO」など)を付けたカスタムコードで、コード利用URLを介して、またはアプリ内(offerCodeRedemptionまたはpresentCodeRedemptionSheetメソッドに対応している場合)で利用できます。デベロッパが利用回数の上限を設定します。また、有効期限の有無も選択できます。カスタムコードは、大量配信が必要となる大規模なキャンペーンに最適です。

    オファーコードはさまざまな方法で活用できます。以下はその例です。

    • 最新機能や最近追加されたコンテンツを紹介するEメールにオファーコードを掲載し、既存または過去のサブスクリプション登録者に送信し、サービスを一定期間体験してもらう
    • カスタムオファーコードを掲載したチラシを配信し、イベント参加者にサービスをプロモーションする
    • 他社とのコラボでマーケティングや紹介キャンペーンを行い、アプリをプロモーションする
    • ピアツーピアのメンバー紹介プログラムを作成して、既存のサブスクリプション登録者がオファーコードを共有してアプリのプロモーションに協力することで、特典を受け取れるようにする(特典や報酬をサブスクリプション登録者に配信、提供する責任はデベロッパが負います)
    • カスタマーサービス対応を要する問題が発生しているサブスクリプション登録者にコードを提供することで、問題の埋め合わせをし、継続利用を促す
    • 廃止予定のアプリ内で1回限りのコードを配信することで、サブスクリプション登録者に新しいアプリへの移行を促し、サービスのプロモーションを行う
    • 自動更新をオフにしたサブスクリプション登録者で、まだサブスクリプションが期限切れになっていない場合、アプリ内で割引オファーを表示する

    設定

    App Store Connectでオファーコードを設定する際に、利用資格を決定します。新規サブスクリプション登録者を対象とする場合は、お試しオファーに加えてオファーコードを利用できるようにするかどうかも決定します。ユーザーは1件のオファーにつき1つのコードしか利用できませんが、設定の選択によっては、1つのサブスクリプションに対して複数のオファーを利用できるようになる場合があります。1つのサブスクリプションに複数のオファーを作成する際は、それぞれの効果についてよく検討するようにしてください。1回限りのコードの有効期限は作成日から最長6か月であるため、一度に生成するコードの数は慎重に検討してください。カスタムコードの名前には、サブスクリプション登録者のユーザー名などの個人情報は含めないでください。

    配信と利用

    オファーコードは、アプリ内マーチャンダイジング、Eメール、オフラインのキャンペーンなどのマーケティングチャネルを介して配信/配布します。 ターゲットとするユーザー層にリーチするにはどのチャネルが最も効果的かを検討し、対象条件や利用の制限について必ず記載してください。iOS 14.2、iPadOS 14.2以降のユーザーは、コード利用URLを介して、またはアプリ内(offerCodeRedemptionまたはpresentCodeRedemptionSheetメソッドに対応している場合)でオファーコードを利用することができます。1回限りのコードはApp Storeでも利用できます。

    オファーコードの利用体験はAppleが管理します。これにはオファーの詳細画面が含まれ、そこに表示されるアプリアイコン、サブスクリプションの表示名、期間、価格などの情報は、デベロッパがApp Store Connectで追加します。過去にサブスクリプションのプロモーション画像を追加済みの場合は、アプリアイコンの代わりにその画像が表示されます。ユーザーが十分理解した上で判断できるよう、これらの情報を通してサブスクリプションが提供する体験について明確に説明するようにしてください。オファーコードを利用可能にするには、そのアプリがApp Storeで配信されている必要があります。ユーザーがそのアプリを持っていない場合は、オファーコードの利用手続き中にアプリをダウンロードすることができます。

    複数のサブスクリプショングループがアプリに設定されていて、かつオファーコードが複数のサブスクリプショングループに属する場合、既存のサブスクリプション登録者は複数のコードが利用できることに留意してください。ユーザーが一度に1つのサブスクリプショングループにのみ登録できるようにしたい場合は、そのオファーが現在のサブスクリプショングループ内に含まれることを確認してください。既存のサブスクリプション登録者がコードを利用できるのは、現在のサブスクリプションからのアップグレート、または現在のサブスクリプションと同等のレベルの場合のみです。

    ユーザーがオファーを利用したら、そのユーザーのサブスクリプションのステータスに応じて、該当する体験を提供してください。たとえば、サブスクリプションに初めて登録する登録者には、そのサブスクリプションのメリットを紹介し、オンボーディングを提供することができます。アプリでアカウントの作成や追加の規約への同意が必要な場合は、コードを利用したアプリの新規ユーザーが、それらのプロセスをできるだけスムーズに行えるようにしてください。

    準備として、以下のことに対応しましょう。

    • サーバの設定でApp Storeサーバ通知の受信を有効にします。
    • アプリ内でコードを利用できるようにする場合は、offerCodeRedemptionまたはpresentCodeRedemptionSheetメソッドを使用してください。
    • デバイス上でStoreKitを使用してオファーコードの利用を特定するには、offerIDおよびofferTypeトランザクションプロパティを確認してください。
    • サーバ上でオファーコードの利用を特定するには、App Store Server APIからの応答およびApp Storeサーバ通知に含まれるofferIdentiferおよびofferTypeプロパティを確認してください。

    リソース:

    プロモーションオファー

    既存または以前の登録者が、特定の期間、無料または割引価格でサブスクリプションに登録できるようにします。これらのオファーによって、ユーザー数の拡大や維持のため、独自のプロモーションを柔軟に行うことができるようになります。プロモーションオファーは、サブスクリプションをキャンセルした過去の登録者に再登録を促したり、特別価格で別のサブスクリプションへのアップグレードを提供したりする上でも役立ちます。

    各オファーのビジネスロジックを決定し、StoreKit APIを使用してアプリにオファーを表示するタイミングを選択してください。サブスクリプションごとに最大10件のアクティブなオファーを設定できるので、どのオファーが最も説得力があり、ユーザーにとって有用であるかを判断できます。複数のオファーを有効にする際は、それぞれの効果についてよく検討するようにしてください。

    StoreKitまたはApp Store Server APIを使用すると、サブスクリプション登録者の自動更新状況を把握し、どのオファーが最も効果的かを理解することができます。登録者が自動更新をオフにしている場合は、現在のサブスクリプション期間が終了する前に、1か月間、無料のプロモーションオファーを表示して更新を促すことを検討することもできます。月間サブスクリプション登録者が複数回更新していることに気づいた場合は、割引価格で年間サブスクリプションにアップグレードするためのオファーを提供することができます。また、ユーザーのさまざまな利用パターンに基づいて、再登録やアップグレードを促す他の機会も検討しましょう。たとえば、無料トライアルの期間中にサブスクリプションをキャンセルするユーザーと、有料サブスクリプションを一定期間利用した後にキャンセルするユーザーを比べて、それぞれに最も価値があるオファーを検討します。

    設定方法:

    • App Store Connectの「ユーザーとアクセス」セクションでアクセスキーを生成する
    • App Store Connectの当該アプリのアプリ内課金ページで、各プロダクト用のプロモーションオファーを作成する
    • ビジネスロジックを決定し、StoreKit APIを使用する
    • App Storeサーバ通知を有効化する

    リソース:

    サブスクリプション登録者の維持

    登録者にアプリのサブスクリプションを継続してもらうには、それに見合う価値を提供し続ける必要があります。サブスクリプションの継続を促すため、新たなコンテンツや機能の拡張を追加してアプリを定期的にアップデートしましょう。

    通知の送信

    十分に配慮された通知は、ユーザーエンゲージメントとサブスクリプションの継続を促す上で効果的です。ポジティブな体験を提供するには、明確な目的で有意義な情報を伝える通知を、適切なタイミングで送信する必要があります。また、コンテンツマーケティングのためにプッシュ通知を使うことも可能です。たとえば、まだサブスクリプションを利用していないユーザーに対して、サブスクリプションオファーをすすめることができます。ただし、ユーザーがオプトアウトするための明確な手段も設けたうえ、マーケティングのプッシュ通知の送信に同意を求めるアプリ内のメッセージに対してユーザーが明示的にオプトインした場合に限られます。サブスクリプション登録者に価値を提供できるよう、通知の頻度、タイミング、内容を慎重に検討してください。プッシュ通知の内容に個人情報や秘密情報を含めることはできません。

    デザインに関するガイダンス
    通知の実装に関する詳細

    サポートの提供

    配慮の行き届いたサポートを提供することは、サブスクリプション登録者との関係維持に役立ち、エンゲージメントやリテンション率の改善、評価とレビューの向上にもつながります。StoreKitとApp Store Server APIを使うことで、サブスクリプション登録者によりシームレスなサポートを提供し、より迅速かつ効果的に問題を解決しましょう。

    ユーザーによるサブスクリプション管理のサポート

    サブスクリプションの期間中に、登録者の希望オプションが変わることがあります。showManageSubscriptions(in:)メソッドを使用すると、登録者がアプリ内でサブスクリプションを管理できるようになります。サブスクリプションを管理するための専用スペースをアプリ内に設けることで、他のオプションも表示して、システム組み込みの管理UIを補完することもできます。たとえば、上位レベルのサービスを割引価格で提供するプロモーションオファーを表示したり、登録者がサブスクリプションをキャンセルした場合は、再登録を促すオファーを提示することができます。あるいは、ユーザーがサブスクリプション体験に関するフィードバックやキャンセル理由を共有できるアンケートを表示して、マーケティング戦略の見直しを図ることもできます。体験がポジティブなものになるように、ユーザーがサブスクリプションのキャンセルを希望する場合には、システム組み込みの管理UIに簡単にアクセスしてキャンセルできるようにしてください。

    サブスクリプション更新日の延長

    サーバ停止や技術的な問題など、サービスやコンテンツ配信で問題が発生した場合は、Renewal Date Extensionエンドポイントを使用して、サブスクリプションの更新日を延長できます。たとえば、スポーツの試合が中止になった場合や、ライブストリーミングのイベントが中断された場合などは、埋め合わせとして一定期間無償サービスを延長できます。サブスクリプションの更新日は暦年ごとに2回まで延長でき、1回につき最長90日間延長できます。延長期間に含まれる日数は、85%の収益率を得るために必要な1年間の有料サービスの日数には含まれません。

    または、不満を抱えるサブスクリプション登録者に対して、一定期間のサブスクリプションを無償または割引価格で利用できるオファーコードを提供することもできます。こうしたコードは、App Storeまたはアプリ内で利用できます。

    サブスクリプション登録者のステータスの確認

    Get All Subscription Statusesエンドポイントを使用すると、サブスクリプションが、有効、期限切れ、支払いの再試行、請求の猶予期間のどのステータスにあるかを1回のチェックで判断できます。この情報を参考にして、リテンションに関する戦略を見直すとともに、次回更新予定日などの情報をアプリ内でサブスクリプション登録者に提供できます。このエンドポイントと一緒に、OfferIDおよびOfferTypeトランザクションプロパティをStoreKitで使用することで、オファーの利用状況を特定できます。

    StoreKit 2およびApp Store Server APIを使用したカスタマーサポートについて詳しく
    カスタマーサポートと返金の管理について詳しく
    サブスクリプションの管理に関するカスタマーサポートについて詳しく

    サブスクリプション登録者の維持アップデート

    Get All Subscription StatusesおよびGet Transaction Historyのエンドポイントを使用すると、ユーザーのサブスクリプションステータスを判断し、トランザクション履歴を表示できるため、以下のどの状況に該当するかを特定し、対応することができます。

    自発的な解約:Get All Subscription Statusesエンドポイントを使用して、サブスクリプション登録者が特定のサブスクリプションの自動更新をオフにしたかどうかを判断できます。また、App Storeサーバ通知を使って、ユーザーのステータス変更や、ユーザーのアプリ内課金に関する重要なイベント(更新ステータスの変更など)に関するアップデートをリアルタイムで受け取ることができます。この情報をもとに、プロモーションオファーを提示する、ユーザーのニーズにより適した別の価格帯を案内するなど、適切な対応を取ることができます。サブスクリプションの有効期限が切れたときに、サブスクリプションのコンテンツやサービスへのアクセスをロックできます。ユーザーには変更内容を伝え、ユーザー側で取るべき対応の有無や、必要な場合はサブスクリプションに再登録するための方法を必ず伝えましょう。

    自発的ではない解約:クレジットカードの有効期限が切れているなど、請求に関する問題が発生した場合、サブスクリプションが失効する可能性があります。iOS 16.4、iPadOS 16.4以降、サブスクリプションが正常に更新されなかったユーザーに対し、アプリの起動時にアプリ内でシステム提供のシートが表示され、ユーザーはこのプロンプトからApple IDに関連付けられた支払い方法を更新できるようになります。必要に応じて、StoreKitでMessagedisplayを使ってこのシートの表示を遅延したり非表示にしたりすることもできます。

    サブスクリプションの更新に失敗した場合は、以下の方法で確認できます。

    • App Storeサーバ通知:通知タイプDID_FAIL_TO_RENEWが送信されます。
    • StoreKitの更新ステータス:更新ステータスに関する情報を取得できます。
    • App Store Server API:サブスクリプションの各種ステータスを取得できます。

    サブスクリプションの更新に失敗した場合、Appleは60日間、サブスクリプションの回復を試みます。デベロッパは、この期間中にサービスやコンテンツへのアクセスを一時停止するよう選択した場合、問題が解決したあとでアクセスを再開する必要があります。60日以内にサブスクリプションが更新された場合は、更新日から有料サービスの日数が再開されます。

    請求に関する問題によるサービスの中断を防ぐには、App Store Connectで請求の猶予期間を有効にします。Appleは、サブスクリプションへのアクセスが維持されている間に、請求に関する問題への対処を試み、サブスクリプションが回復されるように努めます。請求の猶予期間は、すべての更新(既存の有料更新、および無料オファーから有料更新への移行)に適用するか、既存の有料更新にのみ適用するかを選択できます。また、期間は3日間、16日間、または28日間に設定できます。デベロッパのビジネスモデルに最も適した請求の猶予期間を設定するよう、十分に検討してください。請求の猶予期間内にサブスクリプションが回復された場合、有料サービスの日数や収益に中断は発生しません。ユーザーが60日を過ぎてからサブスクリプションを更新した場合、有料サービスの日数はリセットされ、その時点から1年が経過するまでは通常の1年間のサブスクリプション価格となります。

    値上げへの同意の有無:サブスクリプションの値上げをし、Appleが影響を受けるサブスクリプション登録者に対して新しい価格に同意するかを確認する際に、デベロッパは値上げ実施前の登録者の同意状況を確認することができます。影響を受けるユーザーに値上げのシートを表示する前に、サブスクリプションのメリットと、値上げによってどのようにサービスが改善されるかを説明するメッセージをアプリ内に表示するとよいでしょう。ユーザーが値上げの同意確認に応答しなかった場合は、現在の請求サイクルの終了時にサブスクリプションが終了します。

    リソース:

    価格の管理

    ストアフロントごとの自動更新サブスクリプションの価格を設定し、利用可能なすべての通貨と価格帯で800の価格ポイントから選択することができます。リクエストによりさらに高額な100の追加価格ポイントも利用できます。自動更新サブスクリプションの開始価格を設定したら、App Store Connectで、地域ごとに将来の価格変更を一度に1つずつスケジュールできます。

    値下げ:自動更新サブスクリプションの価格を引き下げた場合、既存のサブスクリプションは値下げ価格で自動的に更新されます。既存のサブスクリプション登録者に対して値下げ前の価格を据え置くというオプションはありません。既存のサブスクリプション登録者に通知は送信されず、登録者側での対応も必要ありません。

    値上げ:自動更新サブスクリプションの価格を引き上げた場合、プッシュ通知、Eメール、アプリ内メッセージがAppleから自動的に送信され、予定されている価格変更とサブスクリプションの管理方法がサブスクリプション登録者に通知されます。一部の値上げでは、サブスクリプション登録者の承諾(オプトイン)が必要となります。一方、小額規模で、低頻度の値上げの場合、通知は送信されますが、登録者のオプトインは必要ありません。

    アプリ利用中の重要な場面でユーザーの邪魔にならないよう、必要に応じて、アプリ内での価格同意シートの表示を一時的に遅らせることができます。

    新規ユーザー向けの価格を引き上げる一方で既存のサブスクリプション登録者が支払う価格を維持することができます。対象とする既存の登録者の数に制限はありません。既存の登録者向けの価格を据え置かず、かつ登録者による同意を必要とする場合、登録者は値上げに同意する必要があります。登録者が値上げに同意しない場合は、現在の請求サイクルの終了時にサブスクリプションが終了します。

    現在異なる価格を払っているサブスクリプション登録者に最新価格を一律に適用させたい場合、まずは既存の金額が最新価格に最も近いグループに最新価格を適用し($2.99から$3.99など)、その後2番目に金額が近いグループに適用する、という形で進めましょう。これにより、ユーザーは複数の値上げを経験しなくてすみます。価格に関する決定を下す際は事前に対象マーケットの相場を調査し、値上げがサブスクリプション登録者の維持にどのような影響を及ぼす可能性があるかを事前によく検討してください。

    リソース:

    サブスクリプションのパフォーマンスを詳しく把握するために、サブスクリプションデータを確認して分析しましょう。App Store Connectの「売上とトレンド」では、テリトリ、アプリ、サブスクリプションタイプごとにデータを絞り込むことができます。

    サブスクリプションの概要ページ:このページでは、サブスクリプションの全体的なパフォーマンス、日別の有効な有料サブスクリプション数、リテンション率やコンバージョン率、キャンセル理由など、サブスクリプションの概要を確認できます。このページのデータは、戦略を見直す上で役立ちます。たとえば、お試しオファーのコンバージョン率が低い場合、サブスクリプションの価値をより明確に伝えられるようアプリ内のメッセージを改訂したり、購入前にサブスクリプションの価値をさらに長期間体験できるよう、オファー期間を延長するなど検討してみましょう。

    サブスクリプションのステータスページ:現在の状態(標準価格/お試しオファー/プロモーションオファー/支払いの再試行)に基づく、有効なサブスクリプションの合計数を確認できます。このデータを活用して、サブスクリプションがどの程度伸びているかを測定しましょう。たとえば、データを収益率でグループ化すると、1年経過後の収益率が高いサブスクリプションの数を把握することができます。また、地域、プロモーションオファー、サブスクリプションなど、さまざまな要素でデータをフィルタしたりグループ化したりすれば、さらに有益な情報を得ることもできます。

    サブスクリプションのイベントページ:サブスクリプションのアクティベーション合計数、標準価格へのコンバージョン合計数、再アクティベーション合計数、更新合計数などが確認でき、データをフィルタすれば、多くの有益な情報を得ることができます。たとえば、特定のプロモーションオファーでフィルタすれば、そのプロモーションオファーが、中断されたサブスクリプションの再アクティベーションにどの程度の効果があったかを確認することができます。こうした情報を使って、プロモーションオファーの戦略を立て直すことができます。サブスクリプションの各イベントの定義をご確認ください

    サブスクリプションのリテンションページ:サブスクリプションのリテンションに関するデータ、およびお試しオファーやプロモーションオファーのコンバージョン率に関するデータを確認できます。「標準有料サブスクリプションのリテンショントレンド」セクションでは、継続的に更新されたサブスクリプションの割合を確認できます。この情報を特定のサブスクリプションでフィルタすれば、最も高いリテンション率が見られた開始月を把握でき、その要因を調査することができます(特定の月に新しいコンテンツをリリースした、季節ごとのマーケティングキャンペーンを実施したなど)。これにより、エンゲージメントやリテンションを高めるための戦略を見直すことができます。

    サブスクリプションレポート:以上のすべての情報に加え、開始日やキャンセルまでの日数に関する匿名化されたデータなど、さらに詳しい情報が記載された日次レポートをダウンロードすることができます。

    リソース: