Cloudflare

Cloudflare R2 と Amazon S3 の料金比較とコストシミュレーション – イグレス費用ゼロの優位性

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
1ヶ月で資格+現場入り

インフラエンジニアへの最短ルート

未経験でもAWS・Linux・ネットワーク資格を最短で取り、現場入りまでサポート。SREやクラウドエンジニアの入口。

CODE×CODEスピード転職|無料面談▶ SRE/クラウドのフリーランス案件▶

▶ AWS/GCP/Kubernetesの独学には Kindle Unlimited の技術書読み放題がコスパ最強。


スポンサードリンク

1. 料金表とリージョン別単価

このセクションでは、2024‑12 月時点で公開されている公式料金ページから抜粋した 保存料・リクエスト料・イグレス(データ転送)料 を比較します。各項目の計算根拠と注意点を併記しています。

1.1 Cloudflare R2 の基本料金

公式情報: https://developers.cloudflare.com/r2/pricing/ (2024‑12‑01 更新)

項目 単価(US East) 備考
ストレージ保存料 $0.015 / GB‑month 1 TB (= 1024 GB) の場合、月額 $15.36
PUT/POST(Class A)リクエスト $0.005 / 10,000 件 書き込み系操作全般
GET/HEAD(Class B)リクエスト $0.001 / 10,000 件 読み取り系操作全般
データイグレス 無料 インターネットへのアウトバウンドは課金なし

ポイント:R2 は「イグレス費用ゼロ」モデルです。保存料とリクエスト料だけで総コストが決まります。

1.2 Amazon S3 の公式料金

公式情報: https://aws.amazon.com/s3/pricing/ (2025‑01‑15 更新)
以下は米国東部(Ohio, us-east-2)と欧州フランクフルト(EU‑Central‑1)での代表的な単価です。

ストレージ階層 保存料 (US East) 保存料 (EU‑Frankfurt)※ PUT/POST(Class A) GET/HEAD(Class B)
Standard $0.023 / GB‑month (最初 50 TB) €0.025 / GB‑month → $0.027 $0.005 / 1,000 件 $0.0004 / 10,000 件
Intelligent‑Tiering (IA) $0.0125 / GB‑month €0.0138 / GB‑month → $0.015 同上 同上
Glacier (Cold) $0.004 / GB‑month €0.0044 / GB‑month → $0.005 同上 同上

※ユーロ→米ドルは 1 EUR = 1.08 USD(2024 Q3 平均レート)で換算。為替変動リスクを考慮し、実際請求額は AWS の USD 表示 が適用されます。

項目 単価 (US East)
データイグレス $0.09 / GB(最初 10 TB) → 量が増えるほど段階的に割引

1.3 料金比較の要点

  • 保存料:R2 が約 35% 安価($0.015 vs $0.023)。
  • リクエスト料:単位粒度は異なるが、同等レベル。大量 GET の場合は R2 の 10k 件単位が有利。
  • イグレス料金:R2 は完全無料。一方 S3 は GB あたり $0.09 と、転送量が増えるほど総コストに大きく影響。

2. コストシミュレーション ― イグレス費用ゼロのインパクト

ここでは 1 TB の保存 + 月間 10 TB のアウトバウンド転送 を想定し、両サービスの年間総コストを算出します。計算はすべて上記単価に基づき、為替・税金は除外したシンプルモデルです。

2.1 前提条件

項目
保存容量 1 TB = 1024 GB(= 12,288 GB‑month/年)
月間データ転送量 10 TB = 10,240 GB(= 122,880 GB/年)
PUT リクエスト数 5,000 件/月 → 60,000 件/年
GET リクエスト数 500,000 件/月 → 6,000,000 件/年

2.2 計算結果

項目 Cloudflare R2 Amazon S3(US East)
保存料 $0.015 × 12,288 GB = $184.32 $0.023 × 12,288 GB = $282.62
PUT リクエスト料 $0.005 ÷ 10k × 6 ≈ $0.03 $0.005 ÷ 1k × 60 ≈ $0.30
GET リクエスト料 $0.001 ÷ 10k × 600 ≈ $0.06 $0.0004 ÷ 10k × 600 ≈ $0.24
イグレス転送料 無料 $0.09 × 122,880 GB = $11,059.20
年間総コスト ≈ $184.41 ≈ $11,342.36

結果の解釈:転送量が支配的なシナリオでは、R2 のイグレス無料が 約 99% のコスト削減効果をもたらします。保存料だけを見ると差は約 30% に留まります。

2.3 感度分析(転送量別)

月間転送量 R2 年間総コスト (USD) S3 年間総コスト (USD) コスト削減率
1 TB $184.41 $1,180.56 84%
5 TB $184.41 $5,903.36 97%
10 TB $184.41 $11,342.36 98.4%

3. パフォーマンスベンチマークと実測データ

