You unbox a brand-new 1 TB external drive. You plug it in, format it, and Windows reports its size as 931 GB. Did you get ripped off? No — both numbers are correct. They're just measured in different ways.

The decimal vs binary distinction

Two definitions of "kilobyte" (and megabyte, gigabyte, terabyte) exist:

  • Decimal (SI): 1 KB = 1,000 bytes (10³). 1 MB = 1,000,000 bytes (10⁶). 1 GB = 10⁹. 1 TB = 10¹².
  • Binary (IEC): 1 KiB = 1,024 bytes (2¹⁰). 1 MiB = 1,048,576 bytes (2²⁰). 1 GiB = 2³⁰. 1 TiB = 2⁴⁰.

Drive manufacturers use decimal (smaller numbers, equipment is cheaper). Operating systems use binary (matches how memory and files actually work).

Why the difference grows with size

The two definitions diverge by 2.4% per step. Cumulatively:

DecimalBinary equivalentDiff
1 KB (1000 B)0.977 KiB2.4%
1 MB (1,000,000 B)0.954 MiB4.6%
1 GB (10⁹ B)0.931 GiB6.9%
1 TB (10¹² B)0.909 TiB9.1%
1 PB (10¹⁵ B)0.889 PiB11.1%

So a 1 TB decimal drive shows as 0.909 × 1024 = 931 GB binary in Windows. Same bytes, different label.

Why drive makers chose decimal

Marketing. Decimal lets manufacturers print bigger numbers on the box. "1 TB" sells better than "0.91 TB" or "931 GB."

It's also technically simpler: 1,000,000,000,000 bytes is a clean round number. Computer-internal multiples of 1024 don't fit consumer marketing.

Why operating systems use binary

Memory addresses are binary by nature. Allocating exactly 1024 bytes of RAM is natural; allocating 1000 bytes wastes the extra 24 bytes for alignment. So OS-level memory management always works in powers of 2.

To stay consistent, file system size reporting also uses binary. The Windows "Properties" dialog and macOS Finder both use binary GB.

The IEC standard fix (KiB, MiB, GiB)

The International Electrotechnical Commission (IEC) standardized the binary unit names in 1998:

  • Kibibyte (KiB): 1024 bytes
  • Mebibyte (MiB): 1024 KiB
  • Gibibyte (GiB): 1024 MiB
  • Tebibyte (TiB): 1024 GiB

The "i" stands for "binary." If you see KiB or MiB, you know it's the 1024-base version unambiguously.

Linux and most modern programming tools use IEC names. Windows still uses "MB" and "GB" colloquially while meaning binary internally — confusing but common.

Network speeds use decimal

Networking adds another twist. Network speeds (Mbps, Gbps) use decimal:

  • 1 Mbps = 1,000,000 bits per second (decimal)
  • 1 Gbps = 10⁹ bits per second

So 1 Gbps Ethernet = 125 MB/s using binary MB (since MB/s is a download-rate unit).

Yes — even within "the digital world," the unit conventions are inconsistent across domains. Memory uses binary, networks use decimal, drives use decimal. You can't change it; you can only know it.

Other places this confusion appears

RAM: always binary (a 16 GB RAM stick = exactly 16 × 2³⁰ bytes).

SSDs: always decimal (a 500 GB SSD shows ~465 GB in OS).

Mobile data plans: usually decimal in marketing, binary or decimal at carrier level (varies).

Cloud storage (Google Drive, Dropbox): usually decimal in product UI.

Floppy disks (historical): the "1.44 MB" disk uses neither standard exactly — it's 1024 × 1500 bytes, an unfortunate hybrid.

How to compute it yourself

Drive label bytes ÷ 1024³ = Windows display GB.

10⁹ × 1000 (1 TB) / 1024³ = 10¹² / 1,073,741,824 = 931.32 GB.

Or: drive label TB × 0.9095 = OS GB. So a 2 TB drive shows ~1.82 TB or ~1862 GB.

The consequence

You're not being deceived by the manufacturer. The byte count on the drive matches the marketing label exactly. The OS just measures the same bytes against a different yardstick.

That said: knowing this prevents confusion. A 1 TB drive holds about 909 GB binary, not "1024 GB worth of files." Adjust expectations.

Run the conversion

Our data storage converter handles both bases (1024 binary and 1000 decimal). Useful when comparing drive specs to actual usable space, or when your OS shows different numbers than expected.