Skip to content
Calcrivo

RDS IOPS Calculator

Work out the IOPS and throughput an RDS volume needs, what is billable above the gp3 baseline, and whether the IOPS-to-GB ratio is legal.

Inputs

IOPS
IOPS
x
KB

PostgreSQL uses 8 KB pages, MySQL InnoDB 16 KB.

IOPS
$/IOPS-month
$/IOPS-month
GB

Required Provisioned IOPS

8,250IOPS

Implied Throughput

128.9MB/s

Billable IOPS

5,250IOPS

Monthly IOPS Charge

$105.00

IOPS to Storage Ratio

Valid — 16.5 IOPS per GB, within the 500:1 limit

Step by step

  1. Values used

    Peak read operations = 4,000 IOPS; Peak write operations = 1,500 IOPS; Burst safety factor = 1.50 x; Average I/O size = 16 KB; Volume type = gp3 — 3,000 IOPS baseline included; gp3 IOPS included at no charge = 3,000 IOPS; gp3 price above baseline = 0.0200 $/IOPS-month; io1 provisioned IOPS price = 0.1000 $/IOPS-month; Allocated storage = 500 GB

  2. RDS IOPS

    required IOPS = (read + write) × burst factor; throughput MB/s = IOPS × I/O size ÷ 1024; billable gp3 IOPS = required − 3,000 baseline.

  3. Required Provisioned IOPS

    = 8,250 IOPS

  4. Implied Throughput

    = 128.9 MB/s

  5. Billable IOPS

    = 5,250 IOPS

  6. Monthly IOPS Charge

    = 105.00

  7. IOPS to Storage Ratio

    = Valid — 16.5 IOPS per GB, within the 500:1 limit

How it works

Database IOPS is the sum of read and write operations at the peak, not the average, so a burst factor is applied before sizing. gp3 includes 3,000 IOPS and 125 MB/s in the per-GB price and charges only for IOPS above that, while io1 and io2 charge for every provisioned IOPS. Both volume types cap the ratio of IOPS to allocated GB, which is why a small volume sometimes has to be over-allocated purely to unlock IOPS. Both IOPS prices are editable inputs seeded with realistic us-east-1 defaults, so confirm the current figures with AWS for your region before budgeting. Most RDS latency complaints are storage-bound, and the fix is usually a provisioned-IOPS or throughput change rather than a bigger instance — but only if the IOPS-to-GB ratio allows it.

Formula

RDS IOPS

required IOPS = (read + write) × burst factor; throughput MB/s = IOPS × I/O size ÷ 1024; billable gp3 IOPS = required − 3,000 baseline.

burst factor
Multiplier that covers peaks above the measured average
baseline
3,000 IOPS and 125 MB/s that gp3 includes in the GB price
ratio
Provisioned IOPS per allocated GB — capped at 500:1 for gp3 and 50:1 for io1

Frequently Asked Questions

How is RDS IOPS calculated?

required IOPS = (read + write) × burst factor; throughput MB/s = IOPS × I/O size ÷ 1024; billable gp3 IOPS = required − 3,000 baseline. Database IOPS is the sum of read and write operations at the peak, not the average, so a burst factor is applied before sizing. gp3 includes 3,000 IOPS and 125 MB/s in the per-GB price and charges only for IOPS above that, while io1 and io2 charge for every provisioned IOPS. Both volume types cap the ratio of IOPS to allocated GB, which is why a small volume sometimes has to be over-allocated purely to unlock IOPS. Both IOPS prices are editable inputs seeded with realistic us-east-1 defaults, so confirm the current figures with AWS for your region before budgeting.

Why does RDS IOPS matter?

Most RDS latency complaints are storage-bound, and the fix is usually a provisioned-IOPS or throughput change rather than a bigger instance — but only if the IOPS-to-GB ratio allows it.

What values do I need to enter?

This calculator takes 9 inputs: Peak read operations, Peak write operations, Burst safety factor, Average I/O size, Volume type, gp3 IOPS included at no charge, gp3 price above baseline, io1 provisioned IOPS price, Allocated storage. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

Why can I not provision 16,000 IOPS on a small gp3 volume?

RDS only allows gp3 IOPS above 3,000 once the volume is at least 400 GB for most engines, and the ratio of IOPS to GB is capped at 500:1. Below those thresholds you are pinned to the baseline no matter what you request.

You might also need