Quick Unit Convert
Back to Blog

Data Storage Units Explained: Bits, Bytes, KB, MB, GB, and TB

8 min read
DataStorageReferenceComputingTutorial

Almost everyone has bought a drive advertised as 1 TB, plugged it in, and watched the computer report something closer to 931 GB. It feels like you were shortchanged, but nobody actually cheated you. The gap comes from two different but equally valid ways of counting bytes, layered on top of confusing labels that the industry has used inconsistently for decades. Once you understand bits, bytes, and the two families of prefixes, the whole picture clicks into place.

This guide walks through the building blocks of digital storage from the single bit up to the terabyte, explains the decimal and binary prefix systems and why both exist, and clears up the everyday mix-ups around drive sizes and internet speeds. The goal is that you never have to second-guess a storage number again.

Bits and bytes: the foundation

The smallest unit of digital information is the bit, short for binary digit. A bit holds a single value: 0 or 1. On its own a bit cannot represent much, so computers group them together. The standard grouping is the byte, which is exactly 8 bits. With 8 bits you can make 2 to the power of 8, or 256, different combinations, which is enough to represent a single character of text in older encodings, one of 256 shades of gray, or a number from 0 to 255.

Two conventions cause a surprising amount of confusion, so it is worth fixing them in your mind early:

  • A capital B almost always means bytes, while a lowercase b means bits. So KB is kilobytes and Kb is kilobits.
  • 1 byte = 8 bits. To turn bits into bytes you divide by 8; to turn bytes into bits you multiply by 8.
  • File sizes are quoted in bytes (and their multiples), while data transfer rates such as internet speed are usually quoted in bits per second.
  • A nibble is half a byte, or 4 bits, and shows up occasionally when discussing single hexadecimal digits.

Decimal prefixes: KB, MB, GB, TB

The familiar metric prefixes kilo, mega, giga, and tera come from the International System of Units (SI), maintained by the BIPM, where they always mean powers of 1000. Applied to bytes, this decimal convention gives clean round numbers:

  • 1 kilobyte (KB) = 1000 bytes = 10 to the 3rd power bytes
  • 1 megabyte (MB) = 1000 KB = 1,000,000 bytes = 10 to the 6th power bytes
  • 1 gigabyte (GB) = 1000 MB = 1,000,000,000 bytes = 10 to the 9th power bytes
  • 1 terabyte (TB) = 1000 GB = 1,000,000,000,000 bytes = 10 to the 12th power bytes

This is the system used by storage manufacturers when they print a capacity on the box. A drive labeled 1 TB really does contain one trillion bytes, exactly as the SI definition of tera promises. It is also the system used by macOS and most networking and telecom equipment. Because the prefixes match the rest of the metric world, decimal units are easy to scale: every step up multiplies by 1000, the same way it does for meters and grams.

Binary prefixes: KiB, MiB, GiB, TiB

Computers, however, address memory in powers of two, so a unit of 1024 (which is 2 to the 10th power) is far more natural to them than 1000. For decades, programmers simply borrowed the metric prefixes and quietly redefined them, so a kilobyte often meant 1024 bytes rather than 1000. That overloading is the root of the confusion. To fix it, the International Electrotechnical Commission (IEC) introduced separate binary prefixes in 1998:

  • 1 kibibyte (KiB) = 1024 bytes = 2 to the 10th power bytes
  • 1 mebibyte (MiB) = 1024 KiB = 1,048,576 bytes = 2 to the 20th power bytes
  • 1 gibibyte (GiB) = 1024 MiB = 1,073,741,824 bytes = 2 to the 30th power bytes
  • 1 tebibyte (TiB) = 1024 GiB = 1,099,511,627,776 bytes = 2 to the 40th power bytes

The pattern is the same as decimal, but each step multiplies by 1024 instead of 1000. The names are deliberately ugly so they cannot be mistaken for the metric versions: kibi blends kilo with binary, mebi blends mega with binary, and so on. Strictly speaking, when you mean 1024 bytes you should write KiB, and when you mean 1000 bytes you should write KB. In practice many operating systems and apps still display GB while actually computing in gibibytes, which is exactly where the famous drive-size discrepancy is born.

Why your 1 TB drive shows about 931 GB

Here is the mystery solved. The manufacturer counts in decimal, so a 1 TB drive holds 1,000,000,000,000 bytes. Windows, on the other hand, reports capacity in binary but labels it with the decimal-looking GB. To get its number, it divides the true byte count by 1,073,741,824 (the number of bytes in one gibibyte):

  1. Start with the real capacity: 1,000,000,000,000 bytes.
  2. Divide by 1,073,741,824 to express it in gibibytes: 1,000,000,000,000 / 1,073,741,824 = about 931.32.
  3. Windows displays that result as 931 GB, even though it is really 931 GiB.

No storage is missing. The drive holds exactly the trillion bytes promised; the operating system is just measuring those bytes with a 1024-based ruler while printing a 1000-based label. The same effect explains why a 256 GB phone shows roughly 238 GiB of total space before the operating system even takes its share, and why a 64 GB memory card formats to about 59.6 GiB.

Bandwidth: bits, not bytes

Internet and network speeds add one more twist: they are measured in bits per second, not bytes. An advertised 100 Mbps connection moves 100 megabits each second, but the files you download are measured in megabytes. To predict real download speed, divide the bit rate by 8:

  • 100 Mbps / 8 = 12.5 MB/s, so a 1.25 GB file takes roughly 100 seconds at full speed.
  • 1 Gbps / 8 = 125 MB/s in theory, before real-world overhead.
  • A 25 Mbps connection delivers about 3.125 MB/s.
  • Overhead from protocols, Wi-Fi, and server limits means you will usually see a bit less than the theoretical maximum.

This is why a download manager showing 12 MB/s on a 100 Mbps line is performing exactly as expected, not at one-eighth of the speed you paid for. Keep an eye on whether a figure uses a capital B or lowercase b, because that single letter changes the meaning by a factor of eight.

Common mistakes and practical tips

Most storage and speed errors trace back to a handful of habits. Watch for these and your numbers will stay trustworthy:

  • Confusing bits and bytes. Mbps is megabits per second; MB/s is megabytes per second. Divide bits by 8 to get bytes.
  • Assuming KB always means 1024 bytes. It depends on the context: storage labels and macOS use 1000, while Windows file sizes and RAM use 1024.
  • Thinking a drive lost capacity. The bytes are all there; only the unit used to display them changed.
  • Mixing prefix families in one calculation. Pick decimal (KB, MB, GB) or binary (KiB, MiB, GiB) and stay consistent throughout.
  • Forgetting RAM is always binary. Memory modules are sized in powers of two, so 8 GB of RAM is genuinely 8 GiB.

For everyday estimates the difference between decimal and binary is small at the kilobyte level, where it is about 2.4 percent, but it grows with scale: it reaches roughly 4.9 percent at the megabyte level, about 7.4 percent at the gigabyte level, and close to 10 percent by the terabyte level. For professional work such as provisioning storage, billing for data, or capacity planning, verify which definition a tool or contract uses, since that 10 percent can translate into real money or a failed backup.

When you need to move between bytes, kilobytes, megabytes, gigabytes, and their binary cousins without doing the powers of two in your head, our data storage converter handles both the decimal and binary systems so you can compare them side by side and see exactly where the numbers diverge.

Put it into practice

Stop doing the arithmetic by hand. Use our free, instant converter to get an exact answer, or jump straight to a related category below.

Keep exploring:more articlesHow it worksFAQ