先に、要点をまとめます。
- Next.js・Supabase・Vercelの3点セットは、一覧・検索・帳票・申請承認が中心の社内業務システムには合わせやすい組み合わせです。ただし常駐処理、閉域接続、既製SaaSで足りる要件には向きません。
- VercelとSupabaseの連携作業そのものは難所ではありません。設計の本丸はSupabaseのRLS(行レベルのアクセス制御)と権限方針で、有効化しただけでは完成せず、操作ごとのポリシー作成と検証が前提です。
- 「無料枠のまま本番運用できる」は誤解です。VercelのHobbyプランは公式に非商用・個人利用へ限定されており(2026年9月23日時点)、商用の業務システムは有料プランと従量課金を前提に費用を組み立てます。
この記事は2026年9月23日時点の公式情報をもとに整理しています。料金・提供条件は変わるため、採用の直前には各社の公式ページで再確認してください。
Next.js・Supabase・Vercelはそれぞれ何をする?
Next.jsが画面とサーバー処理、Supabaseがデータベースと認証、Vercelが公開と実行基盤を担当します。
3つは競合ではなく役割が分かれています。発注側がまず押さえるべきなのは「どこが何を持つか」と「それぞれで何を確認するか」です。
| 要素 | 担当する範囲 | 発注時に確認すること |
|---|---|---|
| Next.js | Web画面とサーバー側の処理 | 認証・入力検証・更新処理をどこで行うか |
| Supabase | データベース、認証、API等 | 権限(RLS)、接続方式、バックアップと復元 |
| Vercel | 公開、実行、配信等 | 実行時間の上限、ログ保持、利用量と支出上限 |
役割が分かれているぶん、各社の得意分野に乗れるのが利点です。一方で、権限設計やバックアップの責任をサービス側が自動で肩代わりしてくれるわけではありません。採用する機能は案件ごとに変わるため、Next.js公式、Supabase公式、Vercel公式を機能ごとに確認します。
Next.jsはどのバージョンを選ぶべきか?
新規に立ち上げるならActive LTSの系統を選び、Maintenance LTSへ移る時期まで含めて計画します。
既存システムを移行したいについて相談する老朽化した業務システム、限界がきたSaaS、連絡の取れない開発会社が作ったシステムを、業務を止めずに引き取って作り変える受託開発既存システムを移行したいを見る →Next.js公式のサポートポリシーでは、Active LTS(新機能・バグ修正・性能改善・セキュリティ修正が入る)とMaintenance LTS(重要なバグ修正とセキュリティ更新のみ、初回リリースから2年)が区分されています。2026年9月23日時点では16.x系(2025年10月21日リリース)がActive LTS、15.x系(2024年10月21日リリース)がMaintenance LTSです。
新しいメジャーが出ると、それまでのメジャーはMaintenance LTSへ移ります。長く使う業務システムでは、運用期間のどこで次の更新を行うかを先に見積もっておくことが、あとからの慌てた移行を防ぎます。「最新版なら速い」という理由だけで決めず、メジャー更新に含まれる破壊的変更の検証工数もセットで考えてください。
VercelとSupabaseの連携はどう設定する?
環境変数でつなぐのが基本で、連携作業そのものは難所ではありません。
接続方法は2通りあります。
- 手動で環境変数を設定する:SupabaseのプロジェクトURLとAPIキーを、Vercelのプロジェクト設定へ環境変数として登録します。本番・プレビュー・開発で別の値を入れられるため、検証環境と本番を分ける設計と相性がよい方法です。
- Vercel Marketplaceの統合を使う:Supabase公式の案内によると、Vercel Marketplace経由でSupabaseプロジェクトを作成すると、
POSTGRES_URL・SUPABASE_URLなどの環境変数がVercel側へ自動同期され、利用量はVercelの請求書にまとまります。
ただし2には、2026年9月23日時点で確認できる制約があります。同じ公式ドキュメントでは、この統合はPublic Alphaと案内されており、プロジェクト作成はVercelのダッシュボードからのみ、カスタムドメインは非対応、請求書はVercel側で管理すると説明されています。請求の一本化は便利ですが、採用前に制約が自社の運用と合うかを確認してください。
接続方式は「直接」ではなく「プーラー経由」を確認する
連携より重要なのが接続方式です。Supabaseの接続方法の説明では、サーバーレス・エッジ環境は短命な接続を大量に開くため、共有プーラーのトランザクションモード(ポート6543)が推奨とされています。セッションモードと直接接続はポート5432です。
トランザクションモードは接続をトランザクションごとにプールへ返すため、関数のインスタンスが増えても接続枠を食いつぶしにくい構成です。引き換えにプリペアドステートメントやセッションをまたぐ状態は使えません。「同時アクセスが増えたときに落ちないか」に関わるため、発注時に接続方式を明示的に確認してください。
SupabaseのRLSは有効にするだけで安全になるか?
なりません。有効化しただけでは何も許可されず、操作ごとにポリシーを書いて検証する必要があります。
ここが3点セットでいちばん事故が起きやすい箇所です。Supabase公式のRLS説明から、発注側が押さえるべき点を挙げます。
- 公開スキーマでRLSが無いテーブルは、権限を持つロールから読み書きできます。 作っただけで守られる状態ではありません。
- RLSを有効化すると、ポリシーを作るまで公開可能キー経由でデータにアクセスできません。 有効化直後は「安全」ではなく「何も見えない」状態で、ここからポリシーを積み上げます。
select・insert・update・deleteは別々のポリシーが必要です。 PostgreSQLは1つのfor句に複数操作を受け付けません。- UPDATEを成立させるには、対応するSELECTポリシーが必要です。 無いと更新が期待どおりに動きません。
- ポリシーの絞り込みに使う列にはインデックスを張ります。 インデックスが無いと各候補行にポリシーが評価され、読み取りがシーケンシャルスキャンになると公式に説明されています。性能問題の典型的な原因です。
権限は後から足すと漏れが出ます。業務システムでは「誰に何が見えるか」そのものが品質なので、実装より前にRLS方針を決める進め方をおすすめします。
検証のしかたも一点。営業が受注を入力し、倉庫が出荷対象を確認する業務を例にすると、画面上の表示の出し分けだけでは不十分です。画面を経由せず保存の要求を直接送った場合でも拒否できることを確認し、役割ごとに4操作について許可される行と拒否される行の両方を試します。「許可が通ること」だけを確認して合格にすると、拒否されるべき操作が通っている状態を見逃します。これは説明用の例で、当社案件の測定値ではありません。
この構成が向くケースと、向かないケースは?
Webで使う社内業務システムには合わせやすい一方、常駐処理・閉域要件・既製SaaSで足りる要件には向きません。
| 状況 | 先に確認すること | 判断例 |
|---|---|---|
| 一覧・検索・帳票・申請承認が中心 | 役割ごとの操作を整理できるか | この構成を検討対象に入れる |
| 夜間の重いバッチ、常駐ワーカーがある | 処理時間と実行基盤の上限 | バッチだけ別基盤へ逃がす構成を比較する |
| 外部クラウドに出せないデータが中心 | 閉域接続・データ所在の要件 | 自己ホスト構成や別基盤を比較する |
| 既製SaaSで要件が足りる | 不足している機能を具体的に書き出せるか | 既製品の採用や設定改善を優先する |
| 既存の基幹システムと接続が必要 | 接続方式、頻度、障害時の扱い | 連携範囲を限定して段階的に進める |
実行時間の上限は具体的に確認できます。Vercelのプラン比較では、関数の最大実行時間はHobbyで300秒、Proでは既定300秒・最大800秒まで設定可能(さらに1800秒までの拡張がベータとして案内)とされています(2026年9月23日時点)。長時間バッチや常時稼働ワーカーは、この枠に収まるかを先に確認し、収まらないなら別基盤へ分ける設計が現実的です。
表の4行目が特に大切です。フルスクラッチは独自の業務フローや差別化が必要な部分に絞るのが現実的で、定型業務は既製SaaS、自社の肝になる部分だけフルスクラッチ、という分担もよく取ります。
費用はどの単位で確認すればよいか?
月額プランの金額だけで比べず、プラン料金・従量課金・支出上限の3つを分けて確認します。
2026年9月23日時点で、各社の公式ページから確認できる内容です。いずれも米ドル表示・税別で、実際の支払額は契約画面で確認してください。
- Hobbyプランは無料ですが、公式のフェアユースガイドラインにより非商用・個人利用に限定されています。商用の業務システムは対象外です。
- Proプランは月20米ドルのプラットフォーム料金で、デプロイ可能なチームシート1枠と月20米ドル分の利用クレジットが含まれます。追加のOwner/Memberシートは1枠あたり月20米ドル、閲覧のみのViewerシートは無料です。クレジットを使い切ると従量課金へ切り替わり、未使用分は月末で失効します。
Supabase(料金ページ)
- Freeプランは0米ドルで、データベース500MB・月間アクティブユーザー5万・アクティブプロジェクト2件まで。1週間使わないと一時停止されます。
- Proプランは月25米ドルで、プロジェクトあたりディスク8GB(超過分は1GBあたり0.125米ドル)、月間アクティブユーザー10万(超過分は1MAUあたり0.00325米ドル)、egress 250GB(超過分は1GBあたり0.09米ドル)が含まれます。Teamプランは月599米ドル、Enterpriseは個別見積もりです。
「待機中はCPU課金が止まる」を全費用ゼロと読み替えない
VercelのFluid compute料金説明では、課金項目がActive CPU・Provisioned Memory・Invocationsに分かれています。Active CPUはコードが実際に動いている時間だけ課金され、データベース照会やAIモデル呼び出しなどのI/O待ちの間は課金が止まります。
一方でProvisioned Memory(割り当てメモリ)はI/O待ちの間も課金が続きます。公式には、インスタンスの生存期間全体に対してGB時間で課金され、最後の処理中のリクエストが完了するまで課金が続くと明記されています。呼び出し回数も別項目です。
つまり「待っている間は無料」ではなく「待っている間はCPUぶんが止まる」が正確です。AI APIの応答待ちが長い処理では、CPUだけを見て安く見積もるとメモリ・呼び出し・転送が漏れます。公式ドキュメントでは、新規のお客様に対して既定で1請求サイクルあたり200米ドルの支出管理通知が有効化されると案内されています。従量課金は放置すると想定を超えるため、契約直後に支出上限の設定を確認してください。
納品時と保守では何を確認するか?
アカウントの所有者・課金先・復元手順の3つを、開発の完了とは別に確認します。
動くものが納品されても、運用の主導権が自社に無ければ継続できません。
- Vercel・Supabaseのアカウント所有者が誰か(開発会社名義のままだと契約終了時に移管の手間が生じます)
- 課金先のカード・請求先が誰か。支出上限を誰が変更できるか
- バックアップからの復元を実際に試したか(取得できていることと復元できることは別です)
- 別の担当者が小さな変更を反映できるか。手順書だけでなく1回試してもらう
- 継続保守の範囲・時間帯・窓口を契約で合意しているか
出口の観点も一つ。Supabaseは標準のPostgreSQL上に構築されており、データが一般的なリレーショナルデータベースの形式で保持されます。将来ほかの環境へ移す可能性を残したい場合、この点は確認の材料になります。
老朽化した既存システムの作り替えが出発点なら、システムリプレース・移行で止めずに作り変える進め方をご案内しています。試作や社内ツールを実業務に載せる段階でつまずいているなら、PoCから本番化の支援で、セキュリティ・運用・保守の観点から点検します。
工数と費用を見積もる
画面・データ・権限・連携・移行・復元確認を分けて積み上げ、使用技術の名称だけで工数を決めません。
「Next.js・Supabase・Vercelだから安い」という見積もりはできません。同じ技術構成でも、権限の分岐の数、既存システムとの連携本数、移行するデータの状態で工数は変わります。とくにRLSのポリシー設計と検証は、画面の数ではなく役割と操作の組み合わせの数で増えるため、独立した項目として見積もります。
当社の作業単価は 1時間11,000円(税込) です。要件定義・契約後のすり合わせ・開発・テスト・バッファの時間を積み上げて見積もります。バッファは未確定事項ごとに理由を示し、クラウド・API等の実費と保守契約は別に確認します。初回相談・認識合わせの無料モック・お見積もりは無料です。見積もりの進め方と相談シートで整理できます。
規模が伸びてコストが気になり始めた段階の判断軸はVercelとAWSの費用比較、Next.js以外の既存システムを同じVercel上へ載せる選択肢はVercelのDockerfile対応で整理しています。
よくある質問
Q. この構成なら必ず安く作れますか?
要件、連携、データ、運用によります。開発費と、利用量で変わる継続費を分けて考えてください。Vercel Proの月20米ドルとSupabase Proの月25米ドルは下限であって上限ではなく、従量課金が上に積み上がります(2026年9月23日時点)。比較するときは、別構成と同じ完成条件・同じ処理量で並べてください。
Q. データベースの権限は自動で設定されますか?
されません。SupabaseのRLSは、有効化しても操作ごとのポリシーを書くまでデータへアクセスできない状態になります。自社の業務に合う設計と、読み取り・追加・更新・削除それぞれについて許可と拒否の両方を確認する試験が必要です。UPDATEには対応するSELECTポリシーが要る点など、公式に明記された注意点があります。
Q. 無料プランのまま本番運用を始めても大丈夫ですか?
商用の業務システムでは避けてください。VercelのHobbyプランは公式に非商用・個人利用へ限定されており、SupabaseのFreeプランは1週間使わないとプロジェクトが一時停止されます(いずれも2026年9月23日時点)。検証には使えますが、本番稼働は有料プランを前提に費用を組み立てます。
自社の状況を整理して相談する
まず、利用者の役割、更新するデータ、連携先、運用担当を書き出してください。この記事に合う検討シートとAI相談用プロンプトで、未確認の項目を残したまま整理できます。シートを完成させる前でも、お気軽にご相談いただけます。
運営・編集