0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Vercel から Netlify に移った理由 — Hobby TOS が staging 用途でも適用される問題

0
Posted at

この記事は約 5 分で読めます。

筆者プロフィール: ソフトウェアエンジニア。「知った気にならない。いつまでも学び続ける」を信条に、業務と個人開発の両輪で技術を磨いています。AI 駆動開発で複数の個人開発アプリを構築・運用中。
👉 ポートフォリオ: 筆者ホームページ

「Vercel Hobby は商用利用 NG」は知っていても、「staging 環境でも NG」 までは見落としがち。本記事では、運用中の SaaS 「たすきば Knowledge Relay」 で踏んだ TOS の罠と、Netlify 移行の判断を整理します。

サービスの機能紹介・画面イメージ・コンセプトは公式プロダクトページをご覧ください。
👉 たすきば Knowledge Relay — 公式プロダクトページ

当初の構成

MVP 段階では、ADR-0012 に従って次の構成にしていました。

レイヤ サービス プラン
アプリ Vercel Hobby (¥0)
DB Supabase Free (¥0)
Storage Supabase Storage Free (¥0)

Vercel Hobby を選んだ理由:

  • Next.js のデプロイが秒で完了する
  • preview デプロイが PR 単位で自動生成される
  • Edge runtime が標準サポート
  • 無料枠が個人開発には十分

Next.js + Vercel の鉄板構成 でした。


1. Vercel Hobby TOS の罠

商用化を視野に入れた段階で、Vercel の TOS をきちんと読み直しました。

Vercel Hobby Plan の Terms of Service には、こう書かれています (要約):

Hobby Plan は商用利用に使用してはならない。Non-commercial use only.

ここで「staging 環境なら大丈夫だろう」と思いがちです。私もそう思いました

しかし、Vercel TOS をさらに読むと:

商用プロジェクトの staging / preview / development 環境であっても、Hobby Plan の使用は禁止される。

つまり、「商用プロジェクトに紐づく環境はすべて Hobby NG」 という解釈になります。

これは多くの個人開発者が見落としがちな落とし穴。「本番は Pro にして、staging だけ Hobby で十分」という構成は、Vercel の TOS 上は NG なのです。


2. 選択肢 — Vercel Pro か Netlify か

Option A: Vercel Pro に移行する

項目 内容
本番 + staging + preview すべて Pro
月額 $20 / シート (個人開発では 1 シート想定)
年間 約 $240 (¥36,000 程度)

Option B: Netlify に移行する

項目 内容
プラン Starter (Free) でも 商用利用 OK
課金が必要 Personal プラン ($9/月) で十分
コスト Vercel Pro の半額以下

事業継続性のための課金」を貫きたいたすきばにとって、Vercel Pro の月額をそのまま支払うより、まず Netlify Starter (Free) で TOS リスクを即時解消し、必要に応じて Personal $9/月に昇格できる 選択肢の方が筋がよかった。

ということで、Option B (Netlify) を選びました


3. その後の経緯 — Starter → Personal 昇格

Starter (Free) は商用利用 OK だが、

制約 内容
credits 300/月 (= Production deploy 約 20 回)
MVP リリース直前の検証 + hotfix 枯渇した

そのため、Netlify Personal ($9/月) に昇格 (ADR-0023)。Vercel Pro ($20/月) の半額以下で、TOS 違反のリスクなく商用 SaaS として運用 できています。


4. Netlify 移行で変わったこと

良かったこと

項目 内容
商用 TOS の縛りなし staging / preview を堂々と使える (Starter / Pro いずれも商用 OK)
段階的な料金体系 Starter (Free) で TOS リスクを即時解消、Personal ($9/月) に昇格できた
Next.js 16 の対応 Netlify の Next.js Runtime v5 で十分動く
deploy preview の体験 Vercel と同様、PR 単位で preview URL が生成される

苦労したこと

詳細
outputFileTracingIncludes 未設定 standalone build で ENOENT (G-2 で詳説)
Set-Cookie 脱落問題 NextAuth useSession().update() が壊れる (E-3 で詳説)
build スキップ指定の罠 配置場所 / body 内生キーワード / squash merge main 持ち越し (G-1)
Linux Playwright Visual Regression [gen-visual] 空コミットによる baseline 再生成が必要 (H-2)

これらの罠は、Vercel から Netlify に移行する人はほぼ確実に遭遇 します。


5. 結論 — Vercel をインフラ選択肢から完全に外す

たすきばは現在、Vercel をインフラ選択肢から完全に外しています。

理由 内容
TOS Hobby TOS が staging 用途でも適用される問題
cron 制約 Vercel Hobby の cron は最小間隔「1 日 1 回」(G-3 で詳説)
コスト Netlify Personal ($9/月) が Vercel Pro ($20/月) の半額以下

個人開発で商用化を視野に入れる場合、最初から Netlify にすべき だったというのが、今振り返っての結論。


6. staging 用途でも商用 TOS が適用されるのは Vercel だけか?

これは Vercel に限った話ではありません。ほとんどの PaaS の「Hobby / Free Plan」には、何らかの商用制限 が含まれています。

PaaS 商用制限
Vercel Hobby 商用利用 NG (staging 含む)
Heroku Eco/Basic 過去には類似制限あり
Railway Trial 一定期間後に有料化必須
Render Free サービス可用性に制限 (15 分でスリープ等)
Netlify Free 商用利用 OK、ただし帯域 / ビルド時間に上限

「商用利用 OK の無料枠」というのは、実は珍しい。Netlify Free は、その意味で 個人開発に最も友好的な選択肢の 1 つ です。

個人開発者は「無料で使える」だけで判断せず、TOS の商用制限を必ず確認 すべきです。


おわりに — 無料枠を選ぶときは性能ではなく TOS を読む

無料枠を選ぶときは、性能ではなく TOS を読む。

これは、個人開発で SaaS を作る人すべてに伝えたい教訓です。

無料枠の性能 / 制限は、サービスのドキュメントに書かれている。しかし TOS は、別ページ (たいてい footer の小さなリンク) にあり、誰も読まない。そして TOS 違反は、サービスを止められる根拠 になります。

動くか動かないか」と「使っていいか悪いか」は、別軸。

判断ポイント 学んだこと
無料枠の選定 性能だけでなく TOS を読む
商用化視野 staging / preview も商用 TOS 対象
ホスティング (検証期) 商用利用 OK の Netlify Starter (Free)
ホスティング (本番運用) credits 制約で Netlify Personal ($9/月) に昇格
移行コスト Netlify 特有の罠は事前に把握しておく

たすきばは、この判断を経て 今日も Netlify Personal で動いて います。

これで C 章 (アーキテクチャ全体) は完結。次回から J / L / M 章 に入ります。

本記事の判断は、運用中の SaaS 「たすきば Knowledge Relay」 で実際に経た経緯です。
👉 たすきば Knowledge Relay — 公式プロダクトページ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?