EBS pricing: what to model (storage, performance, snapshots)

EBS pricing is easy to estimate once you separate three buckets: volume storage, provisioned performance (when applicable), and snapshots. Most underestimates come from treating snapshots as “included” or forgetting performance settings on gp3/io1/io2 style volumes.

EBS pricing inputs

  • GB-month: average storage per volume class.
  • IOPS/throughput: gp3/io1/io2 performance add-ons.
  • Snapshots: GB-month from backup retention.

1) Volume storage (GB-month)

  • Count provisioned volume size by class (e.g. 20 GB roots, 500 GB data, 2 TB databases).
  • Multiply by your region $/GB-month per volume type.
  • For fleets, model 3–5 volume classes rather than a single average (databases behave differently from roots).

2) Provisioned performance (only when it applies)

Some volume types allow (or require) you to provision IOPS and/or throughput. If you set those above baseline, it is a separate cost driver.

  • IOPS: provisioned IOPS above baseline (or dedicated IOPS volume types).
  • Throughput: provisioned MB/s above baseline (not relevant for every type).
  • Common mistake: sizing to a single peak event. Use p95 and add a small buffer.

Related: gp2 vs gp3, gp3 IOPS and throughput sizing.

3) Snapshots (separate storage line item)

  • Snapshot storage grows with change rate and retention, not just volume size.
  • Copies across regions or accounts create additional stored GB.
  • Long retention on write-heavy volumes is the common “silent” snapshot cost driver.

Guide: EBS snapshot cost.

A fast estimation workflow

  1. Group volumes into 3–5 classes (type + size + workload).
  2. For each class: estimate GB-month and (if applicable) IOPS/throughput settings.
  3. For snapshots: estimate change rate and retention window per class.
  4. Validate against a real week of utilization and a real month of snapshot retention behavior.

Common pitfalls

  • Keeping unattached volumes after migrations and instance termination.
  • Over-sizing volume GB to chase performance instead of tuning IOPS/throughput (or switching to gp3).
  • Snapshot retention without lifecycle policies (daily snapshots kept forever).
  • Non-prod volumes with prod-sized disks and prod retention policies.

Validation checklist

  • Measure used space and growth rate per volume class (baseline + busy month).
  • Measure p95 IOPS/throughput and verify it matches provisioned settings.
  • Measure snapshot retained GB trend and confirm lifecycle policies actually delete.
  • After changes, validate latency and error rates for the workload (not only IOPS).

Sources


Related guides


FAQ

What are the core EBS cost components?
Volume storage (GB-month) is the baseline. Some volume types also bill for provisioned IOPS and/or throughput. Snapshots are billed separately as snapshot storage.
Do snapshots count as EBS storage?
Snapshots are usually a separate snapshot storage line item, not the volume GB-month line item. Model snapshots explicitly.

Last updated: 2026-02-07