AWSコスト削減は、請求の可視化、未使用リソースの整理、性能を保った適正サイズ化、割引契約、予算管理の順で進めます。削減額だけでなく、作業費、可用性、セキュリティ、将来の変更予定まで含めて判断することが重要です。

AWSコスト削減は可視化と判断基準づくりから始める

AWSコストを安全に削減する第一歩は、総額ではなく「どのシステムで、何の利用料が、なぜ増えたか」を把握することです。請求額だけを見ても、事業成長に伴う正常な増加なのか、過剰構成や削除漏れなのかを判断できません。

まずはAWS Cost Explorer(=AWS費用をサービスや期間別に分析する機能)で、直近3〜6か月を目安に次の軸で分解します。

  • サービス別:EC2、RDS、S3、CloudWatch、データ転送など
  • アカウント別:本番、開発、検証、部署別のどこで発生したか
  • リージョン別:意図しない地域でリソースが稼働していないか
  • Usage Type別:稼働時間、保存容量、リクエスト数、転送量など
  • タグ別:システム、環境、担当部署、費用負担先ごとの金額
  • 購入オプション別:オンデマンド、Savings Plans、RI、Spotの内訳

費用の大きい環境では、AWS Data ExportsやCost and Usage Report(CUR=請求・利用明細を細かく出力するデータ)を使うと、リソース単位に近い分析ができます。ただし、最初から詳細データをすべて調べる必要はありません。金額上位のサービスと、前月から増加した費目を先に確認するほうが効率的です。

請求額と管理会計上のコストを分ける

AWSでは、割引や前払いの扱いによってコストの見え方が変わります。月々の利用傾向を見る場合は、前払い分を利用期間へ配分した償却後コストも確認します。一方、経理上の支払額と照合する場合は、請求書、税、AWS Marketplace、サポート料金などを含めて確認しなければなりません。

分析を依頼するときは、どの金額を削減基準にするのかを先に決めましょう。異なる指標を混在させると、施策前後の比較が正しくできません。

判断したいこと 適した見方 注意点
毎月の支払額を把握したい 請求書とサービス別請求額 税、為替、サポート料金も変動します
実際の利用効率を比較したい 償却後コストと利用量 前払い契約の支払月だけで判断しません
事業の採算を確認したい 注文・顧客・処理件数当たりの単位コスト 売上や利用者数の増減も併記します
無駄を探したい リソース、Usage Type、タグ別費用 タグ未設定分を漏らさないようにします

ECサイトなら1注文当たり、SaaSなら1契約社または1ユーザー当たり、メディアなら1万PV当たりのAWS費用を追います。請求額が増えても、利用者当たりのコストが下がっていれば、システム全体の効率は改善している可能性があります。

削減してはいけない条件を先に決める

コスト削減の判断基準には、月額だけでなく事業上の制約を含めます。最低限、次の項目を整理してください。

  • 許容できる応答時間と処理時間
  • 稼働率や冗長化の要件
  • RTO(=障害後に復旧するまでの目標時間)
  • RPO(=どの時点までデータを戻せればよいかという目標)
  • バックアップとログの保存期間
  • セキュリティ、監査、法令上の要件
  • 今後6〜12か月の利用増減、移行、終了予定

発注のご相談を受ける立場では、「AWS料金を下げたい」という依頼でも、実際には環境別の費用が分からず、削減目標も定義されていないケースが少なくありません。まずProject、Environment、Owner、CostCenterなどのタグを統一し、請求設定でコスト配分タグを有効化することが基本です。タグを付けても過去分へさかのぼって分類できるとは限らないため、早めに整備しましょう。

削減効果が出やすいAWS費目と見直し方

優先すべきなのは、未使用リソース、過剰な常時稼働、不要な保存データです。構成変更や長期契約よりリスクが低く、元に戻しやすい施策から進めます。ただし、名称や利用率だけで削除せず、依存関係、担当者、復旧方法を確認してください。

費目 最初に確認する項目 代表的な見直し 主な注意点
EC2 平均・ピーク負荷、稼働時間 適正サイズ化、夜間停止、新世代への移行 CPUだけでなくメモリ、I/O、応答時間も確認します
EBS・スナップショット 未接続ボリューム、世代数 不要分の削除、保持ルールの設定 復元試験と保存要件が必要です
RDS 負荷、冗長化、ストレージ サイズ変更、開発環境停止、世代変更 本番の可用性を費用だけで落とさないようにします
S3 容量、参照頻度、保存期間 ライフサイクル、不要データ削除 取り出し料金や最低保存期間を確認します
NAT Gateway・転送 経路、転送先、転送量 通信経路やエンドポイントの見直し 代替構成にも時間・処理料金が発生し得ます
CloudWatch ログ取込量、保持期間 ログ量削減、保持期限設定 保持期間だけでは取込料金を削減できません
コンテナ・サーバーレス 常駐数、実行回数、割当量 最小台数やメモリ、同時実行設定の見直し ピーク時の遅延や起動時間を検証します

