AWS Cost Optimisation: Quick Wins That Work Immediately

2 min read

Originally posted on LinkedIn.


Five AWS cost optimisations I implement first in every new project — before any FinOps framework is introduced:

1. Enable S3 Intelligent-Tiering

For buckets with unknown or changing access patterns, S3 Intelligent-Tiering is the simplest measure. AWS automatically moves objects between access tiers — no data loss, no manual lifecycle rules.

Particularly effective for log buckets and backup buckets that are rarely accessed.

2. Release Unused Elastic IPs

Elastic IPs not associated with a running instance cost money — even when they do nothing. A quick aws ec2 describe-addresses shows all EIPs; those without an InstanceId are candidates for release.

In larger accounts you regularly find 10–20 orphaned EIPs.

3. Migrate GP2 Volumes to GP3

GP3 EBS volumes are cheaper than GP2 and provide more IOPS by default. The migration is non-disruptive — no restart, no downtime. AWS allows changing the volume type while running.

Typical saving: 20% of EBS costs, with no performance degradation.

4. Savings Plans for Stable Workloads

Anyone with predictable EC2 or Lambda workloads should evaluate Compute Savings Plans. 1-year plans with no-upfront payment already offer 20–30% discount compared to on-demand.

The key: Savings Plans are more flexible than Reserved Instances — they apply across instance families and regions.

5. Enable AWS Cost Anomaly Detection

Costs nothing, potentially saves a lot. Cost Anomaly Detection automatically identifies unusual cost spikes and sends alerts. Once configured, it runs in the background and warns you before a forgotten resource ruins the monthly report.


These five measures can be implemented in 2–3 hours and have consistently saved 10–25% of monthly AWS costs in my projects — without any architectural changes.

What are your first steps for AWS cost optimisation?