Skip to main content

EBS: Migrate Volumes from io2 to gp3

Difficulty: Medium

Description

These io2 volumes fit within gp3 limits (80,000 IOPS, 2,000 MiB/s). Unless you need io2's higher durability, gp3 gives similar performance for much less.


Selection Criteria

  • The EBS volume uses the io2 storage type.

  • The volume size is 64 TiB or less (gp3 maximum size).

  • The provisioned IOPS is 80,000 or less (gp3 maximum IOPS).

  • The provisioned throughput is 2,000 MiB/s or less (gp3 maximum throughput).

  • The volume has a storage cost in the CUR over the last 7 days.


Expected Saving

Up to ~87% of the volume's storage and IOPS cost, depending on its size and provisioned IOPS.

We take the volume's io2 storage and IOPS cost from the CUR over the last 7 days and annualize it. The gp3 cost is estimated from that same storage cost: gp3 storage is about 36% cheaper per GB than io2, and only the IOPS above the 3,000 included with gp3 are charged.

Cost component

io2 (us-east-1)

gp3 (us-east-1)

Storage

$0.125/GB-month

$0.08/GB-month

IOPS

$0.065/IOPS-month (up to 32,000)

$0.005/IOPS-month (above 3,000)

Example: a 500 GB io2 volume with 5,000 IOPS:

  • io2 cost: (500 × $0.125) + (5,000 × $0.065) = $62.50 + $325.00 = $387.50/month

  • gp3 cost: (500 × $0.08) + (2,000 × $0.005) = $40.00 + $10.00 = $50.00/month

  • Annual saving: ~$4,050/year (~87% reduction)


Operational Impact

  • ✅ No downtime — the volume type is changed in place with Elastic Volumes (ModifyVolume); the instance and volume stay available during the conversion, and no data is lost.

  • ⚠️ Lower durability — gp3 offers 99.8–99.9% durability versus 99.999% for io2. Keep io2 for workloads that depend on that durability guarantee.

  • ⚠️ Latency-sensitive workloads — io2 Block Express provides sub-millisecond, consistent latency. Validate the actual IOPS and latency needs of the workload (not only the provisioned values) before migrating.

  • ⚠️ Multi-Attach — gp3 does not support Multi-Attach. An io2 volume attached to several instances cannot be migrated.

  • ⏳ Modification cooldown — after a modification, AWS requires about 6 hours before the same volume can be modified again, and the optimization can take from minutes to hours depending on volume size.


References

Did this answer your question?