EC2・EBS・パブリックIPv4

EC2では、開発・検証環境の夜間や休日停止が比較的取り組みやすい施策です。ただし、停止中もEBSボリューム、スナップショット、パブリックIPv4アドレスなどの料金が残る場合があります。「EC2を停止したので無料になった」とは限りません。

インスタンスの適正サイズ化では、CPU使用率だけで判断しないことが重要です。AWSの標準メトリクスだけではメモリ使用率を確認できない構成もあるため、CloudWatch Agentなどで計測します。少なくとも平常時とピーク時について、次を確認します。

  • CPUとメモリの使用率
  • ネットワーク転送量
  • ディスクI/Oと待ち時間
  • アプリケーションの応答時間
  • Auto Scalingの起動実績
  • 障害時に必要な余力

新しいインスタンス世代やArm系プロセッサへの移行で効率が上がることもありますが、アプリケーション、ライブラリ、監視ツールの互換性検証が必要です。単なる設定変更ではなく、改修やテストを伴う場合は、その費用も投資回収計算へ含めます。

RDS・S3・バックアップ

RDSは単価が大きくなりやすい一方、データベース障害は事業への影響も大きいため、慎重に進めます。本番環境ではMulti-AZ(=異なる設備へ冗長化する構成)を外す前に、必要な稼働率と復旧時間を確認してください。開発環境の停止には効果を期待できますが、エンジンや構成によって停止可能期間や自動再起動などの条件があります。

S3では、アクセス頻度と保存期間に応じたストレージクラスを選び、ライフサイクルルールで移行・削除を自動化できます。ただし、低価格なクラスほど常に総額が安いわけではありません。最低保存期間、取り出し料金、移行リクエスト料金、小さなオブジェクトの多さを含めて試算します。

バックアップやスナップショットは、単に古いという理由で削除しないでください。次のチェックリストを満たしたものから整理します。

  • 保存期間の根拠が決まっている
  • 本番・開発・監査用を区別できる
  • 復元先と復元手順が明確になっている
  • 実際に復元できることを試験している
  • システム廃止後のデータ保持責任者が決まっている

NAT Gateway・データ転送・ログ

ネットワーク費用は、構成図がないと原因を特定しにくい費目です。NAT Gatewayでは稼働時間と処理データ量、データ転送ではリージョン間、アベイラビリティゾーン間、インターネット向け通信を確認します。S3やコンテナイメージへの大量アクセスがNAT Gatewayを経由している場合は、VPCエンドポイントなどで経路を改善できる可能性があります。

ただし、エンドポイント側にも方式に応じた料金があり、通信先や転送量によっては割高になります。現行経路と変更後経路を図にし、AWS Pricing Calculatorと実測値を使って比較しましょう。料金はリージョンや時期で変わるため、固定的な削減率を前提にしないことが大切です。

CloudWatch Logsでは、保存期間が無期限になっているロググループだけでなく、ログの取込量も確認します。保持期間を短くすると保存費用は抑えられますが、アプリケーションが大量のデバッグログを出している場合、取込料金は下がりません。ログレベル、重複出力、監査対象を整理し、必要な情報を失わない範囲で出力元から減らします。

Savings PlansとRIは整理後の安定利用に適用する

Savings Plans(=一定期間の時間当たり利用額を約束して割引を受ける仕組み)やReserved Instances、略してRI(=特定サービスなどの継続利用を前提に割引を受ける仕組み)は、未使用リソースを整理した後に検討します。先に購入すると、無駄な構成を長期間固定するおそれがあります。

選択肢 向いている状況 発注者が確認する点
オンデマンド 新規事業、終了時期や負荷が読めない 柔軟性を優先する理由があるか
Compute Savings Plans 計算資源は継続するが構成変更の可能性がある 継続する最低利用額はいくらか
EC2 Instance Savings Plans リージョンやインスタンス系統が安定している 移行計画と矛盾しないか
RDSなどのRI 対象サービスを継続利用する エンジン、リージョン、構成の変更予定がないか
Spot Instances 中断を許容できるバッチや分散処理 再実行、保存、監視が設計されているか

