最終更新:
SupabaseとFirebaseの違いは?DB・権限・料金で比較
どちらもバックエンドを代わりに作ってくれるの?
大きな違いはSQLが使えるかどうか?
SupabaseはPostgreSQLが中心、Firebaseでよく比較されるFirestoreはドキュメント型だよ。ただしFirebaseにもSQL ConnectというPostgreSQLを利用するサービスがある。Firebase全体をNoSQLだけと考えず、使う製品をそろえて比べよう。
注文と商品をまとめて読みたい場合は?
ログインを付ければ自分のデータだけ見える?
リアルタイム更新はどちらにもある?
オープンソースなら移行の心配はない?
どうやって選べば失敗しにくい?
一番重要な画面の読み書きと権限テストを小さく作ろう。自分のデータだけ読めること、他人の更新を拒否すること、再接続後の動作と費用を確認する。人気や資金調達額より、自分のデータと運用に合うかが大切だよ。
比較対象を「サービス全体」と「DB」に分ける
| 観点 | Supabase | FirebaseのFirestoreを使う構成 |
|---|---|---|
| 中心のデータモデル | PostgreSQLのテーブル・関係 | コレクション・ドキュメント |
| データのアクセス制御 | SQL権限とRLSなど | クライアントのSecurity Rulesなど |
| 費用 | プラン+計算資源・超過利用など | 読み書き・索引・保存・通信など |
| 運用の移し方 | セルフホスト可能。ただし差と責任あり | 利用サービスに応じて別基盤への移行を設計 |
確認時点のFirebase公式では、PostgreSQLを使うサービスをSQL Connectとして案内しています。ここでの比較表はFirestore中心であり、FirebaseにリレーショナルDBの選択肢がないという意味ではありません。
認証だけでは守れない:最低限の権限テスト
- 未ログインで非公開データを読めないこと。
- ユーザーAが自分のデータを読み書きできること。
- ユーザーAがユーザーBのデータを読み書きできないこと。
- サーバー側の管理キーをブラウザへ配布していないこと。
Supabaseのservice_roleなどはRLSを迂回できるため、クライアントに置きません。FirestoreもサーバークライアントライブラリはSecurity Rulesを迂回し、IAM等で扱います。クライアント側で隠したボタンはアクセス制御になりません。
課金の見積もりは1操作から
一覧表示で何件読み、リアルタイムリスナーが何回更新・再接続し、どれだけ転送するかを見積もります。Supabaseではプロジェクトの計算資源や組織全体の利用枠も確認します。無料枠や基本料金だけで月額上限を判断しないでください。
参考資料
確認日:2026年9月26日。製品の仕様・料金・対応環境は導入時にも確認してください。
- Supabase Row Level Security:RLS・SQL権限・管理キーの扱い。
- Firestore Security Rules conditions:認証と認可、サーバー経路の例外。
- Firebase SQL Connect:PostgreSQLを利用する別サービス。
- Supabase billing:基本料金・計算資源・超過料金。
- Firestore pricing:読み書き・索引・リスナー・保存・通信。
- Self-hosting Supabase:マネージドとの差と運用責任。