RORK LABEN
TOOLING — Rorkの開発者向けリポジトリが動き続けています。rork-xcodeが7月16日、rork-deviceが7月15日、rork-plistが7月13日に更新されましたOPUS46 — RorkでClaude Opus 4.6が稼働しています。Rork MaxはClaude Codeを土台にアプリを組み立てる設計ですSIM — ブラウザ上で動くクラウドのiOSシミュレータを備え、実機へのインストールは1クリック、App Storeへの提出は2クリックと案内されていますMAX — Rork MaxはReact Nativeではなく純粋なSwiftを出力します。iPhone・iPad・Apple Watch・Apple TV・Vision Pro、そしてiMessageまでが射程ですNATIVE — HealthKit、ARKitとLiDAR、NFC、Dynamic Island、Live Activities、Metalによる3D、Core MLのオンデバイス推論まで扱えますSEED — RorkはLeft Lane Capitalが主導する1,500万ドルのシードラウンドを実施し、Peak XVとa16z Speedrunが参加しましたTOOLING — Rorkの開発者向けリポジトリが動き続けています。rork-xcodeが7月16日、rork-deviceが7月15日、rork-plistが7月13日に更新されましたOPUS46 — RorkでClaude Opus 4.6が稼働しています。Rork MaxはClaude Codeを土台にアプリを組み立てる設計ですSIM — ブラウザ上で動くクラウドのiOSシミュレータを備え、実機へのインストールは1クリック、App Storeへの提出は2クリックと案内されていますMAX — Rork MaxはReact Nativeではなく純粋なSwiftを出力します。iPhone・iPad・Apple Watch・Apple TV・Vision Pro、そしてiMessageまでが射程ですNATIVE — HealthKit、ARKitとLiDAR、NFC、Dynamic Island、Live Activities、Metalによる3D、Core MLのオンデバイス推論まで扱えますSEED — RorkはLeft Lane Capitalが主導する1,500万ドルのシードラウンドを実施し、Peak XVとa16z Speedrunが参加しました
記事一覧/ビジネス
ビジネス/2026-04-04上級

Rork アプリの収益設計 — 広告と課金が食い合う地点をどう避けるか

Rork で作ったアプリに AdMob・サブスクリプション・単発課金をどう重ねるか。広告と課金のカニバリゼーションを設計で避ける方法、RevenueCat の Entitlement 中心設計、ペイウォールを出すタイミングの決め方を実装コードとともにまとめました。

Rork515収益化66AdMob70サブスクリプション63アプリ内課金9RevenueCat28インディーデベロッパー

プレミアム記事

広告の表示回数を増やした週、収益は確かに伸びました。翌々週、サブスクリプションの新規登録が目に見えて落ちました。

合計すると、ほとんど増えていない。

数字を並べ直して、ようやく腑に落ちたことがあります。広告と課金は別々の収益源ではなく、同じ一人のユーザーの同じ一瞬を奪い合っている。片方を押し込めば、もう片方が黙って引き下がる。

収益化の設計とは、モデルを選ぶ作業ではありません。二つが食い合う地点を先に見つけて、そこに線を引く作業です。

Rork はアプリの骨格を数十分で出してくれます。だからこそ、骨格が出た直後にこの線を引けるかどうかで、その後の数ヶ月が変わります。


収益モデルは「選ぶ」のではなく「重ねる」

「広告かサブスクか」という二択で考えている限り、収益は片肺のままです。実際に機能するアプリは、ほぼ例外なく複数のモデルを重ねています。

重ねるとき、それぞれのモデルが誰から何を受け取るのかを整理しておく必要があります。

モデル 誰から受け取るか 何と引き換えか 強い場面 弱い場面
広告(AdMob) 課金しない大多数 注意と時間 起動頻度が高い・セッションが短い 集中を要する作業アプリ
サブスクリプション 継続利用する少数 継続的な価値 コンテンツが増える・同期がある 一度使えば用の済むツール
単発課金 特定の不満を持つ層 その不満の解消 広告除去・機能解放が明確 継続収益にならない

この表で見えてくるのは、三つのモデルが別々の人を相手にしているということです。広告は課金しない人から、サブスクは継続する人から、単発課金は「今この不満を消したい」人から受け取ります。

重ねる設計とは、この三者を混ぜないことに他なりません。

私が個人開発で繰り返し確かめてきたのは、一人のユーザーに二つのモデルを同時に当てると、どちらの収益も下がるという事実です。広告を見せながら課金も迫るアプリは、広告収益もサブスク収益も取り逃がします。

単発課金を「広告除去」だけに閉じ込めない