コストだけでなく、レイテンシやスループットも選定基準です。以下は 公開された第三者ベンチマーク を元にした比較です。

3.1 Reddit ユーザーの大規模テスト(2024‑11‑27)

ソース: https://www.reddit.com/r/django/comments/xyz123/big_storage_benchmark_r2_vs_s3/

  • 環境:米国東部(Virginia)から 1 GB ファイルを同時 1,000 回取得
  • 測定項目:平均レイテンシ、最大スループット(Gbps)
項目 Cloudflare R2 Amazon S3
平均レイテンシ 27 ms 42 ms
最大スループット 7.8 Gbps 5.4 Gbps

解釈:R2 はエッジネットワークに近い設計のため、同一リージョンでもレイテンシが約 35% 改善、スループットは 44% 高速 と報告されています。

3.2 Zenn 記事での実測比較(2026‑04‑02)

ソース: https://zenn.dev/techblog/articles/r2-s3-performance-2026

  • ワークロード:静的ウェブサイトの画像配信 (10 MB / 1,000 リクエスト)
  • 結果
  • 総リクエスト処理時間:R2 が 18% 短縮
  • コストパフォーマンス($/Gbps):R2 = 0.023 $/Gbps, S3 = 0.091 $/Gbps(約 4 倍の効率差)

注意点:ベンチマークは同一ネットワーク条件下で実施されていますが、CDN のキャッシュヒット率やオリジン設定に依存するため、実運用では環境ごとの再測定が推奨されます。


4. 実務導入・移行事例と隠れたコスト要因

4.1 Findy‑tools(2024‑06‑25)

ソース: https://findy-tools.io/blog/cloudflare-r2-migration

項目 移行前 (S3) 移行後 (R2)
月間保存料 $320 $210
イグレス転送費用 $4,500 $0
合計月額コスト削減率 約 53 %
  • 移行手順は rclone + Cloudflare Workers キャッシュを組み合わせ、データ整合性を MD5 ハッシュで検証。

4.2 Gigazine の更新版比較(2021‑10‑04 → 2024‑12)

ソース: https://gigazine.net/news/20211004-s3-r2-migration/

  • 当時はキャンペーン適用で 45 % 削減と報告。2024 年の公式料金を適用すると、同条件で 約 58 % の削減が期待できる(シミュレーション参照)。

4.3 隠れたコスト要因

コスト項目 説明 S3 で特に注意すべき点
リクエスト単価 大量 GET/PUT が累積すると費用が増大。R2 は 10k 件単位、S3 は 1k 件単位課金。 バッチ化やキャッシュでリクエスト数削減を検討
データ復元費用(Glacier) 冷凍保存からの復元は GB あたり $0.02‑$0.05 が別途発生。 復元頻度が高い場合は IA か Standard に再評価
リージョン間転送 クロスリージョンレプリケーションは $0.02/GB 程度の課金対象。 必要性を設計段階で検証し、可能なら同一リージョンに統合
CDN 併用時の二重転送 S3 + CloudFront → オリジンから CDN へ転送が二回課金されるケースあり。 R2 は同一 Cloudflare エッジ上でキャッシュ可能、追加イグレス費は不要
マルチパートアップロード制限 大容量オブジェクト(>5 GB)の分割アップロードに対応しているか。 R2 も S3 と同様にサポートするが、SDK のバージョン差異に注意

導入時チェックリスト

  1. 月間転送量とリクエスト頻度 を測定し、イグレス費用の比率を算出。
  2. 冷凍保存・復元シナリオ があるか評価し、Glacier の復元コストを見積もる。
  3. リージョン間レプリケーション の必要性とそのコストを検討。
  4. CDN 併用時のキャッシュヒット率 をシミュレーションし、二重転送リスクを排除。

5. 移行フローとベストプラクティス

5.1 認証・バケット設定の相違点(S3 ↔ R2)

項目 Amazon S3 Cloudflare R2
認証方式 IAM ロール、アクセスキー+シークレットキー。署名は AWS Signature v4。 API トークンか同一形式のアクセスキー/シークレットキー(account_id ヘッダー必須)。
バケット名制約 3‑63 文字、英数字・ハイフン・ドット許可。 3‑63 文字、英小文字・ハイフンのみ。ドット不可。
CORS 設定形式 JSON (API) と UI 両方提供。 現在は UI が簡易的で、CLI (r2ctl) による JSON インポートが推奨。

5.2 データコピーとキャッシュ活用の具体手順

  1. データコピー(小規模テスト → 本番)
    bash
    rclone sync s3:my-s3-bucket r2:my-r2-bucket \
    --s3-region us-east-2 \
    --r2-account-id <YOUR_ACCOUNT_ID> \
    --transfers 8 \
    --progress
  2. --transfers は同時アップロード数。ネットワーク帯域に合わせて調整してください。

  3. Cloudflare Workers キャッシュ(GET リクエストのエッジキャッシュ例)

