⏱ 5 min read  ·  ✅ Updated Oct 2026
Affiliate Disclosure: As an Amazon Associate, we earn from qualifying purchases. Links marked "Check on Amazon" are affiliate links — learn more.
⭐ Key Takeaways
Quick answer: Our top pick is Samsung SSD 990 PRO 2TB, PCIe 4.0 M.2 2280, Up to 7,450 MB/s, with Samsung SSD 990 PRO 1TB, PCIe 4.0 M.2 2280, Up to 7,450 MB/s as a strong value alternative.

Running Nextcloud on an SSD versus a hard drive changes how the app feels day to day far more than most self-hosters expect. This isn’t a benchmark exercise, it’s about whether your Nextcloud instance feels snappy when you’re browsing files, previewing photos, or syncing a laptop full of documents, or whether every click makes you wait a beat too long.

The short version: storage type matters most for the database and the thumbnail/preview cache, less for the raw file blobs themselves. If you understand that split, you can mix drives intelligently instead of overspending on SSD capacity you don’t need.

Where Nextcloud actually feels slow

Nextcloud isn’t just a file store. Every file listing hits a MySQL/MariaDB or PostgreSQL database for metadata, every folder with images generates or fetches thumbnail previews, and every sync client check-in triggers a bunch of small reads and writes. These are the operations that punish a hard drive, because they’re random I/O, not sequential.

A 5400 or 7200 RPM HDD handles sequential reads fine, meaning if you’re downloading one big video file, an HDD streams it almost as fast as an SSD. But a hard drive has to physically move a read/write head to find data, and that takes 5-10 milliseconds per seek. When Nextcloud’s web UI needs to render a folder with 200 files, check permissions, pull thumbnail cache entries, and update “last accessed” metadata, you’re looking at hundreds of small random I/O operations. On an HDD, that can mean folder loads taking 1-3 seconds. On an SSD, the same operation is usually under 200ms because NAND flash has no seek penalty, access time is closer to 0.1ms.

The preview/thumbnail cache is the other big offender. Nextcloud generates and caches previews for images, PDFs, and office docs. If that cache lives on a hard drive and you’ve got a large photo library, scrolling through the Photos app or a gallery view will stutter noticeably as the server reads thousands of small cached JPEGs.

The database belongs on an SSD, full stop

If you only upgrade one component, make it the drive holding your database. MariaDB/MySQL under Nextcloud does constant small writes, locking rows, updating indexes, writing to the transaction log. On a spinning disk this is where you’ll see actual lag: login taking a few seconds, the activity feed loading slowly, search queries dragging. On even a budget SATA SSD, those same operations are nearly instant because flash memory handles random writes without a mechanical penalty.

This is true even for small installs. I’ve seen single-user Nextcloud instances on a Raspberry Pi with the OS and database on a cheap high endurance microSD card feel sluggish simply because flash-on-SD-card still isn’t as consistent as a real SSD. If you’re running Nextcloud on a Pi or similar SBC, moving the database and app code to a USB-attached SSD instead of SD or spinning disk is one of the highest-impact changes you can make.

Where a hard drive is genuinely fine

Bulk file storage, meaning the actual user files behind your Nextcloud install, doesn’t need SSD speed in most home setups. If you’re storing photos, documents, backups, and media that get accessed occasionally rather than constantly re-indexed, a hard drive performs almost identically to an SSD for the actual file transfer once the metadata lookup is done. Downloading a 2GB video from Nextcloud over your home network is bottlenecked by your network speed (gigabit Ethernet tops out around 125MB/s) long before it’s bottlenecked by HDD sequential read speed (120-250MB/s depending on the drive).

This is why a lot of experienced self-hosters split storage: OS, Nextcloud app files, and database on an SSD, bulk file storage on one or more hard drives, often in a mirrored or parity setup for redundancy. It’s the same logic NAS boxes use.

SSD vs HDD for Nextcloud, by workload

WorkloadHDD experienceSSD experience
Folder browsing (100+ files)1-3 sec load, worse with more filesUnder 300ms typically
Database queries (login, search, activity)Noticeable lag, especially multi-userNear instant
Photo gallery / preview scrollingStutters, delayed thumbnail pop-inSmooth
Large file download/uploadFine, network is usually the bottleneckFine, same bottleneck
Cost per TBMuch cheaper, roughly $15-20/TBHigher, roughly $45-70/TB for SATA
Multi-user concurrent accessDegrades quickly past 3-5 active usersScales much better

What to actually buy

For a single-user or small-household Nextcloud instance, a 500GB-1TB SATA SSD for the OS, app, and database is plenty, and pairing it with a larger internal hard drive for bulk files keeps cost down while keeping the app responsive. If you’re running this on a dedicated server or NAS rather than a Pi, an NVMe SSD for the OS/database drive is worth the small premium over SATA because it also speeds up swap and general container I/O if you’re running Nextcloud in Docker.

Don’t put the database on a USB flash drive or SD card if you can avoid it. These use cheaper NAND and lack the wear-leveling and sustained write endurance of a real SSD controller, and they’ll show it within a year of constant database writes, either slowing down or developing read errors. If budget-tier external storage is your only option, at minimum size it generously so wear leveling has room to work, and back up the database separately and often.

If you’re running multiple concurrent users, a shared office syncing laptops against Nextcloud daily, skip the HDD-only setup entirely. The random I/O load from several sync clients polling simultaneously is exactly the scenario hard drives handle worst, and you’ll feel it as general system lag rather than one specific slow feature.

Explore Our Guides & Free Tools