Cloud Cost Optimization — AWS

AWS Cost Optimization:
20 Strategies That Save Millions

AWS is the world's largest cloud provider and, for many enterprises, the single biggest technology cost. This guide covers 20 proven strategies — from quick-win waste elimination to multi-year EDP negotiation — that consistently deliver 30–50% effective cost reduction.

72%
Max Savings Plan Discount
90%
Spot Instance Savings
25%
EDP Discount Available
40%
Graviton Price-Performance Gain

This guide is part of the Cloud Cost Optimization: Enterprise FinOps Guide series. It covers AWS-specific strategies in detail. For the FinOps framework and multi-cloud governance, see the pillar guide. For Azure and GCP tactics, see our Azure Cost Management and GCP Cost Optimization guides.

Commitment Discount Strategies (Strategies 1–5)

Strategy 01
Buy Compute Savings Plans for EC2, Lambda, and Fargate
Compute Savings Plans provide discounts of up to 66% on EC2, Lambda, and Fargate in exchange for a consistent $/hour spend commitment across any instance family, size, region, OS, and tenancy. This is the most flexible AWS commitment product and is the default recommendation for most EC2 workloads. Analyse 3–6 months of usage data using AWS Cost Explorer's Savings Plan recommendations tool to identify the optimal commitment amount. Start conservatively — commit to cover 60–65% of your baseline, not 100%, to leave room for workload changes. Commitment period: 1 year (66% discount) or 3 years (additional ~5% on top).
Strategy 02
Use EC2 Instance Savings Plans for Maximum Discount
EC2 Instance Savings Plans offer up to 72% discount in exchange for a commitment to a specific instance family in a specific region. They are less flexible than Compute Savings Plans (you're committing to a family, not just a dollar amount) but deliver higher discounts for workloads with stable instance family requirements. Ideal for production application tiers with predictable instance family usage (e.g., m6i, c6g). Can be combined with Compute Savings Plans — use EC2 Instance SP for the most stable workloads, Compute SP for the remainder.
Strategy 03
Purchase RDS and ElastiCache Reserved Instances
AWS Savings Plans do not apply to RDS, ElastiCache, OpenSearch, or Redshift. For these database services, Reserved Instances are the primary commitment discount mechanism. RDS RIs offer 30–60% savings over on-demand for 1 or 3-year terms. For production databases that run continuously, RIs are strongly recommended — database workloads are typically the most stable and predictable in an AWS estate. Convertible RIs for RDS allow instance type changes at renewal, providing flexibility if your database tier evolves.
Strategy 04
Monitor and Actively Manage RI and SP Utilisation
Purchasing commitments is only half the work — unused commitments represent wasted spend. Monitor RI utilisation rate (target: above 90%) and Savings Plan utilisation weekly using AWS Cost Explorer. If utilisation drops, investigate whether workloads have been decommissioned or right-sized below your commitment. Unused Standard RIs can be listed for sale on the AWS Marketplace; Convertible RIs can be exchanged for different configurations. Build a monthly commitment review process into your FinOps operating model.
Strategy 05
Layer Savings Plans with Spot Instances for Maximum Coverage
The most cost-efficient AWS compute strategy layers three pricing models: Savings Plans covering the steady-state baseline, Spot instances for variable and batch workloads, and on-demand for peak traffic spikes. This tiered approach can achieve effective average compute costs of $0.02–$0.04/vCPU-hour for general workloads — 70–85% below pure on-demand pricing. Build this layering into your Auto Scaling Groups using mixed instance policies to automatically blend pricing models based on workload characteristics.

Compute Optimisation (Strategies 6–10)

Strategy 06
Expert Advisory

Want independent help negotiating better terms? We rank the top advisory firms across 14 vendor categories — free matching, no commitment.

Right-Size EC2 Instances Using AWS Compute Optimizer
AWS Compute Optimizer uses machine learning to analyse CloudWatch metrics and identify EC2 instances, Auto Scaling Groups, EBS volumes, and Lambda functions that are over-provisioned. The service is free (with optional enhanced infrastructure metrics add-on) and typically identifies 15–30% of instances as candidates for downsizing. Implement rightsizing in waves — start with non-production environments, then progressively address production workloads with adequate monitoring and rollback plans. Rightsizing before purchasing Savings Plans is critical: commit to the optimised baseline, not the over-provisioned one.
Strategy 07
Migrate Eligible Workloads to AWS Graviton
AWS Graviton3 and Graviton4 processors deliver 20–40% better price-performance than equivalent x86 instance types at the same or lower price. Graviton instances (m7g, c7g, r7g families) are available across EC2, RDS, ElastiCache, Lambda, and container services. Workloads that migrate most easily include: containerised applications, Java services on JVM, Python applications, and Go services. The main compatibility consideration is architecture-specific native binaries — most modern cloud-native applications have minimal friction. Running Graviton also unlocks lower Savings Plan rates for the same discount tier.
Strategy 08
Implement Spot Instances for Batch and CI/CD Workloads
Spot instances offer 60–90% savings vs on-demand at the cost of potential 2-minute interruption notice. Suitable workloads include: CI/CD build pipelines, ML training jobs, data processing and ETL, rendering, game servers, and test environments. Use Spot Fleet or EC2 Auto Scaling Groups with multiple instance types and Availability Zones to minimise interruption risk — with 10–15 instance type options configured, interruption rates below 5% are typical. See our Spot Instance Strategy guide for interruption handling patterns.
Strategy 09
Schedule Non-Production Environments to Stop Outside Business Hours
Dev, staging, and QA environments that mirror production in size but are only used during business hours represent a significant waste opportunity. Implementing AWS Instance Scheduler or Lambda-based scheduling to stop non-production EC2 and RDS instances outside hours (e.g., 6pm–8am weekdays, all weekend) typically reduces non-production compute costs by 60–70%. This requires coordination with development teams to accommodate scheduled tasks or overnight test runs, but the savings — often 10–18% of total AWS spend — justify the process change.
Strategy 10
Use AWS Lambda and Serverless for Event-Driven Workloads
For event-driven, low-frequency, or highly variable workloads, Lambda's consumption pricing model (per-millisecond billing, no idle cost) can dramatically reduce costs compared to always-on EC2 instances. A workload running 10 minutes per hour on a dedicated EC2 instance incurs full instance cost; on Lambda, you pay only for execution time. Lambda is not a universal replacement for EC2 — cold starts, execution time limits, and memory constraints apply — but reviewing workloads currently on EC2 that have bursty or infrequent invocation patterns can identify significant optimisation opportunities. See our Serverless Cost Optimisation guide.

Storage and Network (Strategies 11–14)

Strategy 11
Implement S3 Intelligent-Tiering and Lifecycle Policies
S3 storage costs accumulate silently. S3 Standard at $0.023/GB/month becomes significant at petabyte scale — many enterprises discover they're paying millions annually for infrequently accessed data in hot storage tiers. S3 Intelligent-Tiering automatically moves objects to cheaper tiers based on access patterns with no retrieval fees (small monitoring fee per object). For data with known access patterns, S3 Lifecycle Policies can transition objects to S3 Standard-IA after 30 days, S3 Glacier Instant Retrieval after 90 days, and S3 Glacier Deep Archive after 180 days — reducing storage costs by 40–92% for cold data. See our Cloud Storage Optimisation guide.
Strategy 12
Optimise EBS Volumes: Delete Unattached, Right-Type, and Right-Size
Unattached EBS volumes — orphaned when EC2 instances are terminated — are a silent cost leak. Audit for volumes not attached to any running instance and either snapshot-then-delete or terminate them. Additionally, review volume types: many workloads run on gp2 volumes that could migrate to gp3 at 20% lower cost with better baseline performance. Compute Optimizer provides EBS right-sizing recommendations; reviewing these quarterly and acting on them is a consistent source of incremental savings.
Strategy 13
Analyse and Reduce Data Transfer (Egress) Costs
AWS charges $0.09/GB for data transfer from EC2 to the internet in most regions, and $0.01–$0.02/GB for cross-AZ traffic. For data-intensive workloads, egress can represent 10–20% of total AWS spend. Strategies to reduce egress: consolidate workloads in the same AZ where latency permits (eliminating cross-AZ costs); use CloudFront to cache and serve static assets instead of direct S3-to-internet delivery; architect applications to minimise cross-region data movement; negotiate reduced egress rates as part of EDP discussions for high-egress workloads. See our Cloud Egress Costs guide.
Strategy 14
Review and Remove Idle Load Balancers and NAT Gateways
Application Load Balancers ($0.008/LCU-hour plus hourly charges), NAT Gateways ($0.045/GB + hourly), and Elastic IP addresses ($0.005/hour when not attached) accumulate costs even with low or zero traffic. Many enterprises have load balancers provisioned for test environments that were never decommissioned. A quarterly audit of LBs, NAT Gateways, and EIPs against actual traffic metrics in CloudWatch identifies candidates for consolidation or removal. NAT Gateway optimisation — using VPC endpoints for S3 and DynamoDB access instead of routing through NAT — can reduce data processing costs significantly for high-volume workloads.

Database and Managed Services (Strategies 15–17)

Strategy 15
Free Resource

Get the IT Negotiation Playbook — free

Used by 4,200+ IT directors and procurement leads. Oracle, Microsoft, SAP, Cloud — all covered.

Rightsize RDS Instances and Review Multi-AZ Necessity
RDS instances are often over-provisioned for peak load and run at 10–30% average CPU utilisation. AWS Compute Optimizer and Performance Insights provide rightsizing recommendations for RDS — review quarterly and apply downsizing after adequate testing. Multi-AZ deployments double RDS instance costs in exchange for automatic failover — appropriate for production databases, but unnecessary for dev, test, and analytics databases. Auditing Multi-AZ deployments across all environments and disabling it where not required is a quick win with immediate cost impact.
Strategy 16
Use Aurora Serverless v2 for Variable Database Workloads
Aurora Serverless v2 scales database capacity automatically from a configurable minimum ACU (Aurora Capacity Unit) to maximum, billing only for capacity used per second. For databases with highly variable load profiles — such as development databases, reporting databases with scheduled queries, or SaaS applications with uneven tenant activity — Aurora Serverless v2 can reduce costs by 40–80% compared to provisioned Aurora with equivalent peak capacity. Minimum ACU configuration should be set carefully to avoid cold start latency for latency-sensitive production workloads.
Strategy 17
Optimise Redshift: Pause Clusters and Use Serverless
Amazon Redshift provisioned clusters that are idle (no queries running) still incur full hourly charges. For data warehouses used for periodic reporting (daily, weekly) rather than continuous analytics, pausing the cluster between query periods and resuming before scheduled runs can reduce Redshift costs by 50–80%. Redshift Serverless — which charges per compute-second of actual query execution — is an alternative for sporadic or unpredictable query workloads. Evaluate the break-even point: if your Redshift cluster runs queries less than 30% of the time, Serverless pricing is likely more economical.

Enterprise Negotiation (Strategies 18–20)

Strategy 18
Negotiate an AWS Enterprise Discount Programme (EDP)
The AWS EDP provides negotiated discounts (typically 10–25% depending on commitment size) across most AWS services in exchange for a multi-year minimum spend commitment. EDP becomes viable at approximately $1M annual AWS spend. Key negotiation variables include: discount rate by service category, eligible services (some managed services are excluded from EDP discounts), shortfall provisions (what happens if you underspend), ramp schedules (graduated year-1 commits), support credit bundles, and Marketplace spend allowances. Engaging an independent AWS negotiation advisor who can benchmark recent deal terms is strongly recommended — see our cloud negotiation firm rankings for vetted advisors.
Strategy 19
Use Migration Commitments as Negotiation Leverage
AWS invests heavily in win-on-premises migrations and competitive cloud migrations (from Azure or GCP). If you have material on-premises workloads targeted for AWS migration, or existing workloads on competitor clouds, this creates significant negotiation leverage — AWS may offer migration credits, accelerated EDP ramps, or deeper discounts to secure the incremental spend. Quantify the migration pipeline value concretely (projected annual spend, timeline) and use it explicitly in EDP negotiations. Enterprises that secured 20%+ EDP discounts frequently attribute the additional headroom to credible migration commitments.
Strategy 20
Establish AWS Landing Zone Cost Controls Before Scaling
Organisations that implement cost governance before scaling AWS adoption avoid the expensive remediation work of cleaning up a sprawling, untagged, unmanaged estate. AWS Control Tower with Service Control Policies, mandatory tagging enforcement via AWS Config Rules, budget alerts via AWS Budgets, and a defined account vending model with cost allocation tags built-in from day one create a foundation that scales sustainably. The cost of retroactive governance — auditing thousands of resources, establishing allocation models for untagged spend, negotiating with engineering teams to add tags to production resources — far exceeds the upfront investment in a clean landing zone architecture. See our Cloud Cost Governance guide.

AWS Savings Opportunity Summary Table

Strategy Typical Savings Effort Time to Impact
Compute Savings Plans35–66%MediumImmediate
EC2 Instance Savings Plans50–72%MediumImmediate
RDS Reserved Instances30–60%MediumImmediate
EC2 Rightsizing15–30% computeMedium2–4 weeks
Graviton Migration20–40% better $/perfHigh1–3 months
Spot Instances (batch)60–90% for eligibleMedium2–6 weeks
Non-production scheduling60–70% non-prodLow1–2 weeks
S3 lifecycle policies40–92% storageLow1–2 weeks
Idle resource cleanup8–15% totalLowDays
EDP negotiation10–25% total AWSHigh3–6 months

Spending $1M+ on AWS? Let's review your EDP or cost optimisation opportunity.

Independent advisors with 500+ cloud engagements — Gartner recognised.
Get Matched →

Frequently Asked Questions

Should I use Savings Plans or Reserved Instances for EC2?
For most EC2 workloads in 2026, Compute Savings Plans are preferred over EC2 Standard RIs due to their flexibility across instance families, regions, and Fargate/Lambda coverage. The exception is when you want maximum discount for a very stable, specific instance family — in that case, EC2 Instance Savings Plans (up to 72%) or Standard RIs (up to 72%) provide additional savings. For RDS, ElastiCache, OpenSearch, and Redshift, Reserved Instances remain the only commitment discount option as Savings Plans don't apply.
What AWS services are excluded from EDP discounts?
AWS EDP discounts typically apply to most core infrastructure services (EC2, RDS, S3, CloudFront, Lambda, etc.) but exclude: third-party Marketplace products, AWS Support plans, and some managed services (the specific exclusion list is negotiable and varies by agreement). Enterprises should carefully review which services represent high spend proportions in their estate before agreeing to EDP terms, as excluded services may represent 20–40% of the total bill and will remain at list pricing.
How do I start an AWS cost optimisation programme?
Start with visibility: enable AWS Cost Explorer, activate Compute Optimizer, and audit your tagging coverage. Within the first 30 days, identify and terminate or stop idle resources, implement non-production scheduling, and download rightsizing recommendations. In the second month, size and purchase an initial Savings Plan covering 60% of your steady-state EC2 baseline. Build a monthly review cadence before expanding to more complex strategies. The FinOps for Enterprises guide covers the 90-day launch roadmap in detail.
How much can I negotiate off an AWS EDP?
EDP discounts for enterprises spending $1–5M annually typically range from 10–15%. At $5–20M, 15–20% is achievable with competitive negotiation. Above $20M, 20–25%+ is possible with credible multi-cloud competition and migration commitments as leverage. The discount also depends on commitment duration (3-year terms unlock additional headroom), ramp schedule flexibility, and whether you're a new AWS customer or renewing an existing EDP. Benchmark data from independent advisors who have closed multiple EDP deals in the last 12 months is the most reliable way to calibrate expectations.

Ready to Reduce Your AWS Bill?

Connect with an independent AWS cost expert who can benchmark your Savings Plan coverage, identify waste, and negotiate your EDP terms.