割引契約では、利用率とカバレッジを分けて見ます。利用率は購入した契約をどれだけ使えたか、カバレッジは対象利用のうちどれだけ割引で賄えたかという指標です。高いカバレッジを目指して過剰購入すると、事業縮小や移行時に未使用分が生じます。

過去数か月の最低利用量だけでなく、今後のサービス終了、アーキテクチャ変更、他クラウドへの移行、繁忙期を確認してください。購入期間、支払い方法、変更・売却可否などの条件は商品ごとに異なるため、契約時点のAWS公式情報で確認します。

AWSコスト削減の実践手順と外注費用の目安

AWSコスト削減は、分析、候補の試算、リスク評価、検証、本番反映、効果測定の6段階で進めます。金額の大きさだけで優先順位を決めず、削減後の純効果と事業リスクを比較することがポイントです。

手順1:対象範囲と基準月を決める

対象アカウント、システム、AWS以外の関連費用を明確にします。季節変動がある事業では単月ではなく、通常月と繁忙月を含む複数月を基準にします。

手順2:費用上位と急増項目を特定する

サービス別、Usage Type別に分解し、上位費目と前月差の大きい項目を抽出します。サポート料金、Marketplace、データ転送、ログなど、EC2以外も対象にしてください。

手順3:施策ごとの純効果を試算する

月額削減見込みだけでなく、新たに必要となるサービス料金、改修費、テスト費、監視費を差し引きます。年間の純効果は、おおむね「月額削減額から追加運用費を引いた金額の12か月分-初期対応費」で比較できます。

月額数万円の環境では、詳細調査や複雑な改修の費用が削減額を上回る場合があります。その場合は、未使用リソースの整理と予算通知に絞る判断も合理的です。

手順4:リスクと戻し方を決める

各施策について、性能、可用性、セキュリティ、監査への影響を評価します。変更前の設定、復旧手順、判断責任者を記録し、問題が起きた場合に元へ戻せる状態にします。

手順5:検証環境から段階的に反映する

開発・ステージング環境で負荷試験と復旧試験を行い、本番は影響の小さい時間帯に変更します。サイズ変更後は平均値だけでなく、ピーク時やバッチ処理時の応答時間も確認します。

手順6:請求と性能の両方で効果測定する

反映直後に削減成功と判断せず、請求データへ反映された後に基準月と比較します。アクセス数や処理件数が変わった場合は、単位コストでも検証します。

外注費用と期間の一般的な目安

外注費用は、AWSアカウント数、月額利用料、構成資料の有無、分析データの粒度、改修範囲によって大きく変わります。一般的な目安は次のとおりです。

依頼範囲 費用の目安 期間の目安 主な成果物
小規模環境の簡易診断 20万〜80万円 2〜4週間 費用分析、削減候補、概算効果
複数アカウントの詳細診断 80万〜250万円 1〜2か月 構成分析、優先順位、リスク評価、実施計画
設計変更・検証・本番反映まで 100万〜500万円以上 1〜4か月以上 変更設計、テスト、移行、効果測定
継続的なコスト管理支援 月額10万〜50万円以上 月次契約 月次レポート、異常調査、改善提案

上記は一般的な目安であり、大規模な組織管理、ネットワーク再設計、アプリケーション改修、24時間対応が必要な場合は上振れします。見積もりでは、診断だけなのか、設定変更やアプリ改修まで含むのかを分けて確認してください。

外注先を選ぶ際は、次の点を比較します。

  • 削減額だけでなく性能・障害リスクを説明できる
  • 請求データとAWS構成の両方を確認する
  • 削減見込みの計算条件を開示する
  • 施策ごとに初期費用と追加運用費を示す
  • 本番変更前の検証とロールバックを計画する
  • 割引契約の販売だけを目的としていない
  • 作業後の効果測定を成果物に含める
  • rootユーザー共有ではなく、必要最小限の権限で調査する

相見積もりを取る場合は、対象アカウント、直近の概算費用、課題、依頼範囲、希望成果物をそろえます。依頼条件のまとめ方は、RFPの作り方|システム開発の依頼準備も参考になります。AWS構成の診断から改修、継続管理まで依頼したい場合は、開発のご相談はこちらからご相談ください。

継続的な予算管理と失敗を防ぐポイント

AWSコストは、一度削減して終わりではありません。新機能の追加、アクセス増加、障害対応、検証リソースの削除漏れによって再び増えるため、予算通知と定期レビューを運用に組み込みます。

