EBS IOPS Calculator for AWS Volumes

July 10, 2026

EBS IOPS Calculator

Estimate Amazon EBS volume IOPS, throughput pressure, queue depth, latency fit, and EC2 EBS bandwidth headroom from one workload profile.

⚙Named EBS Performance Presets

💾Workload Inputs

Throughput is calculated as IOPS × IO size / 1024. The final ceiling is the smaller of volume capability, entered throughput cap, and EC2 EBS bandwidth converted to MiB/s.

EBS Performance Result

Sustainable IOPS 0 IOPS after all caps
Throughput Needed 0 MiB/s from IO size
Queue Depth Fit 0 estimated in-flight IO
Latency Status Check target comparison
Volume and setgp3, 1 volume
Requested IOPS with headroom0 IOPS
Volume type ceiling0 IOPS
Throughput ceiling0 IOPS
Instance EBS bandwidth ceiling0 IOPS
Bottleneck and guidanceCalculate to view
Read and write split0 read / 0 write

📊Live Metric Grid

gp3Selected type
80kPer-volume max IOPS
438Instance MiB/s cap
10%Headroom applied

🗂Volume Type Reference

TypePerformance ShapeMax IOPSMax ThroughputLatency Notes
gp3Provision IOPS and throughput independently, baseline 3000 IOPS and 125 MiB/s80,0002,000 MiB/sGeneral purpose single-digit ms class
gp2IOPS scale with size at 3 IOPS per GiB, with burst behavior below 1 TiB16,000250 MiB/sOlder general purpose behavior
io1Provisioned IOPS SSD for sustained database pressure64,0001,000 MiB/sDesigned for consistent provisioned IOPS
io2Provisioned IOPS SSD with improved durability and consistency64,0001,000 MiB/sStrong fit for critical databases
io2 Block ExpressHigh performance provisioned IOPS for Nitro based instances256,0004,000 MiB/sAverage under 500 microseconds for 16 KiB IO
st1Throughput optimized HDD for large sequential streams500500 MiB/sNot for small random IO
sc1Cold HDD for infrequent sequential access250250 MiB/sLowest performance class shown here

📏IO Size and Throughput Reference

IO SizeIOPS at 125 MiB/sIOPS at 500 MiB/sIOPS at 2,000 MiB/sTypical Signal
4 KiB32,000128,000512,000Small random database reads
8 KiB16,00064,000256,000Database page activity
16 KiB8,00032,000128,000EBS IOPS comparison basis
64 KiB2,0008,00032,000Search segments or analytics
128 KiB1,0004,00016,000Large scans and copies
1 MiB1255002,000HDD stream sizing

🖧Instance EBS Bandwidth Reference

Entered MbpsApprox MiB/s16 KiB IOPS Ceiling64 KiB IOPS CeilingUse When
475 Mbps57 MiB/s3,648912Small burstable instances
3,500 Mbps417 MiB/s26,6886,672Modest database hosts
10,000 Mbps1,192 MiB/s76,28819,072High traffic app nodes
20,000 Mbps2,384 MiB/s152,57638,144Large Nitro instances
40,000 Mbps4,768 MiB/s305,15276,288Block Express class hosts

🧪Common EBS Workload Sizes

ScenarioVolume ProfileIO PatternTarget RangeWatch First
Web application root and packagesgp3, 40 to 120 GiBSmall random bursts3,000 to 6,000 IOPSBurst deploy windows
PostgreSQL primary data volumegp3 or io2, 500 GiB plusRandom read heavy12,000 to 40,000 IOPSLatency and checkpoint writes
SQL Server OLTPio2, separate data and logMixed random data, sequential log30,000 to 80,000 IOPSWrite latency spikes
OpenSearch hot tiergp3 striped data volumesSearch reads and merge writes16,000 to 60,000 IOPSMerge throughput
SAP HANA data or logio2 Block Express setVery latency sensitive80,000 to 160,000 IOPSEC2 EBS bandwidth
Archive ingest streamst1 or sc1, 1 TiB plusLarge sequential IO250 to 500 MiB/sThroughput, not IOPS

⚖Comparison Grid

