最終更新:

SupabaseとFirebaseの違いは?DB・権限・料金で比較


DBと権限・課金をそろえて比較 Supabase PostgreSQLの関係モデル SQL権限とRLSなどを設計 プラン+計算資源・超過利用 セルフホストは運用責任あり Firebase / Firestore Firestoreはドキュメント型 Rules・サーバー側IAMを確認 読み書き・保存・通信など 別にSQL Connectも提供 認証を付けてもデータの認可は必要 DBと権限・課金をそろえて比較 Supabase PostgreSQLの関係モデル SQL権限とRLSなどを設計 プラン+計算資源・超過利用 セルフホストは運用責任あり Firebase / Firestore Firestoreはドキュメント型 Rules・サーバー側IAMを確認 読み書き・保存・通信など 別にSQL Connectも提供 認証を付けてもデータの認可は必要
認証を付けてもデータの認可は必要
ひよこ ひよこ
どちらもバックエンドを代わりに作ってくれるの?
ペンギン先生 ペンギン先生
DBや認証、ストレージなどを使えるサービスだけれど、データ設計や誰に何を許可するかはアプリ側で決める必要があるよ。サーバー管理が減ることと、バックエンド設計が不要になることは違うんだ。
ひよこ ひよこ
大きな違いはSQLが使えるかどうか?
ペンギン先生 ペンギン先生
SupabaseはPostgreSQLが中心、Firebaseでよく比較されるFirestoreはドキュメント型だよ。ただしFirebaseにもSQL ConnectというPostgreSQLを利用するサービスがある。Firebase全体をNoSQLだけと考えず、使う製品をそろえて比べよう。
ひよこ ひよこ
注文と商品をまとめて読みたい場合は?
ペンギン先生 ペンギン先生
PostgreSQLならテーブルの関係をJOINで扱えるよ。Firestoreでは取得したい形に合わせてドキュメントを設計する。読み取りや更新の形、重複データの整合をどう保つかが判断材料だね。
ひよこ ひよこ
ログインを付ければ自分のデータだけ見える?
ペンギン先生 ペンギン先生
ログインは本人の識別で、データへの許可は別だよ。SupabaseはRLSと権限、FirestoreのWeb・モバイルクライアントはSecurity Rulesなどを設定する。サーバー側の強い権限で使う経路は、別の管理が必要なんだ。
ひよこ ひよこ
リアルタイム更新はどちらにもある?
ペンギン先生 ペンギン先生
両方に変更を配信する機能があるよ。ただし対象のデータ、認可、再接続、同時接続、料金を確認しよう。「通知できる」だけで運用時の安定性の優劣は決められないんだ。
ひよこ ひよこ
Supabaseは定額、Firebaseは従量制?
ペンギン先生 ペンギン先生
それだけでは不正確だよ。Supabaseの有料プランも基本料金に計算資源や超過利用などが加わる。Firestoreも読み書き、索引、保存、通信などを数えるので、想定した操作から料金を見積もろう。
ひよこ ひよこ
オープンソースなら移行の心配はない?
ペンギン先生 ペンギン先生
Supabaseはセルフホストの選択肢があるけれど、クラウド管理機能が全部同じように付くわけではないよ。更新、監視、バックアップ、高可用性を自分で運用する必要がある。アプリがAuthやStorageのAPIへ依存する分も見よう。
ひよこ ひよこ
どうやって選べば失敗しにくい?
ペンギン先生 ペンギン先生
一番重要な画面の読み書きと権限テストを小さく作ろう。自分のデータだけ読めること、他人の更新を拒否すること、再接続後の動作と費用を確認する。人気や資金調達額より、自分のデータと運用に合うかが大切だよ。

比較対象を「サービス全体」と「DB」に分ける

観点SupabaseFirebaseのFirestoreを使う構成
中心のデータモデルPostgreSQLのテーブル・関係コレクション・ドキュメント
データのアクセス制御SQL権限とRLSなどクライアントのSecurity Rulesなど
費用プラン+計算資源・超過利用など読み書き・索引・保存・通信など
運用の移し方セルフホスト可能。ただし差と責任あり利用サービスに応じて別基盤への移行を設計

確認時点のFirebase公式では、PostgreSQLを使うサービスをSQL Connectとして案内しています。ここでの比較表はFirestore中心であり、FirebaseにリレーショナルDBの選択肢がないという意味ではありません。

認証だけでは守れない:最低限の権限テスト

  1. 未ログインで非公開データを読めないこと。
  2. ユーザーAが自分のデータを読み書きできること。
  3. ユーザーAがユーザーBのデータを読み書きできないこと。
  4. サーバー側の管理キーをブラウザへ配布していないこと。

Supabaseのservice_roleなどはRLSを迂回できるため、クライアントに置きません。FirestoreもサーバークライアントライブラリはSecurity Rulesを迂回し、IAM等で扱います。クライアント側で隠したボタンはアクセス制御になりません。

課金の見積もりは1操作から

一覧表示で何件読み、リアルタイムリスナーが何回更新・再接続し、どれだけ転送するかを見積もります。Supabaseではプロジェクトの計算資源や組織全体の利用枠も確認します。無料枠や基本料金だけで月額上限を判断しないでください。

参考資料

確認日:2026年9月26日。製品の仕様・料金・対応環境は導入時にも確認してください。