従量課金を抑える第一歩は、消費の内訳を把握することです。課金対象の利用ダッシュボード で、どの製品がコストを押し上げているかを確認してから、次の方針を適用します。
| 方針 | 効果 |
|---|---|
| 予算アラート を設定し、想定外の急増を早く捉える | 全製品で、請求書の想定外の増額を防ぎます |
| 課金対象の利用ダッシュボード を毎週確認し、コストの傾向を把握する | 請求書が届く前に、暴走したコストを見つけます |
| リクエストのライフサイクル全体で 課金の発生箇所 を理解する | どの段階が最もコストを生むかを特定します |
キャッシュされた応答は、Cloudflare を通る経路のなかで最も安価です。キャッシュヒットごとに、オリジン取得コスト、Argo のルーティング料金、Workers の実行を避けられます。
| 方針 | 削減できるもの |
|---|---|
TTL を長くし、適切な Cache-Control ヘッダーでキャッシュヒット率を上げる |
Argo のデータ転送、Workers の呼び出し、オリジン負荷 |
| アクセス頻度が低いロングテールコンテンツには Cache Reserve を使う | オリジン取得 — 通常なら追い出されるコンテンツもキャッシュに残します |
| 階層化キャッシュ でオリジンへの取得を減らす | オリジン帯域と、Cloudflare データセンター間の Argo 転送 |
| キャッシュルール で、より多くの静的コンテンツをデフォルトでキャッシュする | 全体のキャッシュヒット率 |
| 方針 | 削減できるもの |
|---|---|
| ログ保持には Logpush ではなく Workers Logs を使う | Logpush を有効にした Workers リクエストと、Logpush のデータ転送 |
| アイドルな WebSocket 接続がある Durable Objects には WebSocket Hibernation API を使う | Duration(GB-s)の課金 — Durable Object がハイバネート中は課金が止まります |
| 方針 | 削減できるもの |
|---|---|
| R2 ライフサイクルルール で、使わないデータを Infrequent Access ストレージクラスへ移す | アーカイブデータのストレージコスト |
| オブジェクト単位の読み取りではなく、可能な範囲で R2 操作をまとめる | Class B 操作の回数 |
| Workers 経由のプロキシではなく、事前署名 URL でクライアントから直接アクセスする | Workers の呼び出しと CPU 時間 |
| R2 オブジェクトの Cache-Control ヘッダー を有効にし、Cloudflare の CDN キャッシュを使う | Class B 読み取り — キャッシュされたオブジェクトは R2 に届きません |
| 方針 | 削減できるもの |
|---|---|
| Stream の埋め込みページに適切なキャッシュヘッダーを設定する | 繰り返される Stream 配信分(分単位) |
| Image Resizing の URL 形式 で width / height パラメーターを使い、適切なサイズのバリアントを配信する | 変換回数 — サイズ指定したバリアントはキャッシュされます |
| 方針 | 削減できるもの |
|---|---|
| 可用性要件の範囲で、ヘルスチェック間隔を最長の許容値にする | 負荷分散ホスト名への DNS クエリ |
| リージョン冗長が重要でない場合は、ヘルスチェック対象リージョンを減らす | ヘルスチェック頻度の乗数 |
可視化はコスト最適化の土台です。Cloudflare は次の 2 つの補完的なツールを提供します。
- 課金対象の利用ダッシュボード — 製品ごとの日次の従量コストを、グラフと並べ替え可能な表で表示します。Pay-as-you-go アカウントで利用できます。
- 予算アラート — 合計支出が、自分で決めた金額のしきい値を超えたときにメール通知を送ります。
製品ごとの利用通知(バイト、リクエスト、分)は、Cloudflare ダッシュボードで 従量課金の通知 を設定します。
- 課金の発生箇所 — リクエストを追い、どの製品が課金するかを確認します
- 従量課金 — 無料枠と超過単価の製品表
- 課金対象の利用を監視する — 日次の従量コストを追跡します
- 予算アラート — 支出がしきい値を超えたときに通知を受けます