AWS Budgets(=予算額に対する実績や予測の通知機能)では、予算の80%、100%など複数段階の通知を設定します。Cost Anomaly Detection(=通常と異なる費用増加を検知する機能)も併用すると、予算内に収まる小さな異常を発見しやすくなります。

ただし、これらの通知にはデータ集計上の遅延が生じる場合があります。通常の予算通知は、設定するだけで即時にリソースを停止する仕組みではありません。自動停止を行う場合は、本番システムの誤停止を防ぐ承認条件と除外設定が必要です。

推奨する確認頻度

  • 通常時:月1回、サービス別費用と予算差を確認する
  • 構成変更後:数日〜1週間単位で利用量と性能を確認する
  • 大規模リリース時:日次で主要費目と異常通知を確認する
  • 四半期ごと:Savings PlansやRIの利用率、将来計画を確認する
  • 年1回以上:タグ、保存期間、担当者、廃止済み環境を棚卸しする

費用の管理責任者と、技術変更の責任者も分けて明確にします。経理担当者だけでは技術的な原因を判断できず、開発担当者だけでは予算全体を把握できません。月次レビューには、事業責任者、インフラ担当、経理または管理部門が参加できる形が理想です。

よくある失敗 問題点 回避策
分析前にSavings Plansを購入する 不要な利用量を長期固定する 整理後の最低利用量だけを対象にします
CPU平均値だけでサイズを下げる ピーク時に性能不足が起きる メモリ、I/O、応答時間も検証します
所有者不明のリソースを即時削除する 依存システムや復旧用データを失う 担当者、依存関係、復元方法を確認します
ログの保持期間だけ短くする 大量取込の料金が残る 出力元のログレベルと重複を見直します
削減見込みだけで施策を選ぶ 改修費や障害リスクが上回る 純効果、回収期間、事業影響で比較します
予算通知の宛先が個人だけになる 異動や休暇で対応が止まる 共有アドレスと対応手順を設定します

運用を外部へ委託する場合は、AWSコスト管理を保守契約の対象に含めるのか、障害対応とは別契約にするのかを確認してください。保守範囲と料金の考え方は、システム保守費用の相場|契約・見積もりの見方でも解説しています。

まとめ

  • AWSコスト削減は、請求の可視化、未使用分の整理、適正サイズ化、割引契約、継続管理の順で進めます
  • 請求総額だけでなく、顧客数や処理件数当たりの単位コストも確認します
  • EC2以外に、EBS、RDS、S3、NAT Gateway、データ転送、CloudWatchも調査します
  • Savings PlansやRIは、構成整理後も継続する最低利用量に限定して検討します
  • 削減施策は、初期費用、追加運用費、性能、可用性、復旧要件を含めて比較します
  • AWS Budgetsと異常検知、月次レビューを組み合わせ、削減後も継続的に管理します
  • 外注時は、計算根拠、作業範囲、リスク評価、効果測定を見積もりに含めます

よくある質問

Q. AWSコスト削減で最初に行うことは何ですか?

A. 直近3〜6か月の費用をサービス、アカウント、リージョン、Usage Type別に分解します。金額上位と前月からの増加額が大きい項目を優先し、事業成長による増加か、過剰構成や削除漏れかを切り分けます。

Q. Savings PlansやRIはすぐに購入したほうがよいですか?

A. 先に未使用リソースの削除と適正サイズ化を行うのが基本です。その後も契約期間を通じて継続する最低利用量を、過去実績と今後の事業・移行計画から算出して購入範囲を決めます。

Q. AWSコスト削減を外注する費用はいくらですか?

A. 一般的な目安として、小規模な簡易診断は20万〜80万円、複数アカウントの詳細診断は80万〜250万円、設計変更や本番反映まで含む場合は100万〜500万円以上です。アカウント数、構成資料、改修範囲、セキュリティ要件で変動します。

Q. AWS Budgetsを設定すると自動でリソースが停止しますか?

A. 通常の予算通知は、実績や予測がしきい値へ達したことを知らせる機能であり、設定しただけではリソースを停止しません。自動アクションを利用する場合も、通知遅延、誤停止の影響、本番環境の除外条件を考慮して設計します。

Q. AWSコストはどのくらいの頻度で確認すべきですか?

A. 通常は月1回以上のレビューが目安です。大規模リリースや構成変更の直後は日次または週次で確認し、割引契約の利用状況や将来計画は四半期ごとに見直します。