Skip to main content

On This Page

Optimizing AWS EC2 Costs: Why Stopped Instances Still Generate Bills

2 min read
Share

These articles are AI-generated summaries. Please check the original sources for full details.

The Hidden Cost Layers of EC2 (And Why Stopped Instances Still Drain Your Budget)

AWS EC2 instances generate charges across multiple dimensions even when compute is halted. A stopped instance with 500 GB of gp3 storage continues to incur a $40 monthly fee indefinitely. This persistence of storage and network assets creates a silent budget drain for many engineering teams.

Why This Matters

Many engineering teams operate under the assumption that stopping an instance eliminates its cost, but the persistence of EBS volumes and Elastic IPs creates a ‘zombie’ infrastructure tax. In a production environment, failing to account for these secondary layers leads to significant budget leakage that isn’t immediately visible in top-level EC2 instance hour metrics. This gap between the mental model of ‘off’ and the billing reality of ‘storage’ leads to waste that scales with the size of the environment. Automation and strict retention policies are required to align cloud spending with actual resource utilization.

Key Insights

  • gp3 migration provides a 20% cost reduction over gp2, pricing storage at $0.08/GB/month in us-east-1.
  • AWS introduced a $0.005/hr charge for all public IPv4 addresses in February 2024, regardless of attachment status.
  • Stopped instances with 500GB of gp3 storage still cost $40 per month in EBS fees alone.
  • Unattached EBS volumes in ‘available’ status continue to be billed at the full storage rate despite lack of usage.
  • EBS snapshots incur a cost of $0.05/GB/month, which can lead to massive accumulation without retention policies.

Practical Applications

  • Use Case: Scheduling dev/staging instances to stop during off-hours using AWS Instance Scheduler; Pitfall: Overlooking the cost of associated EBS volumes and Elastic IPs which remain active.
  • Use Case: Live migration of storage from gp2 to gp3 using ModifyVolume for performance gains; Pitfall: Assuming gp2 is the baseline standard when it is actually 20% more expensive than gp3.
  • Use Case: Auditing idle infrastructure with CloudWatch metrics to find low CPU utilization; Pitfall: Terminating instances but failing to delete unattached data volumes, leading to ‘ghost’ storage costs.

References:

Continue reading

Next article

GPT-5.4 Release Exposes Critical Latent Behavioral Drift in Modern UIs

Related Content