Vercel と Cloudflare Pages の比較
無料枠の性質が正反対。Vercel Hobby は非商用限定で超過すると従量課金、Cloudflare Pages は商用可で帯域無制限。Next.js 以外なら Cloudflare Pages を選ばない理由が乏しい。
主要な差分
解説と実務上の注意
無料枠の思想が正反対
同じ「無料でホスティングできるサービス」ですが、無料枠の設計思想が逆を向いています。
Vercel Hobby は非商用限定です(commercial_use_allowed: conditional — Hobby: no / Pro 以上: yes)。個人利用は歓迎するが、収益が出るなら払ってほしい、という設計です。広告掲載、アフィリエイト、クライアントへの納品はいずれも商用に該当し得ます。
Cloudflare Pages は全プランで商用利用可、しかも帯域無制限です(commercial_use_allowed: yes)。Cloudflare の本業は CDN であり、帯域は原価構造上ほぼ負担になりません。だから無制限にできます。この差は「太っ腹かどうか」ではなく事業モデルの違いから来ているので、今後もそう簡単には変わりません。
請求が跳ねるリスクが構造的に違う
これは実務でかなり重要です。Vercel は無料枠を超えると従量課金に移行します。 記事がバズった、クローラーに集中的に叩かれた、画像最適化が想定以上に走った — こうした事象がそのまま請求額に反映されます。「個人サイトで高額請求」という事故は、この課金モデルに固有のものです。
Cloudflare Pages は帯域で課金されません。 トラフィックが跳ねても帯域分の請求は発生しません(Workers の実行回数など、別の軸には制限があります)。請求額の予測可能性という一点において、Cloudflare Pages は明確に優位です。
Vercel を使うなら、運用開始時に使用量上限とアラートを必ず設定してください。これは推奨ではなく必須の作業です。
では何が Vercel を選ぶ理由になるか
Next.js です。それ以外にはほとんどありません。
Next.js は Vercel が開発しているフレームワークで、新機能が最初に、かつ完全な形で動くのは Vercel 上です。ISR、Image Optimization、Middleware、App Router の細部まで、公式が想定した通りに動きます。Cloudflare Pages でも Next.js は動きますが、アダプタを経由するため最新機能の対応にラグが出ることや、エッジランタイムの制約で一部機能が使えないことがあります。
Next.js の込み入った機能に依存しているなら、Pro の月額はその互換性に対する対価として合理的です。
逆に、Astro / SvelteKit / Hugo / 素の静的サイトのような構成なら、Vercel を選ぶ技術的な理由はほぼ見当たりません。 商用利用が無料で許され、帯域が無制限で、請求が跳ねない Cloudflare Pages のほうが条件が良い。
動的処理を足すときの発想が違う
静的配信の先に動的処理を足す段階で、設計の考え方が分かれます。
Cloudflare Pages は Workers と地続きです。KV(結果整合のストア)、Durable Objects(強整合)、D1(SQLite)、R2(オブジェクトストレージ)、Queues が同じ環境に揃っており、エッジで完結する構成を組みやすい。 ただし Workers は V8 isolate 上で動くため Node.js の常駐サーバーではなく、CPU 時間の制約があり、一般的な Node アプリをそのまま移植することはできません。
Vercel はサーバーレス関数と Edge Functions の2階建てで、Node.js のコードをそのまま動かせる範囲が広いのが利点です。既存の Node 資産を持ち込むなら Vercel のほうが摩擦が少ない。
Cron
定期実行はどちらも可能ですが、Vercel Hobby は1日2回までに制限されます(cron_available: conditional)。Cloudflare は Workers の Cron Triggers を無料プランでも使えます(cron_available: yes)。無料枠で定期実行を回したいなら Cloudflare です。
権利
| 項目 | Vercel | Cloudflare Pages |
|---|---|---|
commercial_use_allowed |
条件付き | 可 |
制約
| 項目 | Vercel | Cloudflare Pages |
|---|---|---|
api_available |
可 | 可 |
cron_available |
条件付き | 可 |
custom_domain_available |
可 | 可 |
webhook_available |
可 | 可 |
結論:どちらを選ぶべきか
Cloudflare Pages を選ぶべきケース — Next.js 以外のフレームワークを使う、無料のまま商用利用したい、請求が跳ねるリスクを避けたい、帯域を多く使う(画像・動画)、無料で定期実行したい。
Vercel を選ぶべきケース — Next.js の最新機能に深く依存している、Node.js のコードをそのまま動かしたい、Pro の月額を払う前提がある。
注意 — Vercel Hobby のまま収益化しないでください。規約上の非商用限定であり、広告・アフィリエイト・受託納品はいずれも該当し得ます。Vercel を使うなら使用量アラートの設定を運用開始時に必ず行ってください。