AWS EBS Support

EBS gp2 to gp3 migration: lower cost with performance you control.

gp3 volumes have a lower price per GB than gp2 and provide a baseline of 3,000 IOPS and 125 MiB/s regardless of size, with IOPS and throughput adjustable separately. Converting is an online change. The work is checking which volumes need extra IOPS and fixing templates so new volumes are gp3 too.

3,000 IOPSgp3 baseline
125 MiB/sgp3 baseline throughput
Elastic VolumesOnline type change
3 IOPS/GiBgp2 baseline

When You Need This

The situations where this work pays for itself.

Signs it is time

  • Your account still has many gp2 volumes
  • Large gp2 volumes were oversized only to get more IOPS
  • AMI snapshots, launch templates or Terraform still default to gp2
  • A volume hit gp2 burst credit limits
  • You are doing a cost review of EBS storage

What you get

  • Inventory of gp2 volumes with performance needs
  • Conversion script or run with per-volume settings
  • Updated IaC and launch templates defaulting to gp3
  • Monitoring or Config rule to prevent new gp2 volumes

How we do it

A clear, safe process you can follow along with.

1. Inventory gp2 volumes

We list volumes by type, size, attachment and tags with the CLI or AWS Config, and record read and write IOPS and throughput from CloudWatch to see what each volume really needs.

2. Decide IOPS and throughput per volume

gp2 gives 3 IOPS per GiB, with burst for smaller volumes and a higher cap for large ones. gp3 starts at 3,000 IOPS and 125 MiB/s. For most volumes the baseline equals or beats gp2. For a large gp2 volume with higher baseline IOPS, or workloads needing more throughput, we provision extra gp3 IOPS and throughput, within the current gp3 limits.

3. Estimate cost

gp3 charges for the volume size plus any provisioned IOPS and throughput above baseline. We compute the new cost against the current price for each Region, so you see the actual change.

4. Convert online

We run modify-volume with the volume type gp3 and any IOPS or throughput values. The volume stays attached and in use. We monitor describe-volumes-modifications as it moves through modifying and optimizing to completed, and respect the wait time between modifications of a volume.

5. Convert in batches and test

We start with non-production and low-risk volumes, check latency, then roll through production in batches during quiet periods since the optimizing phase can add some load.

6. Stop it from coming back

We change CloudFormation, Terraform and launch template defaults to gp3, update AMI block device mappings, and add an AWS Config rule or scheduled report that flags new gp2 volumes.

Mistakes we help you avoid

Common ways this goes wrong, and what we do instead.

Converting large gp2 volumes without checking IOPS

A big gp2 volume can have a baseline above 3,000 IOPS, so match or provision it explicitly.

Forgetting to change templates

New instances keep creating gp2 volumes.

Converting everything at once

Batches limit risk and let you spot problems early.

Overprovisioning IOPS

Provisioned gp3 IOPS and throughput are billed, so set them from observed need.

Frequently Asked Questions

Can I change gp2 to gp3 without downtime?

Yes. EBS Elastic Volumes lets you change the volume type on an attached volume with no detach or restart, though performance may be affected a little while the change is optimizing.

Is gp3 always cheaper than gp2?

At the same size, gp3 has a lower per-GB price, and the baseline needs no extra charge. Cost rises only if you provision IOPS or throughput above the baseline, so we calculate per volume.

Does gp3 have burst credits?

No. gp3 gives you its baseline performance continuously, which makes performance more predictable than gp2 burst behavior.

Want Help With EBS gp2 to gp3 migration: lower cost with performance you control?

Schedule an appointment. Tell us about your environment and we will outline the safest, highest-value approach.

Schedule Appointment › No commitment required