Skip to content

How to Reduce AWS Costs in 2026: A Practical Checklist for Startups

A practical checklist to reduce AWS costs: the 2024 and 2025 pricing changes that quietly raised bills, the quick wins, and what never to cut. Start today.

Engineering · 19 Oct 2026 · 5 min read

How to Reduce AWS Costs in 2026: A Practical Checklist for Startups

Rows of cooling fans on server hardware, lit in purple

ByAdnan AkramIT Infrastructure & DevOps Engineer

You can usually reduce AWS costs without touching reliability. Cloud bills rarely explode in one go. They creep: a test server nobody turned off, logs kept forever, a network setting that charges for every gigabyte.

For a small company it can become one of the biggest monthly bills, and a surprising share pays for nothing. This AWS cost optimisation checklist covers the recent pricing changes that caught many teams out, then the steps that save most for least effort.

Cost alerts and bill reviews are part of our cloud infrastructure service, but this checklist is work you can start yourself.

AWS pricing changes in 2024 and 2025 you may have missed

Every public IPv4 address now costs money

Since 1 February 2024, AWS charges $0.005 per hour for every public IPv4 address, attached or idle: about $3.60 per address per month.

Small on its own, but load balancers, NAT gateways and servers can each hold several, and forgotten Elastic IPs add up.

What to do: list your public IPv4 addresses (the VPC console's Public IP insights helps), release unused ones, and move servers that don't need one behind a load balancer or into private subnets.

Lambda now bills for cold starts (the INIT phase)

From 1 August 2025, AWS standardised billing for the Lambda INIT phase: the time a new instance of your function spends starting up. It used to be free for the most common setup (ZIP-packaged functions on managed runtimes). Now it's billed like normal execution time.

What to do: keep deployment packages small, move heavy setup out of the start-up path where you can, and check whether functions with heavy frameworks or many dependencies now cost noticeably more.

The Free Tier changed for new accounts

Accounts created on or after 15 July 2025 get a credit-based free plan (up to $200 in credits, lasting up to six months) instead of the old 12-month free tier. On a new project, plan for when the credits run out, and budget for hosting alongside what the MVP itself costs to build.

Step 1: get visibility into your AWS costs (one afternoon)

You can't cut what you can't see.

  • Open Cost Explorer and group costs by service, then by usage type. Most bills are dominated by three to five lines.
  • Set an AWS Budget with email alerts at, say, 80% and 100% of expected monthly spend.
  • Turn on Cost Anomaly Detection so a spike (a runaway job, a leaked key from a compromised developer machine) emails you the same day.
  • Tag resources by project and environment (production, staging, dev) so you can see what each one costs.

Step 2: delete what you're paying for and not using

Pure waste is the fastest saving:

  • Unattached EBS volumes left behind after servers were deleted.
  • Old snapshots and AMIs nobody will ever restore.
  • Idle load balancers, NAT gateways and Elastic IPs from old experiments.
  • Stopped instances holding large disks (you still pay for storage).
  • Development and staging environments running 24/7. Running them only in working hours (about 50 of the week's 168 hours) cuts their compute cost by roughly two-thirds.

Step 3: right-size EC2, Lambda and EBS

Servers are often bigger than they need to be, because guessing high at launch feels safer.

  • Use AWS Compute Optimizer (free) to find over-provisioned EC2 instances, Lambda functions and EBS volumes.
  • Shrink development databases, or stop them when unused.
  • Switch gp2 EBS volumes to gp3: AWS prices gp3 up to 20% lower per GB, and you can set performance separately from size.

Step 4: use cheaper compute (Graviton and Spot)

  • Graviton (ARM) processors. Graviton instances generally cost less than comparable x86 instances, and Lambda functions on arm64 are priced around 20% lower per GB-second. Node.js, Python, Java and Go workloads usually run on ARM with little or no change: test, then switch.
  • Spot Instances for work that can be interrupted, such as batch jobs, CI runners and data processing. AWS advertises up to 90% off on-demand prices.
  • Fargate or Lambda for spiky workloads, so you don't pay for idle capacity.

Step 5: buy Savings Plans, but only for your baseline

Once usage is stable, Savings Plans trade a one- or three-year commitment for a lower rate:

Plan

Maximum discount

Covers

Compute Savings Plans

up to 66%

EC2, Fargate and Lambda, any region or instance family

EC2 Instance Savings Plans

up to 72%

EC2 only, one instance family in one region

Commit only to usage you're sure of for the whole term: your steady production baseline, never your peaks. Compute Savings Plans are safer for a growing startup, because they follow you if you change instance types or move to containers.

Step 6: cut storage and data transfer costs

These are the silent line items:

  • S3 lifecycle rules: move old objects to cheaper storage classes automatically, or use S3 Intelligent-Tiering where access is unpredictable.
  • CloudWatch Logs retention: by default logs are kept forever. Set retention (say 30 or 90 days) on every log group.
  • NAT gateway traffic: NAT gateways charge per hour and per gigabyte processed. Traffic from private subnets to S3 or DynamoDB doesn't need to go through them: gateway VPC endpoints for those two services are free.
  • Data transfer out: serve static files and images through CloudFront, and compress responses.

Step 7: make cost reviews a habit

  • A monthly 30-minute review of Cost Explorer.
  • A rule that every new resource gets tags.
  • Budgets and anomaly alerts that someone actually reads.
  • Infrastructure as code (Terraform or CloudFormation), so environments are torn down and recreated instead of lingering.

What not to cut when you reduce AWS costs

Saving money shouldn't create risk. Be careful with:

  • Backups: keep them, test restores, and trim only retention you're sure you don't need.
  • Multi-AZ for production databases: it costs more because it protects you from an outage.
  • Monitoring and security logging: reduce retention, don't switch them off.

Frequently asked questions

What is the quickest way to reduce an AWS bill?

Find the three to five lines that dominate the bill in Cost Explorer. Then delete pure waste (unattached EBS volumes, old snapshots, idle load balancers) and run development environments only in working hours.

Does AWS charge for public IPv4 addresses?

Yes. Since 1 February 2024, every public IPv4 address costs $0.005 per hour, attached or idle: about $3.60 a month each. Release unused addresses and keep servers in private subnets where they don't need one.

Are Savings Plans worth it for a startup?

Yes, once usage is stable and you commit only to your steady baseline. Compute Savings Plans (up to 66% off) are the safer choice: they follow you across instance types, Fargate and Lambda.

The bottom line

Reducing AWS costs rarely means taking risks: delete what's unused, right-size what's oversized, use Graviton or Spot where they fit, and commit only to your steady baseline.

Start with visibility. It usually shows you exactly where to begin.

Want a second pair of eyes on your bill? Book a free consultation with our DevOps and cloud team and we'll go through it with you.

Sources

Back to all insights

Keep reading.

Have a project in mind?

Tell us what you're building, what's slowing your team down or what you'd like to automate. We'll come back with honest next steps and a clear estimate.

No obligation and no sales script.

Popular searches

Change theme