アプリをリリースした直後は、誰でも同じ経験をします。審査が通った瞬間の高揚感、そしてその翌日から始まる「ダウンロードが来ない」という静けさです。
私がはじめてアプリをApp Storeに出したとき、最初の2週間で8件のダウンロードでした。その経験を経て気づいたのは、リリース後の行動パターンが収益の伸び方を決定的に左右するということです。Rork Maxで作ったアプリも例外ではありません。
リリース後90日を3つのフェーズに分ける理由
App Storeのアルゴリズムは、新しくリリースされたアプリに対して最初の数週間、わずかな優遇を与えます。「新着アプリ」として一時的に露出が増える期間があり、ここでのパフォーマンス指標(インストール率・評価数・継続率)がその後のランキングに影響します。
90日をフェーズで区切る理由はシンプルです。この期間を意識せずに過ごすと、「リリースしたが売れない」という状況に気づかないまま時間が経ちます。意識的に動くと、最初の数字が次の数字のための足がかりになります。
フェーズ1(1〜30日): データ収集と最初のKPI確認
フェーズ2(31〜60日): 最初の改善サイクル
フェーズ3(61〜90日): 収益モデルの固定
フェーズ1: データを取る(リリース後1〜30日)
最初の30日でやることは一つだけです。「なぜ人がアプリを使い続け、なぜ使うのをやめるか」を理解するためのデータを集めることです。
Rork MaxはFirebase Analyticsの組み込みが容易なので、最初のリリース前に以下のイベントだけ設定しておきましょう。
// AppLaunch イベント
Analytics.logEvent("app_launch", parameters: [
"version": Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String ?? "unknown",
"days_since_install": daysSinceInstall()
])
// 主要機能の使用イベント(アプリの中心機能に合わせて)
Analytics.logEvent("core_feature_used", parameters: [
"feature_name": featureName,
"session_number": sessionNumber
])
// 離脱ポイント(最も重要)
Analytics.logEvent("session_end", parameters: [
"session_duration_seconds": duration,
"screens_visited": screenCount,
"completed_core_action": completedCore
])30日後に見るべき数字は3つだけです。
1日目継続率(Day 1 Retention): インストールした翌日に戻ってきたユーザーの割合。20%以上あれば合格ラインです。15%を下回る場合、最初の体験に問題があります。
コアアクション完了率: アプリの中心的な機能を実際に使ったユーザーの割合。これが30%を下回る場合、オンボーディングの設計を見直す必要があります。
平均セッション時間: ユーザーが一回の利用でどのくらい滞在するか。短すぎる(1分未満)場合はコンテンツか機能設計に問題、長すぎる(10分超え)場合はUXに複雑さがある可能性があります。
フェーズ2: 最初の改善サイクル(31〜60日)
データを見て、最も影響の大きい一箇所だけ改善します。
「全部修正したい」という気持ちはわかりますが、複数を同時に変えると何が効いたかわからなくなります。Rork Maxの強みはここで活きます。プロンプトで修正点を伝えれば、変更を特定箇所に絞って生成してくれるからです。
Rork Maxへのプロンプト例:
「ユーザーがアプリを開いてから最初の操作(プロフィール登録)を完了するまでの
ステップが多いと分析で判明しました。初回起動時のオンボーディングを3ステップ以内に
短縮してください。必須入力はメールアドレスのみとし、他の情報は後から任意で追加できる
設計にしてください。UIはシンプルに保ち、現在のデザインシステムと一致させてください。」
この期間に収益化の設定も固めます。
AdMob収益モデルの場合: バナー広告からインタースティシャル広告への移行タイミングが重要です。DAU(デイリーアクティブユーザー)が50を超えたあたりから、インタースティシャルをセッション開始時1回だけ表示する設定を試してみてください。
サブスクリプションモデルの場合: 14日間の無料トライアルを設けることをおすすめします。トライアル終了前日にリマインダーを送る設定と、StoreKit 2のトランザクション検証を必ず実装してから、この期間中にTestFlightで動作確認しておきましょう。
// StoreKit 2 — サブスクリプション状態の確認
import StoreKit
func checkSubscriptionStatus() async -> SubscriptionStatus {
for await result in Transaction.currentEntitlements {
if case .verified(let transaction) = result {
if transaction.productType == .autoRenewable {
return .active(expiresDate: transaction.expirationDate)
}
}
}
return .inactive
}フェーズ3: 収益モデルを固定する(61〜90日)
90日間で収益化の方向性が見えてきます。この時点で、どちらかを選択することになります。
量型(Volume Play): 広告収益モデル。ダウンロード数を最大化することが収益直結します。App Store最適化(ASO)と、シンプルで入口の広いアプリ設計が鍵です。
深型(Depth Play): サブスクリプション収益モデル。ユーザー数より継続率と課金転換率を重視します。ニッチでも熱狂的なユーザー層を狙う戦略です。
どちらが正解かはアプリの性質で決まります。日常的に使うユーティリティや娯楽系は量型に向き、専門性の高いツールや習慣系アプリは深型に向く傾向があります。
90日の最後に確認すべき数字は以下の通りです。
量型の確認指標:
- 月間ダウンロード数: 1,000以上が継続の目安
- ARPDAU(一人あたりの日次収益): ¥2〜¥5 が標準的な広告収益
- Day 7継続率: 10%以上を目指す
深型の確認指標:
- 試用→課金転換率: 5%以上を目指す
- 月次解約率: 10%以下が持続可能なライン
- LTV(顧客生涯価値): 月額 × (1/解約率) で計算
90日を過ぎてから
90日のデータがあれば、次の6ヶ月の優先順位が見えます。量型なら集客チャネルへの投資、深型なら機能深化と解約防止の仕組みへの投資です。
Rork Maxのアップデートサイクルは早いので、ユーザーフィードバックを元にした改善を月1回のリズムで続けることができます。この「小さな改善の継続」が、最初の90日で作った土台を本格的な収益に育てる唯一の方法です。
最初の90日を終えた時点で、収益がゼロでも失望する必要はありません。データがあれば、次の行動が見えます。行動が見えれば、収益は後からついてきます。