総務省「令和7年版情報通信白書」によると、国内のSaaS市場規模は2025年に約1.9兆円に達し、年率13%で成長を続けている。自社のノウハウやサービスをSaaSとして提供する「SaaSビジネス」への参入を検討する企業が増える中、最初に直面するのが「マルチテナントアーキテクチャをどう設計するか」という技術的な判断だ。

本記事では、マルチテナントの3つの設計パターンを比較し、技術スタック選定、テナント認証、課金連携、費用の目安まで、SaaS開発に必要な実践知識を体系的に解説する。


目次

  1. マルチテナントの3つの設計パターン
  2. 技術スタックの選定
  3. テナント認証・認可の設計
  4. 課金・サブスクリプション連携
  5. 開発費用の目安
  6. シングルテナントから始めるべきか
  7. よくある質問(FAQ)

1. マルチテナントの3つの設計パターン

マルチテナントアーキテクチャは、複数の顧客(テナント)が同一のアプリケーションを共有する設計だ。データの分離方法によって3パターンに分類される。

3パターンの比較表

項目DB共有(行レベル分離)スキーマ分離DB分離
データ分離レベル低(行レベル)中(スキーマレベル)高(DB単位)
セキュリティ中(tenant_idカラムに依存)最高
コスト効率最高
スケーラビリティ中(大規模テナントがボトルネック)最高
運用複雑度
マイグレーション簡単(1DB)中(テナント数分のスキーマ)複雑(テナント数分のDB)
初期開発費用300〜800万円400〜1,000万円600〜1,500万円
テナント数上限目安〜1,000〜500〜100

パターン1:DB共有(行レベル分離)

1つのデータベース、1つのスキーマを全テナントで共有し、各テーブルに`tenant_id`カラムを持たせてデータを分離する方式。

メリット

  • 開発・運用コストが最も低い
  • テナント追加がレコード挿入だけで完了
  • DBの接続プール管理が容易

デメリット

  • tenant_idのフィルタリング漏れ(データ漏洩リスク)
  • 大規模テナントがDB全体の性能に影響
  • テナント単位のバックアップ・リストアが困難

適しているケース:テナント数が多い(100〜1,000)が、データ量は少ない。B2C寄りのSaaS、小規模事業者向けSaaS。

パターン2:スキーマ分離

1つのデータベース内にテナントごとのスキーマを作成し、データを分離する方式。PostgreSQLの`search_path`を切り替えてテナントを特定する。

メリット

  • DB共有より高いセキュリティ
  • テナントごとのカスタマイズ(カラム追加等)が可能
  • 性能のある程度の分離

デメリット

  • テナント追加時にスキーマ作成が必要
  • マイグレーション時にテナント数分の変更が必要
  • 数百テナントを超えると接続管理が複雑化

適しているケース:テナント数が中程度(10〜500)で、テナントごとにデータ構造のカスタマイズが必要。B2B SaaSの標準的な選択肢。

パターン3:DB分離

テナントごとに独立したデータベースを用意する方式。セキュリティとカスタマイズの自由度が最高。

メリット

  • 最高レベルのデータ分離とセキュリティ
  • テナント単位のバックアップ・リストアが容易
  • 大規模テナントの性能影響がゼロ

デメリット

  • インフラコストが高い(テナント×DB)
  • マイグレーションの複雑さ
  • テナント追加の自動化が必須

適しているケース:テナント数が少ない(〜100)が、1テナントあたりのデータ量が多い。金融・医療・官公庁向けで高いセキュリティ要件がある。

セクションまとめ:DB共有は低コスト・多テナント向き、スキーマ分離はB2B SaaSの標準選択、DB分離は高セキュリティ・少テナント向き。初期はDB共有またはスキーマ分離で始め、要件に応じて移行するのが現実的だ。

SaaSの設計・開発をお考えの方へ

GXO株式会社では、マルチテナントSaaSの設計・開発を支援しています。アーキテクチャの選定から実装まで、貴社のビジネス要件に最適な設計をご提案します。

