Webアプリを作って収益化する、僕の個人開発ルーティン
独学で個人開発を始めて5年が経ちました。これまでには収益化に成功したサービスもあれば、鳴かず飛ばずでお蔵入りになったサービスも数多くあります。それらの経験から、成功したサービスはなぜ上手くいったのか、マーケティングや収益化において押さえておくべきことは何か、その要点が少しずつ見えるようになりました。
今回は私が開発〜集客〜収益化を行うプロセスと、各工程で気をつけているポイントを順を追って書き出してみます。上手く言語化できているか分かりませんが、暖かい目でお付き合いください。
収益化した3つのサービス
私はこれまでにWebサービスを20個以上開発しており、現在はポモドーロタイマー(月間100万ユーザー)やYouTubeのループ再生ツール(月間10万ユーザー)などを運営し、そこからの収入で生活しています。
基本は海外向けのBtoCで、以下のようなツール系が中心です:
収益化済みサービス:
- Pomofocus.io - ポモドーロタイマー(広告+プレミアム課金)
- LoopTube.io - YouTubeループ再生ツール(広告のみ)
- Memozora.com - 単語カードアプリ(プレミアム課金のみ)
サービス開発のステップ
1. アイデア出し
アイデアは普段使っているサービスから思いつくことが多いです。例えば、タイマーアプリを使っていて「もうちょっとモダンなUIがいいな」とか、英語学習のアプリで「もう少し細かくカスタマイズしたいな」といった具合です。
思いついたアイデアをいきなり実行に移すことは少なくて、まずはTrelloなどにメモ書きしておきます。いいアイデアかどうかはこの時点では気にせず、とりあえず思いついたらすぐに書き留めておき、後でじっくり検討しています。
アイデアが思い浮かばない人は、自分が使っているサービスの改善点を考えてみることをオススメします。自分が実際に使っているアプリへの不満から出てくるアイデアは、結果的に成功しやすいアイデアであることが多いです。それは発想の段階で「具体的なニーズ」が特定できているからです。
一方で、今までにない全く新しいサービスを生み出そうとすると、これはなかなか難易度が高いです。実際のニーズがどれだけあるかが「想定」の域を出ないからです。もちろん、結果的に成功することはあるでしょうが、少し博打の要素が出てきてしまいます。成功確立を上げる意味では、既存サービスの改善から始めることを私はお勧めします。
2. 市場調査
サービスのアイデアが決まったら、次は市場調査をします。私はGoogle検索を重視しているので、市場調査はもっぱら「検索ボリューム」の調査になります。ここで、当該マーケットにおいてどれだけの月間ユーザー数が見込めそうかがある程度想定できます。
検索キーワードの調査にはAhrefsが便利です。キーワードごとの検索ボリュームが簡単に調べられます。
例えば自サービスのYouTubeループ再生ツールの場合、検索キーワードとして"youtube loop"などが想定されます。"youtube loop"をAhrefsで調べると、月間の検索数が4万8,000回であることが分かります。このキーワードで最上位に表示されれば、1日あたり1,000人程度の新規流入が見込める計算になります。
Ahrefs.com
どれくらいの検索ボリュームが必要かはアプリによっても変わるので一概に言えませんが、例えば1日1万ユーザーのアクセスがあれば広告収入だけでも月10万円くらいは狙えるレンジかと思います。
私は全行程でここが最も重要なステップだと考えます。市場調査を曖昧に進めると、「マーケットの規模が思ったより小さくて、いくら頑張っても伸びない」状態に陥りやすいです。Webの場合はGoogle検索がいまだに大きな集客経路になっているので、Ahrefsで月間の検索ボリュームを把握しておくことはとても大切です。
3. デザイン
Pomofocus.io
デザインはとにかく「シンプル」を心がけています。英語圏では見た目がすっきりしたミニマムなUIが好まれる傾向があります。なので、一画面にあまり要素を含めすぎないように気をつけます。
デザインで気をつけているポイント
- トップページは出来るだけ要素を減らす
- 複雑な要素は設定画面に隠す
- 使う色は1~2色に限定
ツールはFigmaを使用していますが、それほど使い込んではいないです。あくまで本番はコーディングなので、Figmaでは出来上がりの雰囲気が確認できればOK。最も重要なページを2、3ページ作ったら、あとは開発を進めながらデザインも同時に考えていきます。
私がデザインで特に参考にしたのはRefactoring UIという教材です。シンプルなUIを作るためのルールが数多く紹介されています。
4. 技術選定
私はツール系の動的なアプリを開発することが多いのでReactを使っています。ただ、ランディングページはスタティックにしたいので、今ならSSGかSSRができるNext.jsやRemixといったフレームワークを採用するのがいいかと思います。
Frontend
- React → 不満なし、アプリ的なものから情報サイトまで何でも作れる
- JavaScript → TypeScriptを強く推奨
- Redux → 今ならZustandを選ぶ(ボイラープレートが少なく、学習コストが低い)
- Styled-components → 今ならTailwindを選ぶ(メンテナンス性が全然違う)
Backend
- Express → 特に不満なし
- MongoDB(Atlas) → 特に不満なし
Hosting
- Digital Ocean → ドキュメントが充実していて使いやすい
- Namecheap(ドメイン購入)
技術スタックに関してはそれほどこだわりはありません。ただ、一度決めたツールはコロコロ変えない方がいいとは思います。私は5年前に採用したいわゆるMERNスタック(MongoDB, Express, React, Node)からほとんど何も変えていません。個人開発ではあくまでユーザーに価値を届けることが重要なので、ツールはあくまで手段として捉えています。
5. 集客
市場調査でも書いた通り、メインの集客はGoogle検索(SEO)です。
とはいえ、あまり小手先のテクニックは採用していません。注力していることは「①少数の初期ユーザーを集める」ことと、「②リピート率を上げる」ことです。私の経験上、このサイクルがしっかり回るとGoogleにも認知されて検索ランキングも自然と上がることが多いです。
初期ユーザーの集め方ですが、これは色々なやり方があります:
- Product Huntにローンチする
- その他ローンチサイトに登録する
- スタートアップ系のSubredditに投稿する
この中で一番集客力があるのはProduct Huntですが、その分競争率も高いです。しっかりと準備をしてローンチに臨むことが大切です。他の類似サイトやRedditに関してはそれほど大きな集客は期待できませんが、とりあえず無料でできるので気軽に投稿しておいて損はないでしょう。
Google Adsの活用
ただ、初期ユーザーを集める上で私が最も効果的だと思っているのが「Google Adsで広告を出す」ことです。お金は掛かりますが、活用の仕方によってはかなり有効なツールになります。利点は:
- 本来の集客経路(Google検索)に似たユーザーが集まる
- 即時性があり、何度でも集客できる
- [1-2]により、計画的なユーザー分析が行える
- Google検索のランキング向上のきっかけになり得る(指名検索が増えるなど)
Google Adsを使ってプロダクトの改善サイクルを回している間に、[4]の効果で気付けばオーガニック流入が増えている、というのが理想の形です。PomofocusもLoopTubeも基本的にはこの形でユーザー数が増えていきました。(オーガニック流入が増え始めるのはキャンペーンを開始してから1~3ヶ月後くらいだと思います。)
6. ユーザー分析
ユーザー分析はリリース直後とそれ以降でやり方を分けています。
リリース直後はHotJarなどの画面トラッキングツールでユーザーの行動を一つ一つ分析します。見逃したバグがないか、ユーザーがどこで混乱しているか、などが調査できます。最初はユーザー数も少ないので、このやり方で十分対応できます。
ある程度アプリが安定してきたら画面トラッキングはやめて、Google Analyticsに切り替えます。
Google Analyticsも色んな機能がありますが、私が見るのは基本的に「ユーザー維持率 (User Retention Cohort)」のみです。「ユーザー維持率」は「ユーザーがファンになっているかどうか」がもっともシンプルに現れる指標だからです。
イベントログを仕込んで細かな指標を見るのもいいのですが、PMFを目指す段階ではほとんど気にしません。初期の分析では「プロダクトがユーザーに刺さっているかどうか」が一番大事なのであって、ステップ単位での細々した最適化は重視していません。
7. 収益化
基本的には「フリーミアム+広告」を採用しています。無料ユーザーには広告を表示して、有料ユーザーにはプレミアム機能を提供し、広告も外します。BtoCでは一般的な収益モデルかと思います。
人によっては広告を掲載することに抵抗があるかもしれませんが、BtoCのサービスであれば広告に頼らざるを得ないのが現実だと思います。私のアプリも収益の8割以上は広告収入で、プレミアム課金は微々たるものです。BtoCのユーザーは基本的に財布の紐は相当固いと思ってください(Pomofocusのプレミアム課金ユーザーは1,000人程度であり、全体の0.1%程度です)。
決済部分はStripeを使っています。開発者フレンドリーで非常に使いやすいです。広告についてはBuySellAdsを使っています。Google Adsenseでも良いのですが、ツール系のような動的なサイトは規約に引っかかることも過去にあったので、今は使っていません。
8. ユーザーサポート
ユーザーからのフィードバックは積極的に受け付けています。そこからバグの修正につながったり、プロダクトの改善につながることが多々あるからです。
連絡経路はTwitterとメールが基本です。Twitterはインスタントなやり取りができるのが利点です。サーバーが落ちたりするとTwitterで連絡が来ることがよくあります。一方、機能リクエストなどの長文はメールで来ることが多いです。
英語で個人開発する利点
私は日本語でアプリ開発することは少なくて、ほとんどが海外向けのサービスになります。それは「どうせWebでやるなら世界で」という気持ちの部分もありますが、実質的なメリットも多くあるからです。
英語で個人開発する利点:
- 単純にマーケット規模が大きい(国内の8倍と言われる)
- 収入はドルベースなので、円安の影響を受けにくい
- 周りに大物プレーヤーがたくさんいて刺激的
- 世界の技術トレンドに触れやすい
- 英語の勉強になる
- 世界中の開発者とつながれる
私は日本においても英語でサービス開発する人が増えればいいなと思っており、それがこの記事を書く動機にもなっています。
英語での開発は怖くない
英語でサービスを作るとなると、文法やスペルなどのミスを心配する方も多いかと思いますが、私は少々の不自然さや文法は気にせず作っていました。
英語のサービスとはいえ、全てのユーザーが英語ネイティブではありません。全体としてはインドや南米など、非ネイティブのユーザーの方が多いです。英語ネイティブは恐らく全体の半分以下でしょう。なので、英語に関しては完璧さを求める必要はないと思います。
そして今はAIで文章を自動生成できますので、なおのこと言語の壁はなくなっていると思います。
最後に
以上、私なりのWebサービスの開発ルーティンを紹介してみました。参考になれば幸いです。
もし、Webでの個人開発及び英語での開発に興味を持たれた方がいれば、まずはTwitterで海外の個人開発者をフォローしてみてはどうでしょうか。個人でやっているにも関わらず得ている収益が桁違いなので、良い刺激になると思います。
また、内容に関することなどでご質問があればXにてDMを頂ければと思います。
- 英語アカウント:https://x.com/uzu1989
- 日本語アカウント:https://x.com/uzu_tech
Discussion