連載の現在地:Phase 1「公開」(2 / 4本目) — まずは小さく安全に世に出す
1. 公開 → 2. 費用と安定 → 3. 安全 → 4. 品質 → 5. 自動化

こんな悩みの人へ

作ったアプリが使われるかどうか分からないのに、毎月サーバー代がかかっている。画像やファイルの置き場所、データベースと、別々の料金が積み上がっていく。無料で使えるサービスは多いけれど、どこから有料になるのかが分からなくて怖い。この記事は、そんな方のために書きました。

結論

アクセスが少ないうちは、CloudflareのWorkers・D1・R2・KVの無料枠で動かせることが多いです。アプリ本体はWorkers、データベースはD1、画像やファイルはR2、設定値やキャッシュはKVに置きます。

有料プラン(月5ドルから)に切り替える目安は、1日10万リクエストに近づいたときか、1回の処理が重く、CPU時間の上限(10ミリ秒)に当たるときです。

なぜホスティング費用は膨らむのか

ホスティング費用が膨らむ理由は、3つあります。

まず、使われていない時間にも費用がかかります。一般的なサーバーはアクセスがゼロでも月額がかかりますが、個人開発では、使われていない時間のほうが長いのが普通です。

次に、部品ごとに別の請求が来ます。サーバー、データベース、ファイル置き場、ドメインを別々に契約すると、1つずつは安くても、合計は膨らみます。

そして見落としがちなのが、転送量の料金です。画像や動画を配信するアプリでは、データを外へ送る量(egress)に課金されるサービスがあります。アクセスが増えたときに、ここで想定外の請求になりがちです。

解決策の比較

方法

費用の目安

手間

向いている状況

Cloudflare(Workers + D1 + R2 + KV)

無料枠あり。Workers Paidは月5ドル〜、R2などの利用料は別枠

少ない

API中心のアプリ。画像やファイルを配信する

Vercel・Netlifyの無料枠

無料から。商用利用の条件はサービスごとに異なる

少ない

Next.jsなどで画面を作り込む。プランごとの条件に注意

Supabase・Firebaseの無料枠

無料から

少ない

認証やリアルタイム機能をまとめて使いたい

安価なVPS

月数百円〜

多い

常駐プロセスや、自由な構成が必要

どれを選ぶか

選ぶ前に、無料枠の量と、商用利用ができるかどうかは分けて確認しておきます。たとえばVercelのHobbyは非商用の個人利用向けですが、NetlifyのFreeは商用プロジェクトにも利用できます。

画像やファイルの配信が多いなら、Cloudflareが向いています。R2は、外部へのデータ転送に課金されないためです。ログインやリアルタイム同期を一式で使いたいならSupabase・Firebase、Next.jsで画面の作り込みが中心ならVercelなどが候補になります。常に動かし続ける処理がある場合は、VPSを選びます。

手順

1. 無料枠を表で把握する

2026年11月時点の、主な無料枠です。

機能

用途

無料枠(主なもの)

Workers

アプリ本体

1日10万リクエスト、HTTPリクエスト1件あたりCPU時間10ミリ秒

D1

データベース

1日500万行の読み取り、10万行の書き込み、合計5GB

R2 Standard

画像・ファイル

毎月10GB月の保存、Class A 100万回、Class B 1,000万回。外部への転送は無料

KV

設定値・キャッシュ

1日10万回の読み取り、1,000回の書き込み、1GB

WorkersのStatic Assetsから直接配信されるファイルへのリクエストは、無料で回数制限もありません。Workerの処理を先に通す設定などでコードが実行されると、そのWorker実行分は課金や制限の対象です。R2の無料枠はStandardストレージのみが対象です。D1・KVの枠はアカウント内で共有するため、アプリごとに全量を使えるわけではありません。

2. 機能ごとに置き場所を決める

画面(HTML・CSS・JavaScript)はWorkersの静的アセットとして配信し、APIの処理はWorkersに書きます。ユーザーや投稿などのデータはD1に、ユーザーがアップロードした画像はR2に置きます。頻繁に読むけれど、めったに変えない設定値には、KVが向いています。

KVは書き込みの無料枠が1日1,000回と少ないので、頻繁に書き換えるデータはD1に置きます。

全体を図にすると、次のようになります。

[ブラウザ]
   |
   +-- 画面(HTML・CSS・JS) --> Workersの静的アセット   無料・回数制限なし
   |
   +-- API(/api/...) -------> Workers(アプリ本体)    1日10万リクエストまで無料
                                 +--> D1   ユーザー・投稿などのデータ
                                 +--> R2   アップロードされた画像(外部への転送は無料)
                                 +--> KV   めったに変えない設定値

3. 利用状況を見る場所を覚える

Cloudflareのダッシュボードで、Workersや各機能のページを開くと、リクエスト数や読み書きの回数をグラフで確認できます。無料枠の上限に対して、どのくらい使っているかを月に一度見ておきます。

4. 有料プランへの切り替えを判断する

