When you buy a great, brand-new SSD you might be tempted to fill it with all your games, pictures, videos, or whatever you want on your PC. After all, that's what storage is there for, right? Well, that's not actually how it works for modern SSDs, and if you fill pretty much any drive to the brim, you'll discover that writing data starts to take a much longer time than before. Here's why that happens and how badly you can impact the performance of your storage by filling it up too much.
SLC cache, the specification you might not have heard of
You might think an SSD is as simple as the capacity it has and how fast that storage can transfer data, but there's a bit more to it than that. SSDs can essentially get tired after writing lots of data, and the more the SSD is filled up, the quicker it gets exhausted. When that happens, it's the SSD's SLC cache that's being depleted, which forces the SSD to use the slower part of its storage.
You probably haven't heard of SLC cache before, and it's not something SSD manufacturers put on their spec sheets. Modern SSDs are configured to have some storage operate at a high speed and the rest at a slow speed. The faster part is the SSD's cache, and its size is set to a certain percentage of however much free space there is on a drive. Generally speaking, higher-end SSDs have a larger percentage made up of cache, while cheaper SSDs dedicate less capacity to cache, and writing to an SSD for long enough will deplete this cache and result in a sudden performance drop.
But why can't all of an SSD just be fast? Well, it has to do with the way modern SSDs have evolved. In the beginning, we had single-level cell (or SLC) flash chips, which store one bit of data per cell, either one or zero. SLC is great because it's super durable and fast, but pretty quickly the industry discovered that delivering SSDs with lots more data was going to be difficult if each cell could have only a single bit of data, so then multi-level cell (MLC) chips were made, then triple-level cells (TLC), and most recently quadruple-level cells (QLC).
Using these denser cells had the drawback of reducing maximum writing performance on SSDs, however, leaving manufacturers stuck between choosing speed or value. But it is possible to have the best of both worlds, or pretty close to it. SSD makers figured out that you can just disable some of the bits in MLC, TLC, or QLC flash to make it like SLC, or pseudo SLC. Then that pseudo SLC can act like a cache, being the first part of an SSD that's written to, offering fast performance for as long as it lasts.
How performance degrades when you keep filling up your SSD
The thing about SLC cache is that its size depends not just on what the manufacturer set its size to, but also how much space you have left on your SSD. That means the more stuff you put on your SSD, the smaller your cache gets and the quicker performance can get in a writing workload. To demonstrate this happening in action, I tested my Western Digital WD Black SN770M SSD in a program called IOMeter, which made the SSD perform writes for 15 minutes straight. I tested the SN770M three times at differing levels of free space: 10% filled, 50% filled, and 90% filled.
With 10% of its space filled, the SN770M was able to hit 4,800MB/s for two minutes, and after this it settled in at 4,550MB/s for the rest of the 15-minute test. But with half the drive filled, performance only started at roughly 4,300MB/s and after a minute dropped sharply down to 1,000MB/s, but was able to get back up to 4,300MB/s every now and then for a minute. When filled up to 90%, the performance was even worse with a starting speed of 4,500MB/s that dropped to 1,000MB/s in less than a minute and staying there for the duration of the 15-minute test.
The performance implications here are also clear when looking at the average write speed. At 10% filled, the SN770M averaged nearly 4,600MB/s, which declined to 2,300MB/s when filled 50%. At 90% filled, we're looking at just shy of 1,200MB/s, which is still respectable but very slow for a PCIe 4.0 SSD. This SSD became four times slower just from having lots of data on it.
Don't expect great performance if you're leaving no byte unused in an SSD
It probably sounds pretty ridiculous that you can't just store stuff on your SSD like you'd want without compromising performance, but that's just how modern SSDs work. Personally, I recommend keeping your OS drive filled to no more than 70%, though secondary drives in your system can be filled closer to 90% without concern. If you find yourself transferring lots of files, you might want to get SSDs that specifically have large caches, which tend to be the higher-end models.
Thankfully, SSDs are pretty cheap today, which means it's not a huge deal to not use up all of an SSD's space. It's pretty easy to load up a PC with 2TB of storage for less than $100, and 4TB is possible for $150 or a little more. Even 2TB can be overkill for most people, but if you want to never worry about suddenly seeing your file transfer speeds plummet off a cliff, you're going to want more space than you actually need.
