Even when you're buying the best SSDs, the amount of space you actually end up with will generally be less than advertised. That can feel frustrating but there are a couple of reasons for this. The first is down to the fact that drive manufacturers count in a different way to Windows, but also because of other things like drive provisioning and the formatting overhead. Here's how all these things add up to why a drive like the Sabrent Rocket Q 8TB SSD actually has a real capacity of less than 7TB.
Hard drive manufacturers use metric measurements when it comes to selling hard drive capacities. That is, 1 kilobyte = 1,000 bytes, 1 megabyte = 1,000 kilobytes, 1 gigabyte = 1,000 megabytes, and 1 terabyte = 1,000 gigabytes, and so on.
That isn't how Windows thinks about storage though. Computers are all about 1s and 0s, or binary if you prefer, and in that instance a kilobyte is 2^10 bytes, or 1,024 bytes, a megabyte is 1,024 kilobytes and so on.
Technically this should be referred to as a kibibyte (KiB), mebibyte (Mib), etc., although in reality such terminology is not in common usage, at least not outside of technical papers and computing courses. So in Windows 10, when you see a reference to 1KB, it's actually referring to 1,024 bytes.
Now at the kilobyte end of the storage scale that doesn't produce too much of a difference, we're talking 24 bytes here per KB. However, as you scale up to terabyte levels, the disparity gets far more noticeable.
We're now at a stage where SSDs are commonly bought as 1TB drives. If you're a hard drive manufacturers, that means:
1TB = 1,000 x 1,000 x 1,000 x 1,000 bytes = 1,000,000,000,000 bytes.
However, 1TB as far as Windows is concerned is:
1 TiB = 1,024 x 1,024 x 1,024 x 1,024 bytes = 1,099,511,627,776 bytes.
That's a difference of 99,511,627,776 bytes, or roughly 10 percent. (Remember that percentage, you'll be seeing it later.) If you spin that on its head, you'll find out how big Windows sees 1TB of storage:
1,000,000,000,000 / (1,024 x 1,024 x 1,024 x 1024) = 0.91TB
Even that isn't too noticeable a drop for a 1TB drive, but now that we have 8TB drives doing the rounds, the difference is a bit more obvious. That 8TB SSD would show up as a 7.3TB SSD in Windows, at least it would if there weren't other factors also at play. And the biggest one here is overprovisioning, a peculiarity of SSDs that helps offset their finite lifespans. You can, after all, only write to each memory cell so many times before they fail.
In order to get your head around what's happening here, you need a rough understanding of how SSDs work. Specifically when it comes to how data is overwritten.
SSDs organise data as pages (generally 4KiB a page), and then the pages are organised into blocks (generally 256KiB). The tricky thing is, you can only erase entire blocks, so if you want to overwrite just a few files, the most efficient way of doing so is to write this new data to a new block and copy the unchanged files from the original block across to that block as well. The old block can then be wiped during what is called the garbage collection phase.
SSDs need a certain amount of blocks set aside for this overwriting, and that is essentially what overprovisioning is (it also covers bad block mapping and general garbage collection). The more overprovisioning available, the more room to efficiently use the drive's storage. Importantly it means that all the blocks wear at about the same rate, which is the ideal scenario for SSDs—you really don't want some blocks wearing out before others.
All SSDs have some overprovisioning as standard, and guess what, it's around 10 percent of the drive's capacity. This is because the memory cells are binary elements, and so adhere to the 1,024 rule. So when a manufacturer sells a drive, it invisibly scoops up those 24 byte differences and uses them to make sure the drive operates efficiently.
Somewhat confusingly, however, SSD makers can overprovision more than that as well.
If you've ever bought an SSD, then you may have noticed non-standard capacities as you're looking around for them—200GB and 240GB drives are quite common in what is otherwise the 256GB SSD space. These can essentially be the same drives, but with different levels of overprovisioning in place. As shown here, these tend to be 28 percent, 7 percent, and 0 percent respectively.
This is in addition to the previously mentioned ~10 percent of overprovisioning that is present in all SSDs regardless.
Manufacturers ultimately make the call on how much extra overprovisioning there is, but for the vast majority of drives you're looking at around 7 percent of the overall capacity of the drive that is given over to it.
The last thing to affect the size of the drive is how it's formatted. Different formats have different overheads, but the most common format for a drive in Windows 10 is NTFS, and with that you're looking at an overhead of around 120MB for a completely blank formatted drive, with space set aside for the Master File Table, boot tables, and a few other things. And this is all before we start talking about the formatted block size, but that can be something we save for another day.
And so we come back to our, admittedly fairly extreme, case of the 8TB SSD, but you should now know why it shows up in Windows as just a 6.9TB drive. It's a mixture of funky maths, confusing mixed terminology, and just the way SSDs work. But as games get ever larger—looking at you CoD: Modern Warfare—these sorts of edge cases are going to become more common, and so be prepared for some angry people questioning where their missing terabyte of storage has gone. And now you can tell them.