Data Storage Units Explained: Why Your Hard Drive Shows Less Space Than Advertised

Bits and Bytes: The Fundamentals

At the lowest level, computers store everything as bits — binary digits that are either 0 or 1. Eight bits make a byte, which is the smallest addressable unit of storage in most computers.

  • 1 bit = a single 0 or 1
  • 1 byte = 8 bits = enough to store one ASCII character (like the letter "A")
  • 1 nibble = 4 bits (half a byte, rarely used outside low-level programming)

Everything else — kilobytes, megabytes, gigabytes — is built on top of bytes. But this is where it gets confusing, because there are two competing definitions for each prefix.

Decimal Units (KB, MB, GB) — Base 10

In the decimal (SI) system, each prefix multiplies by 1,000:

UnitAbbreviationBytes
KilobyteKB1,000
MegabyteMB1,000,000
GigabyteGB1,000,000,000
TerabyteTB1,000,000,000,000
PetabytePB1015

This is the system used by hard drive manufacturers, ISPs, and the SI standard. When Samsung sells you a "1 TB SSD," they mean 1,000,000,000,000 bytes.

Binary Units (KiB, MiB, GiB) — Base 2

Computers work in powers of 2. So computer scientists originally used "kilobyte" to mean 210 = 1,024 bytes, because 1,024 is the closest power of 2 to 1,000. In 1998, the IEC created official binary prefixes to eliminate this ambiguity:

UnitAbbreviationBytesDifference from SI
KibibyteKiB1,024+2.4%
MebibyteMiB1,048,576+4.9%
GibibyteGiB1,073,741,824+7.4%
TebibyteTiB1,099,511,627,776+10.0%
PebibytePiB250+12.6%

The "bi" in KiB, MiB, GiB stands for "binary." This is the system your operating system (Windows, macOS, Linux) uses when reporting file sizes and disk space — though Windows confusingly labels them "KB," "MB," and "GB."

The Great Confusion

The root cause of all confusion:

  • Drive manufacturers use decimal (1 GB = 1,000,000,000 bytes) — it makes their drives sound bigger
  • Operating systems use binary (1 GB = 1,073,741,824 bytes) — because memory addressing is inherently binary
  • Windows uses binary values but labels them with decimal prefixes (showing "931 GB" when it means "931 GiB")
  • macOS (since Snow Leopard, 2009) switched to decimal, so a 1 TB drive shows as ~1 TB
  • Linux varies by distribution and tool (ls uses decimal, some file managers use binary)
💡 Key insight: The gap grows with size. At the kilobyte level, the difference is only 2.4%. At the terabyte level, it's 10%. At the petabyte level, 12.6%. This is why the "missing space" problem feels worse on larger drives.

Where Did My Disk Space Go?

When you buy a "1 TB" hard drive, here's what happens:

  1. The manufacturer ships a drive with 1,000,000,000,000 bytes (1 TB decimal).
  2. Windows divides by 1,073,741,824 to get GiB, but labels it "GB."
  3. Result: 1,000,000,000,000 ÷ 1,073,741,824 = 931.32 GiB, displayed as "931 GB."
  4. Then subtract space for the file system (formatting), hidden recovery partitions, and system files.
  5. You end up with roughly 910–920 "GB" of usable space.

Neither the manufacturer nor your OS is lying — they're just using different definitions of "gigabyte."

AdvertisedActual BytesShown in Windows"Missing"
256 GB SSD256,000,000,000~238 GB~7%
512 GB SSD512,000,000,000~477 GB~7%
1 TB HDD1,000,000,000,000~931 GB~7%
2 TB HDD2,000,000,000,000~1,863 GB~7%
4 TB HDD4,000,000,000,000~3,726 GB~7%

Complete Comparison Table

Decimal (SI)ValueBinary (IEC)Value
1 KB1,000 B1 KiB1,024 B
1 MB106 B1 MiB220 B = 1,048,576 B
1 GB109 B1 GiB230 B = 1,073,741,824 B
1 TB1012 B1 TiB240 B
1 PB1015 B1 PiB250 B
1 EB1018 B1 EiB260 B

Real-World File Sizes

To give you a feel for these units in everyday life:

  • 1 KB — A very short email (text only), a tiny favicon image
  • 1 MB — A high-quality JPEG photo, one minute of MP3 audio at 128 kbps
  • 1 GB — About 250 MP3 songs, 1 hour of SD video, a large app installer
  • 1 TB — About 500 hours of HD video, 250,000 high-quality photos, or 6.5 million document pages
  • 1 PB — 13.3 years of continuous HD video, or the estimated storage of a small social media platform

Storage vs Bandwidth: Bytes vs Bits

Network speeds are measured in bits per second, not bytes. This creates another source of confusion:

  • A 100 Mbps internet connection = 100 megabits per second
  • Divide by 8 to get megabytes: 100 Mbps ≈ 12.5 MB/s max download speed
  • So downloading a 1 GB file at 100 Mbps takes at least 80 seconds, not 10

ISPs advertise in bits (bigger number = sounds faster). File sizes are shown in bytes. The conversion: divide bits by 8 to get bytes. Always look for the capitalisation: uppercase B = Bytes, lowercase b = bits. 100 MB ≠ 100 Mb.

💡 Quick rule: To estimate download time, divide the file size in MB by your speed in Mbps, then multiply by 8. A 500 MB file on a 50 Mbps connection: 500 ÷ 50 × 8 = 80 seconds.

Convert data storage units instantly:

💾 Data Storage Converter