SaaS開発の無料相談・見積もりはこちら →


2. 技術スタックの選定

マルチテナントSaaSに適した技術スタックの選択肢を3パターン提示する。

推奨技術スタック

技術スタック初期開発費用目安特徴向いているSaaS
Next.js + Supabase300〜800万円開発速度が速い。認証・DB・ストレージが統合MVP・スタートアップ向けSaaS
Laravel + PostgreSQL400〜1,000万円堅牢なバックエンド。エンジニア採用が容易業務系・基幹系SaaS
Ruby on Rails + PostgreSQL400〜1,000万円開発速度と保守性のバランス。実績豊富汎用B2B SaaS

各スタックの詳細

Next.js + Supabase

フロントエンドにNext.js(React)、バックエンドにSupabase(PostgreSQL + Auth + Storage + Realtime)を採用する構成。SupabaseのRow Level Security(RLS)を活用すれば、DB共有方式のマルチテナントを最も効率的に実装できる。開発速度が速く、MVPを2〜3ヶ月で市場に投入できる。

  • 認証:Supabase Auth(OAuth、メール、マジックリンク対応)
  • マルチテナント:RLSポリシーで行レベル分離
  • リアルタイム:Supabase Realtimeでライブ更新
  • 費用:Supabase Proプラン月額$25〜

Laravel + PostgreSQL

PHPのフレームワークLaravelは、日本国内のエンジニア数が多く、採用が容易だ。tenancyパッケージ(stancl/tenancy等)を活用すれば、スキーマ分離やDB分離のマルチテナントを比較的容易に実装できる。業務系・基幹系のSaaSに適している。

  • 認証:Laravel Sanctum / Passport
  • マルチテナント:stancl/tenancy パッケージ
  • キュー処理:Laravel Queues(非同期処理に強み)
  • 費用:サーバー費月額1〜10万円

Ruby on Rails + PostgreSQL

Railsの`apartment` gemやActiveRecord のデフォルトスコープを利用したマルチテナント実装が可能。スタートアップから中規模SaaSまで幅広い実績がある。

  • 認証:Devise + カスタムテナント認証
  • マルチテナント:apartment gem / acts_as_tenant
  • 費用:サーバー費月額1〜10万円

インフラの選択

インフラ月額費用目安特徴
Vercel + Supabase$25〜200Next.jsとの親和性最高。自動スケール
AWS(ECS + RDS)5〜30万円柔軟性が高い。大規模向き
さくらクラウド2〜15万円日本国内データセンター。コスト効率良好
Heroku$25〜500デプロイが最も簡単。MVPに最適

セクションまとめ:MVPはNext.js + Supabase、業務系はLaravel + PostgreSQL、汎用B2BはRuby on Railsが推奨。技術選定はチームのスキルセットと採用市場も考慮して決定する。


3. テナント認証・認可の設計

マルチテナントSaaSの認証・認可は、セキュリティの根幹をなす設計だ。

認証フローの設計パターン

パターン概要複雑度セキュリティ
サブドメイン型tenant1.app.com でテナント特定
パス型app.com/tenant1/ でテナント特定
ログイン時選択型ログイン後にテナントを選択
カスタムドメイン型tenant1.com でテナント特定最高

テナント認証の実装費用

機能開発費用目安工数目安
基本認証(メール+パスワード)20〜50万円0.5〜1.5人月
OAuth連携(Google/Microsoft)15〜40万円0.5〜1人月
テナント別ロール管理30〜80万円1〜2人月
SSO(SAML/OIDC)50〜150万円1.5〜4人月
テナント管理画面40〜100万円1〜2.5人月
監査ログ20〜60万円0.5〜1.5人月

認可設計のポイント

