plainstackBook a free call
← All guides

Fundamentals — 12 min read

The AWS cost optimization checklist

Most AWS cost advice is a list of things you could theoretically do. This is the order we actually work in, and why.

By Plainstack/

Most AWS cost checklists are a flat list of every possible optimization, which is useless in practice — because the items aren't equal. Some take twenty minutes and pay back immediately. Some take a quarter of engineering time and lock you into a decision for three years.

This is the same list, ordered by how fast it pays back and how little it risks. Work top to bottom. Stop when the remaining items cost more effort than they return, which for most teams is somewhere around item eighteen.

Your progress is saved in this browser, so you can work through it over a few days and pick up where you left off.

If you're not yet sure the bill is a problem — as opposed to simply being large — is my AWS bill too high? is the better starting point. It's five checks that answer the question properly, which is more useful than optimizing something that turns out to be fine.

Phase 1 — Delete things (an afternoon, pays back immediately)

Nothing here requires measurement, planning, or a maintenance window. These are resources that exist and do nothing.

0 / 7

On that fifth item, the EBS guide covers the two cases where you should check the baseline IOPS before switching.

Phase 2 — Turn things off (this week)

Still no right-sizing, no architecture. Just: does this need to be running right now?

0 / 5

More on the RDS side, including how to decide which databases genuinely need Multi-AZ.

Phase 3 — Right-size (needs a week of measurement first)

Now you need data. Look at a representative period — at least two weeks, ideally a month that includes your busiest day — before changing anything.

0 / 6

That last item is usually the largest single number in this phase, and the hardest to check, because the consumed figure isn't in the EC2 console: io1 vs io2 vs gp3 has the CloudWatch metrics and an interactive comparison. If you're not sure which volume type a workload should be on at all, start with EBS volume types explained.

Phase 4 — Fix the architecture (a sprint or two)

Higher effort, but these are the ones that stop the bill growing back.

0 / 5

The first two items have their own guides — why NAT Gateway bills get so high and AWS data transfer costs explained, which prices every path in one table and lists the usage-type strings that reveal yours. Both are worth reading properly before you touch anything in this phase.

Phase 5 — Commit (last, and only now)

Savings Plans and Reserved Instances give real discounts — typically substantial — in exchange for committing to a level of spend for one or three years. Which instrument to buy, and how to size it, is its own guide.

This is the last step, and the ordering is the whole point.

If you buy commitments before doing Phases 1–4, you commit to your current, wasteful usage level. You lock in the over-provisioned instances. You lock in the environments that should have been switched off at night. You get a discount on waste, and you get it for one to three years, and you can't undo it. It feels like progress on the invoice while making the underlying problem permanent.

Do it in this order and you commit to a floor that's real.

0 / 5

What this looks like in practice

Phases 1 and 2 are usually a single focused week and produce a visible drop on the next invoice. Phase 3 needs measurement, so it spans a few weeks of calendar time but not much engineering time. Phase 4 is real project work and should be scheduled like it. Phase 5 is an afternoon of arithmetic that should only happen after the rest.

The mistake almost everyone makes is starting at Phase 5 because it's the one that requires no engineering work — and then wondering, a year later, why the bill never really came down.

Working through this without doing it manually

Every check above is something you can run yourself, and the list is deliberately complete enough that you don't need anyone's help to do it. If you'd rather see which ones apply to your account before you spend the week, the free teardown reads a Cost Explorer export and tells you which of these patterns show up in your service mix — in your browser, with nothing uploaded.

Check your own account

Does this apply to you? Find out in two seconds.

Drop a Cost Explorer export into the free teardown. It reads your service mix and tells you which of these patterns show up in your bill — in your browser, with no upload and no email.