1日のリクエスト数が10万件の上限に近づいてきたとき、処理が重くてCPU時間の上限エラーが出るとき、あるいは有料プラン限定の機能(一部のWorkers AIのモデルなど)を使いたくなったときが、Workersの有料プラン(月5ドル〜)を検討するタイミングです。

有料プランにも、月1,000万リクエストなどの大きな枠が含まれています。超えた分だけが追加で課金されます。

5. 請求アラートを設定する

従量課金を使う場合は、ダッシュボードの「Manage Account」→「Billing」→「Billable Usage」で「Create budget alert」を選び、通知する金額とメールアドレスを設定します。Budget alertsはPay-as-you-goアカウントが対象です。通知は利用の停止や請求額の上限設定ではないため、使いすぎを止める制限は別に設けます。

更新日:2026-11-03

つまずきやすい点

R2は転送量が無料でも、操作の回数は数えられます。ファイルの書き込みや一覧の取得(Class A)と、読み取り(Class B)には、それぞれ無料枠と料金があります。

CPU時間にも注意が必要です。Workers Freeの上限は、HTTPリクエスト1件あたり10ミリ秒です。外部APIの通信待ちは含みませんが、JSONの解析や画像加工などのCPU使用量は、データ量と実装で変わります。実測したうえで、有料プランや処理の分割を検討してください。

Workers AIの一部のモデルは、2026年7月から有料プラン限定になりました。無料プランから呼ぶとエラーになるので、使うモデルを確認しておきます。

最後に、LLMのAPI料金は別です。ホスティングを無料にしても、AIの利用料は別にかかります。

この記事のまとめ:個人開発のホスティング費用を抑えたい。悩み:小さく安く公開したい、保存先が増えて複雑、いつ有料にする?。解決の流れ:機能を分ける→適した保存先を選ぶ→利用量を見て判断。進め方:無料枠を把握→機能の置き場所を決める→利用状況を見る→有料化と通知を判断。つまずきやすい点:無料枠は無制限ではない、LLM料金は別枠、通知だけで停止はしないこの記事のまとめ:個人開発のホスティング費用を抑えたい。悩み:小さく安く公開したい、保存先が増えて複雑、いつ有料にする?。解決の流れ:機能を分ける→適した保存先を選ぶ→利用量を見て判断。進め方:無料枠を把握→機能の置き場所を決める→利用状況を見る→有料化と通知を判断。つまずきやすい点:無料枠は無制限ではない、LLM料金は別枠、通知だけで停止はしない

次に出やすい悩み

費用の見通しが立ったら、次は公開の手順や、誰に見せるかが気になり始めます。ホスティングとは別にかかる、LLMのAPI料金も見逃せません。公開の手順そのものをまだ決めていないなら「AIアプリをサーバー管理なしで公開したい」を、公開する範囲を関係者だけに絞っておきたいなら「デモを社内や特定の人だけに見せたい」をどうぞ。ホスティングは無料でもAIの利用料が読めない場合は、Phase 2の「LLM APIの請求額が読めない」で対策を整理しています。


「自分のアプリのアクセス数で無料枠に収まるか」「R2やD1の設計がこれで合っているか」など、公開前の構成チェックはCloudflareインフラ構築でご相談いただけます。

よくある質問

Q. Cloudflareの無料枠を使えば、AIアプリ全体を無料で運用できますか?

ホスティングの無料枠と、外部LLM APIの料金は別です。保存や通信、データベースの操作にも、それぞれの無料枠と制限があります。アプリの機能ごとに費用を分けて確認し、ホスティングだけを見て全体の予算を判断しないようにします。

Q. R2は転送量が無料なら、保存やファイルの操作も無料ですか?

保存容量や操作の回数には別の料金条件があります。R2 Standardでは保存量に加え、書き込みや一覧取得などのClass A、読み取りなどのClass Bの操作数を確認します。無料枠の対象や条件はR2の料金ページで確認してください。

Q. D1とKVは、どのように使い分ければよいですか?

本文の構成では、利用者や投稿などのデータはD1へ、頻繁に読む一方で更新が少ない設定値はKVへ置きます。KVには変更が他の拠点へ反映されるまでの時間差があります。更新頻度や整合性の要件を、無料枠の大きさとあわせて確認してください。

Q. 無料プランから有料プランへ切り替える目安は?

実際のリクエスト数やCPU時間が上限に近づくとき、制限によるエラーが出るとき、有料プラン限定の機能を使うときが検討の目安です。利用量を測り、処理の分割や構成の見直しとも比較します。請求アラートは通知なので、費用を止めたい場合は別に利用上限を設計します。

執筆者情報

パブロフ株式会社

IT顧問、AI・業務アプリ開発、SESを通じて、企業のIT活用を支援しています。代表の藤澤 昌隆は、2007年からシステム開発・運用に携わり、アクセンチュアでの業務ITコンサルティングを経て、2019年にパブロフ株式会社を設立しました。

AI活用の支援事例として、営業工程を支える7つの業務別AIアプリの構築を公開しています。アプリの開発に加え、入力・出力の形式、評価基準、テストケースの整備にも取り組んでいます。

記事の内容に関するご質問や誤りのご指摘は、お問い合わせ窓口へお寄せください。

参考資料