Skip to main content
STORAGE · PERFORMANCE

What Is IOPS?

IOPS (input/output operations per second) measures how many separate read and write requests a drive or storage system completes each second. It matters most for small, random access such as databases and operating systems. A 7,200 rpm hard drive manages around 100 random IOPS, a SATA SSD tens of thousands and an NVMe SSD hundreds of thousands.

01

What IOPS measures

IOPS, short for input/output operations per second, is the number of individual read or write requests a storage device completes in one second. Each request might fetch a 4 KB database page, write a log entry or read part of a file. IOPS counts the requests, not the bytes, so it describes how well a drive handles many small jobs rather than one large transfer.

That makes it the figure that matters for operating systems, databases, virtual machines and any application that touches lots of small files. For streaming large files, such as video recording or copying images, throughput in MB/s matters more.

An IOPS figure means little on its own. It always depends on the block size, whether access is random or sequential, the mix of reads and writes, and how many requests are queued at once. Two datasheets can quote very different numbers for the same drive simply by testing it differently.

02

IOPS, throughput and latency

Three numbers describe storage performance, and they are linked. Throughput equals IOPS multiplied by block size: 100,000 IOPS at 4 KB is about 400 MB/s, while the same throughput in 1 MB blocks needs only 400 IOPS. Latency is the time one request takes. With one request in flight, IOPS is roughly one divided by latency, so a 100 microsecond response gives about 10,000 IOPS.

Drives reach their headline IOPS by working on many requests at once. Queue depth is the number of requests waiting, and by Little’s law IOPS is roughly queue depth divided by latency. A datasheet figure measured at a queue depth of 32 or more may be far above what a single-threaded application sees at a queue depth of one or two.

03

Typical IOPS by drive type

The figures below are typical 4 KB random read results. Random writes are usually lower, and real systems add file system and RAID overhead.

Drive type Typical random IOPS What limits it
7,200 rpm hard drive Around 75 to 100 Head seek and platter rotation
15,000 rpm SAS hard drive Around 175 to 210 Head seek and platter rotation
SATA SSD Around 80,000 to 100,000 SATA link and a single 32-command queue
NVMe SSD, PCIe 3.0 x4 Around 300,000 to 600,000 Controller and flash parallelism
NVMe SSD, PCIe 4.0 x4 Around 500,000 to 1,000,000 Controller and flash parallelism
NVMe SSD, PCIe 5.0 x4 Over 1,000,000 Controller, flash and cooling

The jump between SATA and NVMe comes from the interface: NVMe supports thousands of parallel queues where SATA has one. Each PCIe generation doubles the bandwidth per lane, and our FAQ on how PCIe 4.0 and 5.0 compare covers what that means at board level.

FAQ · 01
Does NVMe give more IOPS than SATA on M.2?
Yes, usually several times more. An M.2 NVMe drive talks to the processor over PCIe lanes with many parallel command queues, while an M.2 SATA drive is limited by the 6 Gb/s SATA link and one 32-command queue. Both use the same M.2 card shape, so check which protocol the slot supports.
Read the full FAQ —
04

Reading IOPS figures with care

Datasheet IOPS are best-case numbers. The Storage Networking Industry Association (SNIA) Solid State Storage Performance Test Specification exists because SSD performance changes with use, and a few checks help compare drives fairly.

  • //
    Fresh or steady state. A new, empty SSD writes faster than one that has been filled and rewritten. Steady-state random write IOPS can be a fraction of the fresh figure.
  • //
    Queue depth. Check the queue depth behind the number. Many embedded applications run at low queue depths, where IOPS are much lower.
  • //
    Read and write mix. A 70/30 read/write test is closer to most real workloads than 100 percent reads.
  • //
    RAID write penalty. Each write costs about two drive operations in RAID 1 or 10, and about four in RAID 5, so writes to an array deliver fewer IOPS than the drives’ total.
  • //
    Temperature. Fanless industrial computers and sealed systems can throttle a hot NVMe drive, so sustained IOPS depend on the drive’s cooling, such as a heatsink or thermal pad to the chassis, as well as its rating.
05

How much IOPS an edge system needs

Most industrial PCs need fewer IOPS than a desktop. A machine controller, gateway or HMI reads its application at start-up, then writes small logs, well within the reach of any SSD. Endurance and temperature rating matter more there than IOPS.

Demand rises with concurrency. A local database, several virtual machines or an AI pipeline writing detections and metadata for many cameras all generate small random I/O, and that is where NVMe pays off. Industrial NVRs are the opposite case: recording is mostly large sequential writes, so throughput and endurance set the drive choice. Data-heavy nodes such as edge AI servers use multiple NVMe drives to keep the GPU fed.

To size storage, measure the workload with a tool such as fio on Linux or DiskSpd on Windows, note the block size, mix and queue depth, then add headroom for growth and RAID overhead.

06

Quick answers on IOPS

IOPS: common questions

What does IOPS stand for?

Input/output operations per second. It counts the read and write requests a storage device or system completes each second.

How do you calculate IOPS?

Divide throughput by block size. 400 MB/s at 4 KB per operation is about 100,000 IOPS. For a single queued request, IOPS is roughly one divided by the latency in seconds.

Is higher IOPS always better?

Only if the workload uses it. A system writing a few small logs will not notice the difference between 50,000 and 500,000 IOPS. Latency, endurance and temperature rating often matter more.

What is the difference between IOPS and throughput?

Requests versus data. IOPS counts operations per second, and throughput counts megabytes per second. Small random requests are IOPS-bound, while large sequential transfers are throughput-bound.

What is a good IOPS figure for an SSD?

It depends on the interface. Around 80,000 to 100,000 random read IOPS is typical for a SATA SSD, while current NVMe drives reach several hundred thousand or more.

We fit SATA or NVMe storage to every system we build as standard, sized from the workload’s block size, read/write mix and endurance needs, and validated in the system before it ships.