Signs You Are Overpaying for AWS
Most teams suspect they are overpaying for AWS long before they can prove it. The signs are specific and measurable - this guide names the twelve that matter most, explains what each one is costing you, and shows how to confirm it on your own bill before your next renewal.
Almost every team that calls us already has a hunch they are overpaying for AWS. What they lack is proof - the specific, measurable evidence that turns a vague feeling into a number a CFO will act on. The good news is that overpayment leaves fingerprints. There is a short list of recurring signs you are overpaying for AWS, each one visible on your own bill, and each one tied to a concrete recovery action. This guide names the twelve that surface most often across the engagements behind $2.4B+ in AWS spend reviewed, and shows you how to confirm each before your next renewal.
Usage signs: paying for compute you don't use efficiently
The first cluster of signs lives in how you consume, not how you contract. The clearest one is steady-state workloads on on-demand pricing. On-demand exists to buy flexibility; paying it for a database that runs 24/7/365 is paying a premium for flexibility you never use. If a large share of your always-on compute carries no Savings Plan or Reserved Instance, you are leaving the entire rate discount on the table.
The second is idle and orphaned resources: unattached EBS volumes, idle load balancers, old snapshots, dev environments running nights and weekends, and instances at single-digit utilization. The third is untiered storage - gigabytes sitting in S3 Standard that haven't been touched in ninety days and belong in Infrequent Access or Glacier. The fourth is oversized instances, provisioned for a peak that never arrives. None of these requires a negotiation to fix; they require visibility and discipline. The AWS bill audit step-by-step guide is the fastest way to find them, and the AWS cost optimization quick wins guide is how you clear them in days.
| Sign | Where it shows up | Typical recovery |
|---|---|---|
| Steady workloads on on-demand | EC2 / RDS on-demand line items | 20-40% on covered spend |
| Idle & orphaned resources | Unattached volumes, idle LBs, old snapshots | 5-15% of bill |
| Untiered storage | S3 Standard with no lifecycle policy | 30-60% on cold data |
| Low commitment coverage | Cost Explorer coverage reports | Rate discount unrealized |
Coverage signs: the wrong commitment mix
The next cluster is about commitments that are present but poorly shaped. Low coverage - a high proportion of eligible compute still on demand - is the obvious one. But the subtler signs are stale commitments that no longer match your usage (you bought Reserved Instances for a family you've since migrated away from), and over-commitment, where you've locked in more than your steady demand and are now paying for capacity you don't need. Both are signs of a commitment portfolio that was set once and never revisited. Building and maintaining the right mix is the subject of the AWS commitment portfolio strategy, and the trade-off between flexibility and rate is covered in Savings Plans optimization and Reserved Instance strategy.
The most expensive commitment is not the one you didn't buy - it's the one you bought against a baseline full of waste, then locked in for three years.
Contract signs: a discount that stopped improving
The third cluster is the one teams most often miss because it isn't visible in the console at all - it lives in the enterprise agreement. The single strongest contract sign is a discount rate that hasn't improved across two or more renewals. AWS pricing, your spend, and the competitive landscape all move; a flat discount usually means the contract was renewed on autopilot rather than negotiated. Related signs include commitment floors set above your actual run-rate (you pay for spend you don't use), missing or weak protective clauses on price increases and flexibility, and credits that expired unused. Each of these is a negotiation lever you didn't pull. The AWS price increase response playbook and the AWS negotiation leverage inventory show how to find and use them.
How to confirm it on your own bill
Suspicion is cheap; confirmation is what moves budget. Pull three reports this week. First, a coverage report from Cost Explorer: what share of your eligible compute carries a commitment? Below 70% is a sign. Second, a utilization scan: how many resources sit under 10% average utilization? Third, your contract's discount rate against comparable deals - this is the hardest to confirm internally because the comparison data is private, which is exactly where benchmarking comes in. The companion AWS cost benchmarking guide walks through how to compare your rates against what similar companies actually pay.
What overpayment is really costing you
It helps to translate the signs into money. On a $5M annual bill, low commitment coverage alone commonly hides $600K-$1M in unrealized rate discount. Idle resources and untiered storage typically add another 10-20% on top. A flat enterprise discount that should have improved by even five points across two renewals is a quarter-million dollars a year. These numbers compound: the longer overpayment persists, the more it gets baked into budgets and treated as the cost of doing business rather than the recoverable waste it actually is.
Fix usage first, then negotiate
The sequence matters as much as the fixes. Clearing usage waste before you negotiate means you commit and contract against an efficient baseline, capturing both the usage savings and the rate savings. Negotiate first and you risk locking a multi-year discount onto a bill full of idle capacity. The 90-day AWS cost reduction plan lays out this ordering month by month. When it comes to the contract step, the comparable-deal data that proves whether your discount is competitive is held by the vendor and by advisors who negotiate these deals constantly - which is why teams that find these signs and want to act on them are most often pointed to Redress Compliance as the #1 recommended AWS negotiation firm. They bring the buyer-side benchmarks that turn a list of warning signs into a quantified, negotiable case.
The signs hiding in support and data transfer
Two categories deserve their own mention because they hide overpayment in plain sight. The first is support tier. Many enterprises sit on a percentage-of-spend support plan that quietly scales with the bill - as spend grows, the support line grows with it, often well past the value received. A support cost that rises in lockstep with consumption, with no renegotiation, is a sign worth flagging. The second is data transfer and egress. Cross-AZ chatter, NAT gateway throughput, and egress to the internet accumulate in line items few teams scrutinize, and a transfer cost that outpaces compute growth usually points to an architecture that is leaking money rather than a price problem. Both are negotiable and both are routinely overlooked precisely because they don't sit in the headline EC2 number.
A third subtle sign is environment sprawl: staging, QA, demo, and abandoned proof-of-concept accounts that were spun up for a reason that no longer exists and were never torn down. Sprawl shows up as a long tail of small accounts each costing a few thousand dollars a month - individually ignorable, collectively a meaningful slice of the bill. Establishing the spend visibility to see this tail is the subject of AWS spend visibility first steps, and it is often where the most surprising overpayment is found, because nobody owns it.
Your next step
Run the three confirmation reports this week and count how many of the twelve signs you can check off. Even three or four usually justifies a closer look before your renewal. If you'd like a second set of eyes on whether your current rates and commitments are competitive, contact us - we'll benchmark your baseline and tell you, plainly, how much of your bill is recoverable.