この記事が役に立つ人
- Web アプリやモバイルアプリで画像・動画・ドキュメントの保存先を選定中
- エグレス(データ転送出力)費用がプロジェクトのコストに直結するケースを検討している
- 日本リージョンの有無やCDN連携の違いを把握してから決めたい
掲載内容は 2026 年 4 月時点 の公式情報に基づきます。料金は構造と桁感のみ記載し、正確な数値は各社公式サイトで確認してください。
結論を先に
🗺️ 用途別クイック選定マップ
「何を最も重視するか」で選ぶ
🏗️ エコシステムの広さ
AWS S3
業界標準の API 仕様。他社サービスも S3 互換 API を採用するほど普及しており、ツール・ライブラリの選択肢が最多。
💰 エグレス費用ゼロ
Cloudflare R2
データ転送出力が無料。画像・動画配信でエグレスがコストの大半を占めるケースで大幅なコスト削減が見込める。
⚡ 最速で認証付きストレージ
Supabase Storage
Supabase Auth と統合された Row Level Security でファイル単位のアクセス制御が即時構築可能。個人開発・プロトタイプに最適。
🤖 GCP / AI 連携
Google Cloud Storage
BigQuery・Vertex AI・Cloud Functions との統合がネイティブ。データ分析パイプラインの起点としてのストレージに。
対象 4 サービスの位置づけ
AWS S3
Amazon が 2006 年にリリースしたオブジェクトストレージ。クラウドストレージの事実上の標準 API であり、多数のサードパーティツールやサービスが S3 互換 API を採用しています。東京リージョン(ap-northeast-1)があり、日本国内からの低レイテンシアクセスが可能。
Cloudflare R2
Cloudflare が提供する S3 互換オブジェクトストレージ。最大の特徴は エグレス(データ転送出力)費用が無料 である点。Cloudflare の CDN エッジネットワークと統合されており、配信パフォーマンスにも強い。
Supabase Storage
Supabase の BaaS プラットフォームに統合されたファイルストレージ。内部的には S3 互換ストレージを使用しつつ、Supabase Auth との連携による Row Level Security(RLS)でファイル単位のアクセス制御を提供。
Google Cloud Storage(GCS)
Google Cloud のオブジェクトストレージ。BigQuery や Vertex AI などの GCP サービスとのネイティブ統合が強み。東京リージョン(asia-northeast1)を持ち、ストレージクラスの自動階層化(Autoclass)機能がある。
料金構造の比較
💡
ストレージ費用よりエグレス費用が問題になるケースが多い
オブジェクトストレージの月額費用は「保存容量」と「データ転送量」の 2 軸で構成されます。保存容量あたりの費用はどのサービスも GB あたり数セントで大差ありませんが、エグレス(データの読み出し・配信)費用は桁違いに差が出ます。画像や動画を大量配信するサービスでは、エグレス費用がストレージ費用の 10 倍以上になることも珍しくありません。
| 項目 |
AWS S3 |
Cloudflare R2 |
Supabase Storage |
GCS |
| 保存費用 |
GB あたり数セント/月 |
GB あたり数セント/月 |
無料枠あり、以降 GB 単位 |
GB あたり数セント/月 |
| エグレス費用 |
GB あたり数セント〜十数セント |
無料 |
無料枠あり、以降従量 |
GB あたり数セント〜十数セント |
| API リクエスト費用 |
万リクエスト単位 |
万リクエスト単位 |
無料枠内は無料 |
万リクエスト単位 |
| 無料枠 |
12 ヶ月限定 |
月 10GB 保存 + 無制限エグレス |
月 1GB 保存 + 2GB 転送 |
月 5GB 保存(一部リージョン) |
⚠️
AWS S3 のエグレス費用は予想外に膨らみやすい
S3 のエグレスは GB あたり数セント〜十数セントかかり、トラフィックが増えると月額が急増します。CloudFront CDN と組み合わせると軽減できますが、CloudFront 自体にも転送費用が発生します。画像配信中心のサービスでは事前にコスト試算を行ってください。
CDN 連携とパフォーマンス
🔧 CDN 連携パターンの違い
ストレージと CDN の関係が各社で異なる
Cloudflare R2 は CDN が自動統合されるため、追加設定なしでエッジ配信が行われます。AWS S3 と GCS は CDN(CloudFront / Cloud CDN)を別途設定する必要があり、初期構築の手間が増えます。Supabase Storage は Supabase 側で CDN が管理されますが、細かいキャッシュ制御はできません。
SDK と開発体験
| 項目 |
AWS S3 |
Cloudflare R2 |
Supabase Storage |
GCS |
| API 仕様 |
S3 独自(事実上の標準) |
S3 互換 |
REST + クライアント SDK |
GCS 独自 |
| 公式 SDK 言語数 |
10+ |
Workers SDK + S3 互換 |
JavaScript / Dart / Kotlin / Swift |
10+(Cloud Client Libraries) |
| CLI ツール |
AWS CLI |
Wrangler + S3 互換ツール |
Supabase CLI |
gcloud CLI |
| 署名付き URL |
対応 |
対応 |
対応 |
対応 |
| 画像変換 |
別途 Lambda が必要 |
Cloudflare Images と連携可 |
組み込み変換あり |
別途処理が必要 |
📌
S3 互換 API の実用性
Cloudflare R2 は S3 互換 API を実装しているため、既存の S3 向けコードの多くがエンドポイント URL の変更だけで動作します。ただし、S3 の全機能を網羅しているわけではなく、Object Lock やバージョニングの一部機能には差異があります。移行前にアプリケーションが使用している API を確認してください。
日本リージョンとレイテンシ
| 項目 |
AWS S3 |
Cloudflare R2 |
Supabase Storage |
GCS |
| 日本リージョン |
東京(ap-northeast-1)、大阪 |
自動分散(リージョン指定なし) |
東京リージョン選択可 |
東京(asia-northeast1)、大阪 |
| データ所在地の指定 |
リージョン指定で確定 |
ヒントのみ(保証なし) |
プロジェクト作成時に選択 |
リージョン指定で確定 |
⚠️
Cloudflare R2 のデータ所在地は「保証」ではない
R2 はロケーションヒント機能でデータの保存先を指定できますが、厳密な法的保証ではありません。個人情報保護法やデータローカライゼーション要件がある場合は、AWS S3 または GCS で明示的にリージョンを指定してください。
ユースケース別の判断
画像・動画配信が中心のサービス
エグレス費用が支配的になるため、Cloudflare R2 がコスト面で最も有利。CDN も自動統合されるので追加設定が不要。ただしデータ所在地の厳密な指定が必要な場合は S3 + CloudFront を検討。
BaaS として認証付きストレージが必要
Supabase Storage は Row Level Security との統合により、「このユーザーはこのファイルにのみアクセス可能」というポリシーを SQL で記述できる。Firebase Storage からの移行先としても検討される。
データ分析パイプラインの起点
GCS は BigQuery への直接ロードや Vertex AI との統合がネイティブ。データレイクとしてのストレージなら GCP エコシステム内で完結する GCS が効率的。
既存の AWS インフラがある
AWS S3 を選ぶのが自然。IAM ポリシー、VPC エンドポイント、Lambda トリガーなど、AWS 内のサービスとの統合が最も深い。
🚨
バケットの公開設定には細心の注意を
すべてのクラウドストレージサービスで、バケットやオブジェクトの公開設定ミスによる情報漏洩事故が発生しています。デフォルトでプライベートに設定し、必要なオブジェクトのみ署名付き URL で公開する方式を推奨します。S3 の「Block Public Access」や GCS の「Uniform bucket-level access」を有効にしてください。
まとめ
📋 クラウドストレージ API 選定チェックリスト
コスト構造と既存インフラで選ぶ
エコシステム最大
AWS S3
業界標準 API。ツール・ライブラリ・情報量が最多
エグレス無料
Cloudflare R2
転送費用ゼロ + CDN 自動統合。配信中心ならコスト最安
認証付きストレージ
Supabase Storage
RLS で即アクセス制御。BaaS と一体で最速導入
GCP / AI 連携
Google Cloud Storage
BigQuery・Vertex AI 統合。データ分析パイプラインに