What’s the difference between Usable and Specified SSD Capacity?

Today’s post is meant to shed some light on the differences in capacity between the advertised capacity of a Solid State Drive (SSD) and the usable capacity seen when storing data through the operating system.

In the old days, Hard Disk Drives (HDD) specified capacities in decimal whereas typical usage of capacity, such as megabytes, gigabytes, etc. are expressed in binary. Here are a few examples of the difference in capacity:

32GB 32,000,000,000 34,359,738,368 6.87%
128GB 128,000,000,000 137,438,953,472 6.87%
512GB 512,000,000,000 549,755,813,888 6.87%

In recent years, IDEMA (International Disk Drive and Materials Association) has published a standard (LBA 1-03) for drive capacities that most HDD and SSD manufacturers are following. This standard applies only to high capacity drives (>50GB). Using this standard, some representative drive capacities are as follows:

32GB N/A N/A N/A
128GB 128,035,676,160 137,438,953,472 6.84%
512GB 512,110,190,592 549,755,813,888 6.85%

With both HDD and SSD manufacturers now following the IDEMA standard, users should see consistent usable capacities from different vendors. On Cactus Technologies’ new, high capacity SATA products, such as 230S, 910S, 220S, etc., we follow the IDEMA standard for specifying capacities.

Why is there a difference and where does this memory go?

It is just a difference in how the advertised capacity is calculated as shown above. The raw capacity is unchanged. The difference in question is used by the drive for storing firmware, metadata and spare blocks. This is true mostly for SSDs, not so much for HDDs, especially older ones because, unlike flash chips, HDD media is not binary based.

The usable space also differs with Operating System (Windows, Linux, etc.). Different Operating Systems use different amounts of disk space to store their metadata. Therefore, formatted disk space is always less than unformatted disk space.

Another thief of usable capacity is overprovisioning. Overprovisioning is taking usable storage of a SSD for use by the controller. This space is no longer viewable by the user and is used mainly for wear leveling, metadata and spare sectors which improve the life of the overall SSD.

If overprovisioning is used, the overprovisioning space is taken out of the advertised capacity. Thus, a 128GB drive with 7% overprovisioning is advertised as a 120GB drive.

I hope this was able to offer some details into the inner workings of the SSD. If you would like to discuss this further, please contact a Cactus Expert for more information.

Steve Larrivee has over 30 year's experience in the data storage market, including 5 years at Seagate Technology and 10 years at SanDisk. He joined Cactus Technologies Limited as an equity partner and Co-Founded Cactus USA in 2007 with partner Tom Aguillon. Learn more about Steve on LinkedIn.