RBAC(ロールベースアクセス制御)が最も一般的だ。テナント内で「オーナー」「管理者」「メンバー」「閲覧者」の4ロールを設定するパターンが標準的。

  • オーナー:テナント設定・メンバー管理・課金管理
  • 管理者:データCRUD・メンバー招待
  • メンバー:データCRUD
  • 閲覧者:データの参照のみ

エンタープライズ向けSaaSでは、RBAC+属性ベースアクセス制御(ABAC)の組み合わせが必要になる場合がある。追加費用は50〜150万円。

セクションまとめ:サブドメイン型が最もバランスが良い。認証・認可の基本実装で80〜250万円、SSO対応で+50〜150万円。セキュリティは妥協せず、初期設計で正しく組み込むことが重要だ。


4. 課金・サブスクリプション連携

SaaSビジネスの収益基盤となる課金システムの設計を解説する。

課金サービスの比較

サービス名手数料月額費用特徴向いているSaaS
Stripe3.6%0円グローバル対応。APIが秀逸グローバルSaaS
PAY.JP3.0〜3.6%0円〜日本企業向け。サポートが丁寧国内向けSaaS
Stripe Billing3.6% + 0.5%0円サブスクリプション管理が充実定期課金が中心
GMOペイメント3.2〜3.5%要問合せ大規模対応。請求書払い対応エンタープライズSaaS

課金機能の開発費用

機能開発費用目安工数目安
プラン管理(Freemium/有料プラン)20〜60万円0.5〜1.5人月
クレジットカード決済連携20〜50万円0.5〜1.5人月
サブスクリプション管理30〜80万円1〜2人月
請求書発行・インボイス対応30〜80万円1〜2人月
利用量ベース課金40〜120万円1〜3人月
プラン変更・アップグレード/ダウングレード20〜60万円0.5〜1.5人月
解約・未払い管理15〜40万円0.5〜1人月

課金設計のポイント

料金プランの設計はSaaSのビジネスモデルに直結する。

課金モデル実装複雑度
固定料金月額9,800円/テナント
ユーザー数課金月額980円/ユーザー
利用量課金API呼び出し回数×単価
ハイブリッド基本料金+利用量超過分
国内向けSaaSでは、PAY.JPまたはStripeが第一候補。B2B SaaSでは請求書払い(掛売り)への対応が必須となるケースが多い。

セクションまとめ:課金連携の基本実装で100〜300万円。StripeまたはPAY.JPが第一候補。料金プランの設計はビジネスモデルの根幹であり、技術実装以上に重要な意思決定だ。


5. 開発費用の目安

マルチテナントSaaSの開発費用をフェーズ別に整理する。

フェーズ別の費用目安

フェーズ開発内容費用目安期間
MVP(最小実用製品)コア機能+認証+マルチテナント基盤+課金300〜800万円2〜4ヶ月
β版MVP+管理画面+分析+通知500〜1,200万円3〜6ヶ月
正式版β版+SSO+API公開+監査ログ+ドキュメント800〜2,000万円6〜12ヶ月
エンタープライズ版正式版+カスタムドメイン+SLA+専用環境オプション1,500〜3,000万円12〜18ヶ月

パターン別の初期開発費用

アーキテクチャ技術スタックMVP費用正式版費用
DB共有 + Next.js + Supabase最軽量300〜500万円800〜1,200万円
スキーマ分離 + Laravel + PostgreSQL標準400〜700万円1,000〜1,500万円
DB分離 + Rails + PostgreSQL高セキュリティ600〜1,000万円1,500〜2,500万円

月額運用コストの目安

項目MVP期成長期(100テナント)拡大期(1,000テナント)
インフラ1〜5万円5〜20万円20〜100万円
決済手数料売上の3〜4%同左同左
保守・運用5〜15万円10〜30万円30〜80万円
月額合計6〜20万円15〜50万円50〜180万円
システム開発全般の費用は中小企業のシステム開発費用ガイド、AI機能の追加を検討する場合はAI活用業務システム開発ガイドも参照されたい。

