Cutting the cost of stopped AWS VMs
Account 371153867035 · 65 stopped VMs in 5 regions · data from 2026-10-29 · AWS list prices
Stopped VMs do not pay for compute, but they still pay for their disks and static IPs. Together they cost a month. With the marks the team has made so far, it would be . Nothing has been changed in AWS yet. Please go through the VMs you know, and mark each one Keep off, Warm archive, Cold archive or Delete. Your marks are saved straight away and everyone on the team sees them.
What the four choices mean
Keep off
The VM stays stopped, ready to start in a minute. Made cheaper where possible:
- Lower two Migdalor disks to baseline speed: saves $185 a month.
- Switch gp2 disks to gp3: same speed, 20% cheaper.
- Release static IPs that nothing points at: $3.65 a month each.
Warm archive
Snapshot the disks, keep the snapshots in the standard tier, then delete the VM. Bringing it back takes a few minutes and costs nothing extra. It gets a new VM ID and IP.
Cold archive
Same, but the snapshots move to the archive tier, which is 4 times cheaper than warm. Bringing it back takes 1 to 3 days and has a fee. Billed for at least 90 days.
Delete
The VM, its disk and its static IP are removed. Cost goes to zero. Gone for good.
The VMs
- Starting within 15 days: Keep off. Warm archive is cheaper even for a few days (a snapshot costs $0.05 per GB a month, a disk $0.08), but over 15 days the saving is small and bringing a VM back is work.
- Starting in 15 to 41 days: Warm archive.
- Starting in more than 41 days, or not sure: Cold archive. Cold's 90-day minimum plus its restore fee cost about the same as 41 days of warm, so it only pays off after that. This holds for every VM, because all three prices scale with disk size.
- Never: Delete.
Sorted by monthly cost. VMs are grouped by their project tag. Once a tag is proposed, the VM moves into that group. Click a VM name for details, notes and who marked what.
| VM | Region · size | Last used | Created · started by | Disk | $/month | Mark | Last signed | project tag |
|---|
Project tags
About 70% of our AWS spend has no project tag. Every VM the team keeps should have one.
Pick the project for each VM from the list in the project tag column, or replace a wrong one. The VM moves into that group.
Pick an existing project name from the list. Only make a new one if none fits, in lowercase-with-hyphens.
The tags are applied in AWS later, together with the cleanup, using the Tag commands file. The VM's disks get the same tag.
How it will be done
Ordered from safest to least reversible. Each step waits for the team's marks and a final go-ahead.
- This week: lower the Migdalor disk speed ($185 a month). Fully reversible, no downtime.
aws ec2 modify-volume --region us-east-2 --volume-id vol-09afde3c9c97fe384 --iops 3000 --throughput 125 aws ec2 modify-volume --region us-east-2 --volume-id vol-006242791a66867d1 --iops 3000 --throughput 125
- This week: switch the remaining gp2 disks to gp3 with
aws ec2 modify-volume --volume-type gp3. Reversible, no downtime. - Week 1: collect marks on this page. Where the team disagrees, the VM stays until the owner decides.
- Week 2: archive. Snapshot, move the cold ones to the archive tier, record instance type, security group and key pair in the snapshot tags, then delete the VM.
- Week 2 or 3: delete. Final snapshot only where someone asked for one. Terminate, release freed static IPs, and remove the
yes chatload balancer.
Good to know
- Snapshot costs are an upper estimate: real snapshots store only used blocks.
- The account already has 51 snapshots. Many belong to these stopped VMs and can go when those VMs are deleted.
- Not covered here: running VMs, S3, other load balancers and data transfer.