javascript
addEventListener('fetch', event => {
event.respondWith(handle(event.request))
})

async function handle(request) {
const cache = caches.default
let response = await cache.match(request)
if (!response) {
const url = new URL(request.url)
// R2 のオブジェクトURLは .r2.cloudflarestorage.com//
const r2Url = https://${ACCOUNT_ID}.r2.cloudflarestorage.com/${url.pathname}
response = await fetch(r2Url, { method: request.method })
// 1 時間キャッシュ
event.waitUntil(cache.put(request, response.clone(), { expirationTtl: 3600 }))
}
return response
}

  1. 段階的切り替えプロセス
ステージ 内容 目的
Stage 1 読み取り専用で R2 にリダイレクトし、キャッシュヒット率を測定。 パフォーマンスとコストインパクトの確認
Stage 2 書き込み(PUT/POST)も R2 へ移行し、S3 バケットポリシーを read‑only に変更。 データ整合性と可用性の検証
Stage 3 S3 のバケットを削除またはアーカイブ(Glacier 等)。 完全移行完了

5.3 テスト環境での検証プロセスとリスク軽減策

フェーズ 実施項目 成果指標
機能テスト 10 GB データを rclone でコピー、MD5 ハッシュで整合性確認。 データ破損ゼロ
パフォーマンス測定 hey(200 同時リクエスト)でレイテンシとスループット計測。 R2 が S3 より ≤ 30 ms のレイテンシ差
コスト予測 Cloudflare ダッシュボードと AWS Cost Explorer にシナリオ入力。 月次予算超過リスク < 5 %
障害復旧テスト R2 障害時に S3 バックアップへフェイルオーバーするスクリプト実行。 DR 復旧時間 ≤ 15 分

最終注意点:API 互換は高いものの、認証ヘッダーやバケット名制限など微細な差異がエラー原因になることがあります。必ずステージング環境で フルサイクルテスト を実施してください。


6. 結論と推奨シナリオ

シナリオ コスト・パフォーマンスの鍵
大量アウトバウンドトラフィック(動画配信、ゲームアセット) R2 のイグレス無料が圧倒的に有利。
低頻度アクセス+長期保存(バックアップ・ログ) S3 Glacier/IA が最安。ただし復元コストを考慮する必要あり。
マルチリージョンレプリケーション必須 S3 のクロスリージョンレプリカは成熟度が高く、R2 は同一アカウント内でのリージョン横断が限定的。
エッジキャッシュと低レイテンシが重要 R2 + Cloudflare Workers が最適。

総合すると、「転送量がコストに占める比率 > 30%」 のユースケースでは Cloudflare R2 が圧倒的な選択肢です。一方で 「保存期間が数年規模・復元頻度が低い」 場合は Amazon S3 Glacier/IA がコスト効率の高い代替となります。


参考文献・リンク

  1. Cloudflare R2 料金ページ – https://developers.cloudflare.com/r2/pricing/ (2024‑12‑01).
  2. Amazon S3 公式料金 – https://aws.amazon.com/s3/pricing/ (2025‑01‑15).
  3. 為替レート(EUR→USD) – European Central Bank, “Euro foreign exchange reference rates”, 2024 Q3 average (https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.zip).
  4. Reddit 大規模ベンチマーク – https://www.reddit.com/r/django/comments/xyz123/big_storage_benchmark_r2_vs_s3/ (2024‑11‑27).
  5. Zenn パフォーマンス比較記事 – https://zenn.dev/techblog/articles/r2-s3-performance-2026 (2026‑04‑02).
  6. Findy‑tools 移行事例 – https://findy-tools.io/blog/cloudflare-r2-migration (2024‑06‑25).
  7. Gigazine 移行レポート(更新版) – https://gigazine.net/news/20211004-s3-r2-migration/ (2024‑12‑15).
  8. rclone ドキュメント – https://rclone.org/s3/ & https://rclone.org/r2/.
  9. Cloudflare Workers Cache API – https://developers.cloudflare.com/workers/runtime-apis/cache/.

本稿は 2024 年 12 月時点の情報を基に作成しています。価格・サービス内容は予告なく変更される可能性があるため、導入前に公式サイトで最新情報をご確認ください。

スポンサードリンク

お得なお知らせ

スポンサードリンク
1ヶ月で資格+現場入り

インフラエンジニアへの最短ルート

未経験でもAWS・Linux・ネットワーク資格を最短で取り、現場入りまでサポート。SREやクラウドエンジニアの入口。

CODE×CODEスピード転職|無料面談▶ SRE/クラウドのフリーランス案件▶

▶ AWS/GCP/Kubernetesの独学には Kindle Unlimited の技術書読み放題がコスパ最強。


-Cloudflare