セクションまとめ:MVPで300〜800万円、正式版で800〜2,000万円が相場。アーキテクチャパターンと技術スタックで費用が大きく変動する。MVPで市場検証してから正式版に投資するアプローチが推奨される。


6. シングルテナントから始めるべきか

「最初からマルチテナントで作るべきか」は、SaaS開発で最も多い相談だ。

シングルテナントが適しているケース

  • 顧客数が確定している:初期顧客が5社以下で、急激な増加が見込めない
  • 高セキュリティ要件:金融・医療・官公庁向けで、テナント間のデータ分離が絶対条件
  • カスタマイズが多い:顧客ごとに機能や画面が大きく異なる
  • PMF未検証:ビジネスモデルが確立しておらず、まず1社で成功体験を作りたい

マルチテナントで始めるべきケース

  • テナント数が10社以上:最初から10社以上の導入が見込める
  • 標準化された機能:顧客間で機能の差が少ない
  • セルフサービス型:営業なしで顧客がサインアップする
  • スケーラビリティ重視:急速な顧客増加を計画

シングル→マルチの移行コスト

後からシングルテナントをマルチテナントに変換する場合、初期開発費用の40〜60%の追加コストが発生する。具体的には以下の作業が必要だ。

移行作業追加費用目安
テナント分離ロジックの追加80〜200万円
認証・認可のマルチテナント対応50〜150万円
データ移行30〜100万円
テスト・検証50〜150万円
合計210〜600万円
最初からマルチテナントで設計する方が、トータルコストは低くなる。ただし、PMF(Product-Market Fit)が未検証の段階でマルチテナントに投資するリスクもある。

開発会社の選定基準はシステム開発会社の選定基準チェックリスト、AI機能を組み込む場合はAIエージェント開発会社の費用・選定ガイドも参照されたい。

セクションまとめ:PMF未検証ならシングルテナントのMVPで市場検証し、PMF達成後にマルチテナント化するのが安全。PMFが確認済みなら最初からマルチテナントで設計する方がトータルコストが低い。

SaaSの開発・設計をお考えの方へ

GXO株式会社は、マルチテナントSaaSの設計から開発・運用まで一貫して対応します。「SaaSのアーキテクチャをどう設計すべきか」「MVPの費用を抑えたい」など、技術的な相談から対応可能です。

※ 営業電話はしません|オンライン対応可|最短翌営業日に回答

まずは無料相談する →


7. よくある質問(FAQ)

Q1. マルチテナントSaaSのMVP開発にどのくらいの期間がかかりますか? 技術スタックにもよりますが、Next.js + Supabaseなら2〜3ヶ月、Laravel + PostgreSQLなら3〜4ヶ月が目安です。コア機能を絞り込むことで期間を短縮できます。

Q2. テナント数が増えた場合のスケーリングはどうすれば良いですか? DB共有方式なら、リードレプリカの追加やコネクションプーリング(PgBouncer等)で対応可能です。スキーマ分離やDB分離の場合は、テナント単位での水平分割(シャーディング)を検討します。

Q3. 既存のWebアプリケーションをSaaS化できますか? 可能です。ただし、マルチテナント対応、課金機能、テナント管理画面の追加が必要で、初期開発費用の40〜60%の追加コストが見込まれます。

Q4. Supabaseは本番環境でも使えますか? 使えます。Supabase ProプランはSLA 99.9%を提供しており、日本リージョン(東京)のサポートも追加されています。ただし、高度なカスタマイズが必要な場合はセルフホスト版の検討も有効です。

Q5. SaaSのセキュリティ対策として最低限必要なものは何ですか? テナント間データ分離の徹底、通信のTLS暗号化、保存データの暗号化(AES-256)、定期的な脆弱性スキャン、監査ログの5点が最低限必要です。エンタープライズ向けではSOC2認証の取得も求められます。


参考資料

  • 総務省「令和7年版情報通信白書」
  • IPA「安全なウェブサイトの作り方 改訂第8版」
  • AWS「SaaS Architecture Fundamentals」