Cloudflare Workers有料プランに課金したら月¥750で¥25,750分の機能が解放された話【個人開発者向け】
昨日、Cloudflare Workers の Paid プランに切り替えました。
月額 $5、日本円にして約 ¥750 です。
ところでCloudflareはPayPalが使えるの便利でいいですね。
最近の話だと、日本のクレジットカード、海外のサービスで利用停止になったりしませんか?
日本のクレジットカードはいろんな意味で闇が深いと最近感じます。。。
それはそうと、Cloudflare、課金するまで少し迷っていました。
Cloudflareは無料枠が非常に厚く、ほとんどの人が無課金でかなりのことができるわけですから、個人開発の初期フェーズで固定費を増やすことへの抵抗感もありましたし、「Free プランで十分じゃないか」という気持ちもありました。
でも切り替えた瞬間に、その迷いが完全に消えたのでシェアしていきます。
解放された機能の一覧を見たとき、これは「Worker のサイズ上限が増えるプラン」ではなくて、「向こう 2 年間で実装したいすべての機能を、追加契約なしで作れる権利」だと気づいたからです。
今日はその話を書きます。
Cloudflare Workers Paid とは何か
Cloudflare Workers は、サーバーレス関数をエッジで実行できるプラットフォームです。
世界 300 箇所以上のデータセンターで動くので、ユーザーの近くで処理が走ります。
レイテンシが下がり、サーバーを自前で持つ必要もありません。
Free プランでも十分強力なのですが、Paid プランに上げると別世界が開きます。
月 $5 という価格設定は、正直 Cloudflare が何を考えているのか少し心配になるくらい安いです。
解放された機能と、空音開発での使い道
🔑 Durable Objects|状態を持つ唯一のサーバー
Cloudflare の中で唯一「状態を持てる」サービスです。
Free プランでは一切使えません。
通常のサーバーレス関数はリクエストのたびに起動して終了するので、状態を保持できません。
Durable Objects はその制約を突破して、WebSocket の接続を維持したり、複数のユーザーが同じリソースに同時アクセスするときの整合性を保ったりすることができます。
例えば筆者が2026年から取り掛かっている空音開発では特にこの用途で使います。
- KUON SCORE FOLLOWER のリアルタイム楽譜追従(WebSocket)
- ライブイベントの座席予約・ロック機能
- 複数人が同時に編集するレッスンノート
- 「いまオンラインで練習している人」のリアルタイム表示
これがないと、KUON SCORE FOLLOWER はそもそも作れませんでした。
リアルタイムで楽譜をスクロールしながら演奏者の位置を追従するという機能は、状態を持てるサーバーなしには実現できないからです。
🖼️ Cloudflare Images|画像最適化エンジン
アップロードされた画像のサムネイル自動生成、レスポンシブ最適化、リサイズ、OGP 画像の自動生成といった処理をすべて Cloudflare 内で完結させられます。
これ単体で Imgix(月 ¥3,000〜)の代替になります。
空音開発での具体的な用途としては、ギャラリー投稿のサムネイル自動生成(現在は R2 に raw 保存しているもの)、マイク商品写真のレスポンシブ最適化、ユーザーアバターのリサイズ、イベント告知画像の自動 OGP 生成を考えています。
現在 R2 に raw 画像をそのまま保存している部分を、Cloudflare Images に移行するだけで表示速度とストレージコストの両方が改善できます。
🎬 Stream|動画ホスティング
$1 / 1,000 分視聴、$5 / 1,000 分保存という従量課金の動画配信サービスです。
YouTube に動画をアップロードすると、広告収益の 40% 以上が YouTube 側に取られます。
Stream を使えば手取り 100% で動画コンテンツを配信できます。
視聴者に広告を見せることなく、クリーンな体験のまま収益化できるのも大きいです。
空音開発での用途として考えているのは、月 1 回のオンラインクリニックのアーカイブ配信、各アプリのチュートリアル動画、マイク試聴の動画版、将来的なレッスン動画の有料配信です。
特にオンラインクリニックのアーカイブは、有料会員への限定コンテンツとして設計しているので、YouTube では配信できません。Stream があることで初めて実現できる機能です。
例えば、Viemoなんかと比較すると。
60分のオンラインクリニック動画を1本保存した場合、
60分×1000分$5=$0.30/月
それを100人が全編視聴した場合、60分×100人=6,000分視聴
6,000分×1,000分$1=$6
つまり保存$0.30+視聴$6で、合計約$6.30(約¥950) で100人への配信が完結します。
Vimeo Proが月¥3,500固定であることを考えると、視聴者が少ない初期フェーズではCloudflare Streamの方が圧倒的に安いですね。
視聴者が増えるほど従量課金が乗ってきますが、それはそれだけ収益も上がっているタイミングなので、構造として健全です。
これは4Kでアップした方がお得!と感じた方も多いのではないでしょうか。
残念ながら、FHDに変換されます。。。
📨 Queues|非同期ジョブキュー
Free プランでは使えない非同期処理の仕組みです。
重い処理をバックグラウンドで順番に実行するためのキューで、現在 Replicate の webhook で繋いでいるような設計のアプリのジョブ管理をより堅牢な構造に移行できます。
失敗したジョブの自動リトライ、処理の順序保証、バックプレッシャー制御が実現できます。
大量メール送送信や毎月のレポートバッチ処理にも使えます。
🧠 Vectorize|ベクトル検索データベース
AI 機能の核になる部分です。
テキストや音楽データを数値ベクトルとして保存し、「似ているもの」を高速に検索できるデータベースです。
Pinecone という専門サービスでは月 $70(約 ¥10,500)かかりますが、 Cloudflare のエコシステム内で使えます。
空音開発での用途として、「この Bach コラールに似た進行の曲を推薦する」機能、「あなたの練習傾向に近い学生」のマッチング、楽譜のフレーズベース類似検索を考えています。
Pinecone の Starter プランは月$70(約¥10,500)で、インデックス数やベクトル数に上限があります。Vectorize は Workers Paid の$5の中に含まれていて、インデックス数は最大50,000個まで作れます。
| 比較 | Cloudflare Vectorize | Pinecone Starter |
|---|---|---|
| 月額 | Workers Paid(¥750)に込み | $70(約¥10,500) |
| インデックス数 | 最大50,000 | 最大20 |
| ベクトル数上限 | 最大500万/インデックス | プラン依存 |
| エグレス料金 | なし | あり |
⚡ Workers AI|エッジで AI 推論
Llama 3、Whisper、Stable Diffusion といったモデルをエッジで直接実行できます。
Workers AI とは何かと言うと、GPUを自分で持たずにAI推論がエッジで実行できるサービスです。
通常、AIモデルを動かすにはGPUサーバーを用意するか、OpenAIやReplicateのようなAPIサービスに課金する必要があります。
Workers AIはCloudflareの世界190箇所以上のデータセンターに置かれたGPUを、APIコール一発で使える仕組みです。
2025年4月時点で97モデルが使えます。
カテゴリ別に整理するとこうなっています。
テキスト生成として、Llama 4 Scout、Llama 3.3 70B、Llama 3.2シリーズ、DeepSeek-R1、Gemma 3/4、Mistral、Qwen3、GPT-oss(OpenAI)、Kimi K2(Moonshot AI)などが使えます。
音声認識(Speech-to-Text)として、Whisper、Whisper Large v3 Turbo、Deepgram Nova-3が使えます。
テキスト読み上げ(Text-to-Speech)として、MeloTTS、Deepgram Aura-1/2が使えます。
画像生成として、FLUX.1 Schnell、FLUX.2、Stable Diffusion XLなどが使えます。
テキスト埋め込み(Embedding)として、BGE Small/Base/Large、BGE-M3、Qwen3 Embeddingなどが使えます。
VectorizeとセットでRAG(検索拡張生成)を構築できます。
翻訳として、M2M100が使えます。
6ヶ国語対応の空音開発にとって直接使える機能です。
料金の仕組み:「Neurons」という単位
Workers AIはNeurons(ニューロン)という独自の単位で課金されます。
GPUの計算量を抽象化した単位で、モデルや処理の重さによって消費量が変わります。
料金=$0.011÷1,000 Neurons
1日あたり10,000 Neuronsが無料で、Workers Paidプランでもこの無料枠は毎日リセットされます。
超過分のみ従量課金になります。
例えば、Whisperで音声文字起こしをする場合、料金は$0.0005 / 音声1分です。
100分の音声×$0.0005=$0.05(約¥7.5)
100分の音声文字起こしがわずか¥7.5でできます。
Replicateで同じ処理をすると数倍のコストになります。
Llama 3.2 3Bでテキスト生成をする場合、
入力:$0.051÷100万トークン
出力:$0.335÷100万トークン
月に100万トークン処理しても$0.39(約¥58)という水準です。
📧 Email Workers|受信メールをコードで処理
届いたメールをプログラムで処理できる仕組みです。
自分のドメインに届いたメールをコードで処理できる仕組みです。
「メールが届いたら何かする」という処理を、サーバーもメールサーバーも持たずに、Cloudflare Workers のコードだけで書けます。
個人的にはマイク販売の合理化。
ヤマト追跡番号の自動取り込みが一番インパクトがある使い方です。
マイクを発送すると、ヤマト運輸から追跡番号通知メールが届きます。
このメールをEmail Workerで受け取り、本文から追跡番号を正規表現で抽出して、D1に保存して顧客に自動転送するという処理が全部コードで完結します。
マジックリンクのバウンス処理も実用的です。送ったマジックリンクのメールが届かなかった場合、バウンス通知メールがEmail Workerに届くので、自動でユーザーの登録メールアドレスにフラグを立てて、再登録を促す別のメールを送るという処理が自動化できます。
顧客サポートの自動振り分けとして、support@あなたのドメインに届いたメールの件名や本文をWorkers AIで分析して、「技術的な質問」「支払い関連」「解約希望」に自動分類してSlackの適切なチャンネルに通知するという設計も可能です。
Workers AIと組み合わせることで、メールの内容を読んで判断するという処理まで自動化できます。これがCloudflareのエコシステムが一気通貫している強さで、外部サービスを一切使わずに全部繋がります。
例えば、SendGridやMailgunのようなメール配信サービスは月額固定費がかかり、APIキーの管理も必要です。
Cloudflare Email WorkersはWorkers Paidの¥750の中に含まれていて、APIキーも不要です。
受信処理については、SendGridやMailgunにも「Inbound Parse」という似た機能がありますが、そちらはWebhook経由で別サーバーに飛ばす必要があります。
Email WorkersはCloudflare内で完結するので、レイテンシも低く構成もシンプルです。
今の空音開発の規模であれば、メール周りの処理をすべてEmail Workersに集約することで、外部メールサービスへの依存をゼロにできます。
🗄️ D1|エッジ SQL データベース
SQLite ベースの SQL データベースです。
Free プランでも触れますが、Paid で実用的な規模になります。
KV(Key-Value ストア)では「今月最も練習した学生 TOP 10」のような集計クエリが取れません。
D1 があれば複雑な条件での検索や集計が可能になります。
練習ログの集計クエリ、イベント検索(緯度経度・ジャンル・日時の複合条件)、教師ダッシュボードの紹介学生分析です。
将来的に KV から D1 への段階移行も視野に入れています。
🔄 Hyperdrive|外部 DB をエッジでキャッシュ
PostgreSQL や MySQL のような外部データベースへのアクセスをエッジでキャッシュする仕組みです。
今すぐ必要ではありませんが、将来 PostgreSQL に乗り替えた場合の「逃げ道」として確保された形です。
スケールアップの選択肢が増えるという意味で、今の段階から存在を知っておく価値があります。
📊 Analytics Engine|時系列メトリクス
各アプリの使用回数を秒単位で記録してダッシュボード化できます。
MRR 予測のためのコホート分析、A/B テストの効果測定、どの機能がどの時間帯に最も使われているかの把握といった用途に使えます。
有料会員の行動データを蓄積して、プロダクトの改善判断に活かせる基盤になります。
⏰ Cron Triggers(拡張)|スケジュール実行
LinuxのCronジョブをご存知であれば、まったく同じ概念です。
ただしサーバーを持たず、Cloudflareのインフラ上で世界規模で動きます。
ここが重要な部分です。
| Workers Free | Workers Paid | |
|---|---|---|
| アカウント全体のCron数 | 5個 | 250個 |
| CPU時間(1時間未満の間隔) | 10ms | 30秒 |
| CPU時間(1時間以上の間隔) | 10ms | 15分 |
| 最大実行時間(wall time) | 15分 | 15分 |
FreeプランのCPU時間10msというのは、実質的に「ほぼ何もできない」水準です。
console.logを数回実行したら終わりです。Paidに上げて初めて、実用的なバッチ処理が書けるようになります。
非アクティブユーザーへのウィンバック処理も有効で、例えば7日間ログインがないユーザーに「最近どうですか?」というメールを自動送信する仕組みなどにも使えます。
経営管理にも最適で、例えば、毎月レベルの処理としてMRRレポートの自動生成があります。
月初にStripeのAPIを叩いて先月の売上、新規会員数、解約数をAnalytics Engineに記録して、自分にサマリーメールを送る設計も可能で、経営指標の把握が自動化されます。
月次バッジの付与も面白いです。
「今月30日連続ログイン」といった月次実績を自動集計してバッジを付与し、SNSシェアを促す仕組みが作れます。
他にも季節・記念日キャンペーンの自動発動として、クリスマス、新年、バレンタインなどの特定日時になったら自動でクーポンコードを発行してメルマガを送る設計も可能。
限定販売の時間制御として、「24時間限定販売」を設定して、販売開始と販売終了を自動化ももちろんできます。
希少性を演出するマーケティング施策ですね。
コンテンツの時限公開なども、有料会員向けに「毎週月曜に新しいレッスン動画が解放される」という設計をCron Triggersで完全自動化できます。
Cloudflare StreamとD1を組み合わせるだけで、NetflixやUdemyが採用しているドリップコンテンツ配信が実現可能。
例えば、トライアルの期限切れ処理の自動化もできますので、これは非常に重要です。
Cron Triggersで自動化することで、会員数が1万人になっても同じコードで動き続けます。
これがないと作れなかったアプリが 3 本以上ありました
Workers Paid に上げて改めて気づいたことがあります。空音開発のロードマップを見直すと、Free プランのままでは技術的に実現不可能だったアプリが 3 本以上あったということです。
| アプリ | 必要な機能 | Free でできた? |
|---|---|---|
| KUON SCORE FOLLOWER | Durable Objects(WebSocket) | 不可能 |
| KUON LIVE COLLAB(将来) | Durable Objects | 不可能 |
| 月 1 オンラインクリニック配信 | Stream | 不可能 |
| KUON RECOMMENDER(楽曲推薦) | Vectorize | 不可能 |
| 練習ランキング機能 | D1 集計クエリ | 実用に堪えない |
「$5 で何が変わるの?」という問いへの答えが、このテーブルに全部入っています。
競合サービスで同じセットを揃えると
同じ機能を個別の SaaS で契約したらいくらになるか、比較してみました。
| Cloudflare で含まれるもの | 競合の相当サービス | 月額相当 |
|---|---|---|
| Workers 10M リクエスト | AWS Lambda + API Gateway | ¥3,000〜4,000 |
| Cloudflare Images 5,000 変換 | Imgix Starter | ¥3,000 |
| Vectorize 30M 操作 | Pinecone Starter | ¥10,500 |
| Durable Objects | AWS DynamoDB + Lambda | ¥2,000〜 |
| Stream(動画配信) | Vimeo Pro | ¥3,500 |
| D1 SQL DB | Supabase Pro | ¥3,750 |
| 合計(個別契約) | ¥25,750〜 | |
| Cloudflare Workers Paid | ¥750 |
¥750¥25,750≈34 倍
約 34 倍のコスト差があります。
これが Cloudflare のエコシステム戦略の本質です。
一度エコシステムに入ると外部 SaaS への依存を大幅に減らせる設計になっていて、月商が伸びてもインフラコストが MRR の 2〜3% 以内に収まる構造が作れます。
個人開発者やスタートアップの初期フェーズにとって、これは単なるコスト削減ではありません。
外部サービスへの依存を減らすことで、価格改定やサービス終了のリスクを最小化できるという設計上の強さでもあります。
注意点も正直に書いておきます
$5 は基本料金であって、使い方によって従量課金が乗ってきます。
Stream は視聴分数、Workers AI は推論回数、R2 はストレージ保存量でそれぞれ課金されます。
スケールしてきたタイミングで数字を確認する習慣は必要です。
また、バンドルサイズが 9.9 MiB とギリギリの場合は、健全なラインである 5〜6 MiB に下げる作業は必要です。
これは Paid に上げても解決しない別の課題です。
大規模 DDoS 対策が必要になった場合は Cloudflare Pro($20/月)への移行も視野に入れる必要がありますが、現時点の規模では考えなくていいと思っています。
ただしこれは攻撃対象になるくらい有名になってから考える話です。
まとめ
Vectorize も Stream も Durable Objects も、すべて Cloudflare 内で完結します。
外部 SaaS を増やさずに済むので、月商が伸びてもインフラコストを MRR の 2〜3% 以内に抑えられる設計が維持できます。
個人開発者として、インフラコストを最小化しながら技術的選択肢を最大化したいという気持ちは常にあります。
Cloudflare Workers Paid はその答えとして、今のところ最も納得感のある選択です。
¥750 で迷う理由が、正直見当たりません。
同じような構成でプロダクトを作っている方がいれば、ぜひ参考にしてみてください。