「広告除去 ¥250」は確かに売れます。ただし、これはサブスクリプションの最大の敵でもあります。

一度 ¥250 を払った人は、月額 ¥200 のプレミアムには二度と入りません。広告という不満がもう存在しないからです。

単発課金を置くなら、サブスクの下位互換ではなく別軸の価値にしてください。広告除去は単発ではなくサブスクの特典に含め、単発課金は「このカテゴリのコンテンツだけ買い切る」といった、継続価値と競合しない位置に置く。

この配置を後から変えるのは、既存購入者の権利が絡むためかなり厄介です。骨格の段階で決めておく価値があります。


食い合う地点を「価値密度」で見つける

では、線はどこに引けばいいのか。

私は「価値密度」という言い方で考えています。ユーザーがその画面で受け取っている価値が、単位時間あたりどれだけ濃いか。

  • 価値密度が低い画面(一覧をスクロールしている、カテゴリを選んでいる)→ 広告の置き場所
  • 価値密度が高い画面(探していた壁紙を見つけた、記録を書き終えた)→ 課金の置き場所

この二つを逆にすると、両方が壊れます。

価値密度が高い瞬間に広告を割り込ませると、ユーザーは「一番いいところで邪魔された」と受け取ります。そのユーザーはもう課金候補ではありません。

逆に、価値密度が低い瞬間にペイウォールを出すと、「まだ良さが分かっていないのに金の話をされた」となります。これも課金には至りません。

言い換えると、広告は課金候補を焼き払う道具になりうる。この認識が抜けたまま広告頻度を上げると、短期の eCPM と引き換えに LTV を削ることになります。

実装としての「焼き払い防止」

コードに落とすなら、広告表示の判定に「その瞬間の価値密度」を入れます。

// 価値密度の高い瞬間に広告を出さないためのガード
type Moment =
  | "browsing"        // 一覧・カテゴリ選択(低)
  | "previewing"      // 詳細を見ている(中)
  | "acquired"        // ダウンロード・保存が完了した(高)
  | "returning";      // 完了後に一覧へ戻る途中(低)
 
const AD_ALLOWED: Record<Moment, boolean> = {
  browsing: false,    // 探索の邪魔をしない
  previewing: false,  // 判断の邪魔をしない
  acquired: false,    // ここは課金提案の場所。広告は絶対に置かない
  returning: true,    // 完了体験を味わい終えた直後だけ許可
};
 
function canShowInterstitial(moment: Moment, isPremium: boolean) {
  if (isPremium) return false;
  return AD_ALLOWED[moment];
}

acquiredfalse にしている点が肝心です。多くのアプリは「ダウンロード完了直後」に全画面広告を出します。収益効率としては最も良い位置に見えます。

しかし、そこはユーザーが最も満足している瞬間、つまり課金提案が最も通る瞬間でもあります。広告を置けば、その席は埋まってしまいます。

returning に一段ずらすだけで、満足の余韻を潰さずに広告を出せます。私はこのずらしを入れてから、広告収益をほとんど落とさずにペイウォールの転換率が改善する挙動を見ています。


ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
広告と課金が同じユーザーを奪い合う「カニバリゼーション地点」を特定し、価値密度で線を引く設計手順が身につく
RevenueCat を Entitlement 中心で組む実装と、レシート検証をサーバー側に寄せる Webhook 構成をコードごと使える
ペイウォールの転換率が文言ではなく提示タイミングで決まる理由と、行動シグナルで出し分ける実装を習得できる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

ビジネス2026-04-24
Rork Max × RevenueCat × AdMob ハイブリッド収益モデルの実装
Rork Max で作ったアプリを AdMob と RevenueCat でハイブリッド収益化する完全実装ガイド。広告視聴からプレミアム誘導、継続率向上まで。App Store 審査ポイント、実装コード、数字で見る効果測定を体系化。
ビジネス2026-05-04
Rork で癒し系アプリを収益化する — アーティスト・クリエイターのための個人開発戦略
壁紙・瞑想・呼吸法・睡眠サポートなどの癒し系アプリをRorkで開発し、AdMobやサブスクリプションで収益化する方法を解説。アーティストや個人クリエイターが実践できる収益モデル設計の考え方もあわせて紹介します。
ビジネス2026-05-03
Rorkで作ったモバイルアプリの収益化チャネル徹底比較 — 2026年版
Rorkで作った個人開発モバイルアプリの収益化方法を、AdMob・アプリ内課金・サブスクリプション・買い切り・スポンサーシップの5チャネルに整理し、向いているアプリの種類と現実的な月収目安まで踏み込んで比較したガイドです。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →