Hosting plans often list the storage type next to the disk size: HDD, SSD or NVMe. The type decides how quickly the server can read and write data, which affects page loads, database queries, boot times and backups. This guide explains the three types in plain terms and what disk speed means for your server in everyday use.
Before you start
You do not need any special knowledge. It helps to know what you will run: websites with databases, game servers, trading terminals or a Windows desktop. Disk speed matters more for some of these than others.
The three storage types
HDD: hard disk drive
A hard disk stores data on spinning magnetic platters read by a moving arm. It is cheap per gigabyte and holds a lot, but the arm has to physically move to each piece of data. That makes random access, reading many small pieces scattered across the disk, slow.
Servers do a lot of random access: databases, logs, many small website files. That is why HDDs are now mostly used for bulk storage and archives rather than for the main server disk.
SATA SSD: solid-state drive
An SSD stores data on flash memory chips with no moving parts. Random access is dramatically faster than on an HDD. Many SSDs connect through SATA, the same interface older hard disks used, which caps their top speed.
NVMe SSD
NVMe is also flash storage, but it connects over PCI Express, a much faster path to the processor, and uses a protocol designed for flash. It can handle many more operations in parallel than SATA. The result is higher throughput and lower latency, especially when many requests arrive at once.
Two kinds of speed
Disk specs usually mention two numbers:
- Throughput (MB/s or GB/s): how much data can move per second in large sequential reads or writes. Matters for copying large files, restoring backups and loading big game worlds.
- IOPS (input/output operations per second): how many small reads and writes the disk can handle. Matters for databases, busy websites and anything that touches many small files.
For most servers, IOPS and latency matter more than raw throughput. That is where NVMe shines.
Where you notice the difference
- Databases: queries that read from disk return faster, and writes such as orders or comments commit faster. Busy WordPress and WooCommerce sites benefit most.
- Boot and restart times: the operating system loads faster, so maintenance restarts are shorter.
- Windows desktops: apps open and updates install more quickly over Remote Desktop.
- Package installs and updates:
apt,dnfand Windows Update finish sooner. - Backups and restores: large archives are read and written faster.
- Game servers: world saves and chunk loading are smoother.
For a light bot or a VPN, disk speed barely matters, because these workloads rarely touch the disk.
Note: Fast storage does not fix a shortage of RAM. If a server is swapping because memory is full, even NVMe will feel slow. Size memory first. See how much RAM a VPS needs.
Check it works
You can see what your Linux server reports about its disks:
lsblk -d -o NAME,SIZE,ROTA,MODELROTA shows 0 for non-rotating (flash) storage and 1 for a spinning disk. On a VPS the disk is virtual, so the model name may be generic.
To see whether the disk is a bottleneck right now, watch the wa (I/O wait) value in top. A high, sustained wait means processes are waiting on the disk.
On Windows, open Task Manager → Performance → Disk and watch Active time and Average response time during busy periods.
Troubleshooting
- Server is slow, high I/O wait: check whether it is swapping with
free -h. If not, find the busy process withiotop(install it first) and look at database tuning or caching. - Disk is fast but the site is still slow: the bottleneck is elsewhere: PHP, missing caching, CPU or network. Measure before upgrading.
- Benchmarks vary between runs: virtual disks share physical hardware, and caches affect results. Run tests several times and focus on real application speed.
- Disk is nearly full: performance and stability suffer on any storage type. See how much storage a VPS needs.
Next steps
- Measure your server: benchmark a Linux VPS.