IOPS Limited

Small IO sizes often reach the provisioned IOPS ceiling before they fill the MiB/s pipe. Increase provisioned IOPS, add volumes, or move to io2 Block Express when latency allows no slack.

Throughput Limited

Large IO sizes can consume throughput while the IOPS number looks modest. Raise gp3 throughput, reduce IO size where valid, or stripe volumes for scan heavy tasks.

Instance Limited

The EC2 instance can cap the whole design even when each volume has unused performance. Check EBSByteBalance and EBSIOBalance for sustained pressure.

💡Performance Tips

Latency first: a volume can have enough theoretical IOPS and still miss the application target if queue depth is too high for the latency objective.
Cap the whole path: compare workload demand against the volume type, provisioned throughput, stripe count, and EC2 EBS bandwidth before changing storage settings.

In storage, it’s not just about how much disk space you purchase. It’s also about how fast data can flow to and from those disks, how big chunks of data need to be sent, and what the limitations on your servers are. A lot of engineers think IOPS is the magic bullet answer for everything. They’re wrong.

In reality there are bandwidth ceilings, queue depths, and throughput limits. They frequentely affect production traffic in ways you wouldn’t expect. These are EBS bandwidth, queue depth, latency targets, and IO size throughput. Remember: One number isn’t everything. Use the calculator as part of the overall picture.

Why IOPS Is Not Enough for Storage

First, remember IO size. It is often overlooked until your database start timing out. By traditional definitions, an IOP is a single 16 KiB operation. That means that an application performing lots of small (4 Ki) random reads will consume your provisioned IOPS budget four-fold relative to a workload reading bigger chunk. Even with a lot of raw throughput available, you may not have enough IOPS capacity. Because the answer depend upon this information, the tool requests your average IO size prior to answering.

Another thing that matters is latency targets. You can have a highly available system, but if it’s not planned out based off the latency target, then it will fail. For example, if you’re doing financial transactions where you want a response time of less than a millisecond, a general purpose volume may be able to handle the IOPS needs. However, under load, it won’t meet them. The calculator also finds out if your queue depth match your latency goal.

In most cases, if you have tight latency targets and high concurrency, you’ll typically need dedicated storage types such as Block Express. Running something like this on cheaper storage is likely to cause timeouts at busy periods.

But don’t forget about the instance itself. I’ve seen people set up a huge volume and then complain that it doesn’t work well. Maybe it’s because of the instance connecting to the volume, it is not the storage layer at all. There is a maximum bandwidth for an EC2 instance connected to an EBS volume. That’s set based off the instance type. After you reach the limit, you can tune the volume all day long and you won’t gain anything. Check out the table on the page for some examples. This isn’t a software issue; it’s a physical limitation of the network interface within your virtual machine. Your volume may be plenty big enough for high-traffic but you’re only attaching it to a small connection on your system.

Stable systems have headroom, a few tenths of a second here, or a gigabyte there is not very expensive; a hard limit reached when your site spikes is incredibly expensive. You can plug that buffer into the calculations ahead of time with this tool so that you avoid right-sizing too tightly for “typical” usage, which is what everyone does: averages conceal maxima, and storage performance is measured in maxima, which must be met without stalling.

When choosing storage volume type, consider how you access your data. Random read and write access (e.g., search index) differs from sequential read/write access (e.g., backup stream, logging). Streaming large files is best done on fast-transfer drives, while small random operations don’t do well. By matching the workload pattern to the hardware you avoid paying for capabilities that you won’t need. You also avoid frustration when you deploy a powerful drive in the wrong context and it performs poorly as a result.

Storage sizing isn’t about the biggest, it’s about knowing your constraints. If you don’t understand what the friction is then how can you eliminate it? Is it the IO size of an app? Is it the network bandwidth? Or maybe the volume limit? Knowing this up front will save you a lot of time down the road. There are tools out there that make these constraints crystal clear. Stop guessing at performance and instead engineer it precisely. When the next big launch arrives your infrastructure wouldn’t of skipped a beat.

EBS IOPS Calculator for AWS Volumes

Related posts

Leave a Comment