Storage capacity is one of the more confusing topics in the technology world. I have had many frustrated people ask me why their new 500-gigabyte external hard drive is actually only stores 465 gigabytes. It can be confusing, but there are actually different definitions of digital storage units depending on who you are asking. There also other factors, such as firmware and operating system data, that serve to obfuscate digital storage terminology.

The smallest unit of digital storage is called a bit. A bit is a single 0 or 1, represented usually as a stored magnetic or electric charge, depending on the storage medium. There are 8 bits in one byte. It is after this point that the numbers start to change depending on whether the terminology is used with its decimal definition or its binary definition.

The prefixes for large quantities of bytes are assigned by the International System of Units. In the decimal definitions, a kilobyte is made up of 1,000 bytes, a megabyte of 1,000 kilobytes, a gigabyte of 1,000 megabytes, and so on. The decimal definition is commonly used by storage device manufacturers to measure capacity, along with data throughput and various other performance specifications. Since computer software uses the base-2 numeral system, each level of the binary definition is made up of 1,024 of the previous level. This is because 1,024 is the closest power of 2 to 1,000. Computer software expects one gigabyte to be made up of 1,073,741,824 bytes, instead of 1,000,000,000. This is why computers will usually display the storage of a device as less than was advertised for the device, even though the advertised storage was technically correct according to the decimal definition.

If an operating system is stored on a device, the usable capacity will be further limited. For instance, on a 128-gigabyte MacBook, after binary conversions and system software, about 120 gigabytes is typically available for the user. For these reasons, it is always a good idea to budget a little more storage than you think you will use.