Note · Fundamental concepts
Bits vs bytes: what's the difference, and why speeds use bits
A bit is a single 0 or 1; a byte is 8 bits. Why a 100 Mbps connection downloads at about 12.5 MB/s, and why a 1 TB drive shows up as about 931 GB.
This note and the comments marked the Graphite mark are Graphite’s: an AI model, Claude Opus 5.5, wrote them on 5 November 2026, following Graphite’s own instructions, from the sources at the note’s end, and checked them against those sources. Check them as you would anyone’s.
This note and its comments are written by an AI model.
Contents · 6 sections
Bits vs bytes is a difference of eight: a bit is the smallest unit of digital data, a single binary digit that is either 0 or 1, and a byte is a group of 8 bits. Network speeds are counted in bits per second, written with a lowercase b (Mbps), while file sizes and storage are counted in bytes, with a capital B (MB). So a 100 Mbps connection moves at most 12.5 megabytes a second.
In short
- 1 byte = 8 bits. Lowercase b means bits; capital B means bytes. Divide a speed in bits by 8 to get bytes.
- Kilo, mega and giga officially mean 1,000, 1 million and 1 billion. The binary units kibi, mebi and gibi mean 1,024 and its powers.
- A "1 TB" drive holds 1,000,000,000,000 bytes, which software counting in powers of 1,024 shows as about 931 GB.
What is a bit, and what is a byte?
A bit, short for binary digit, holds one of two values, 0 or 1. It is the unit computers store and send everything in, as the note on how binary works explains. One bit can answer one yes-or-no question. Two bits can hold 4 different patterns (00, 01, 10, 11), three bits 8, and each extra bit doubles the count. The word was coined at Bell Labs by the statistician John Tukey in a memo of January 1947, and first appeared in print in Claude Shannon's paper of 1948 (Wikipedia), the paper that founded information theory, where the bit is also the unit of information.
A byte is 8 bits, enough for 2⁸ = 256 different patterns, so one byte can hold a number from 0 to 255, or one letter of English text. The engineer Werner Buchholz coined the word in June 1956, while designing IBM's Stretch computer (Wikipedia). Early machines used bytes of different sizes, and the 8-bit byte became standard later, which is why internet standards still say "octet" when they want to be unambiguous: the Internet Protocol's specification describes an address as four octets, 32 bits. Half a byte, 4 bits, is sometimes called a nibble.
Why are internet speeds in bits but downloads in bytes?
Because the two numbers describe different things. A network link sends data as a stream of bits, one after another, so its speed is naturally counted as bits per second, the convention telecommunications has used since before personal computers. Files sit in storage as bytes, so their sizes, and the download rates many apps show, are counted in bytes.
The conversion is a division by 8. Work it through for a connection sold as 100 Mbps, 100 megabits per second:
- Write the speed in bits. 100 Mbps is 100,000,000 bits each second.
- Divide by 8 to get bytes. 100,000,000 ÷ 8 = 12,500,000 bytes a second, which is 12.5 MB/s.
- Apply it to a file. A 5 GB download is 5,000 MB. At 12.5 MB/s it takes 5,000 ÷ 12.5 = 400 seconds, about 6 minutes 40 seconds.
- Expect a little less in practice. Every packet also carries addressing and error-checking data that isn't part of the file, and Wi-Fi, other devices on the network and the far server all take their share, so real downloads usually run somewhat below the arithmetic.
| Advertised speed | Best case in megabytes per second | Time for a 5 GB file, at best |
|---|---|---|
| 25 Mbps | 3.1 MB/s | about 27 minutes |
| 100 Mbps | 12.5 MB/s | about 6.7 minutes |
| 1,000 Mbps (1 Gbps) | 125 MB/s | 40 seconds |
The single letter matters: 100 Mbps and 100 MB/s differ by a factor of 8. On a Wi-Fi connection, the speed the router reports between itself and your device is a separate number again, the link rate, and is usually higher than the internet speed actually delivered.
Is a kilobyte 1,000 bytes or 1,024?
Officially 1,000, but for decades it was used to mean both, which is the root of most of the confusion. In the metric system, kilo means 1,000, mega a million and giga a billion. Computer memory, though, comes in powers of 2, and 2¹⁰ = 1,024 is close to 1,000, so engineers long used "kilobyte" for 1,024 bytes and "megabyte" for 1,024 × 1,024.
In December 1998 the International Electrotechnical Commission (IEC) settled it by creating separate names for the binary multiples, as NIST, the US standards agency, sets out. The metric prefixes keep their metric meaning, and the binary ones get their own:
| Decimal unit | Size in bytes | Binary unit | Size in bytes | Binary is bigger by |
|---|---|---|---|---|
| kilobyte (kB) | 1,000 | kibibyte (KiB) | 1,024 | 2.4% |
| megabyte (MB) | 1,000,000 | mebibyte (MiB) | 1,048,576 | 4.9% |
| gigabyte (GB) | 1,000,000,000 | gibibyte (GiB) | 1,073,741,824 | 7.4% |
| terabyte (TB) | 1,000,000,000,000 | tebibyte (TiB) | 1,099,511,627,776 | 10.0% |
The gap grows with each step up, because each binary unit is 1,024 times the last while each decimal one is only 1,000 times (Wikipedia). In everyday use the new names caught on slowly: memory is still sold in binary sizes with decimal-looking labels, so a "16 GB" memory chip actually holds 16 GiB, 17,179,869,184 bytes.
Why does a 1 TB drive show up as 931 GB?
Because the drive's maker and the software counting it use different units under the same name. Drive makers use decimal units, so a 1 TB drive holds 1,000,000,000,000 bytes, as labeled. Some operating systems, Microsoft Windows among them, divide by powers of 1,024 but still write "GB".
- Start with the bytes: 1,000,000,000,000.
- Divide by 1,024 three times, that is, by 1,073,741,824, to count gibibytes: 1,000,000,000,000 ÷ 1,073,741,824 ≈ 931.3.
- Read the label: the software shows "931 GB". It means 931 GiB.
No space is missing; the same bytes are counted in a bigger unit. Formatting the drive does use a little space for the file system, but the 69 "lost" gigabytes are the units. Apple's macOS and some Linux systems now count storage in decimal units, so the same drive shows close to 1 TB on them (Wikipedia).
How do you avoid getting these mixed up?
A quick checklist:
- Look at the letter case. Lowercase b is bits, capital B is bytes. Mbps, Mb/s and Mbit/s are all megabits per second; MB/s is megabytes per second.
- Divide or multiply by 8 to move between bits and bytes. A speed in Mbps divided by 8 is the best case in MB/s.
- Expect storage to read low. On software that counts in powers of 1,024, a drive shows about 7% less than its label for gigabytes and about 9% less for terabytes.
- Watch for "i". KiB, MiB and GiB always mean powers of 1,024; kB, MB and GB should mean powers of 1,000, though software doesn't always follow the standard.
- Remember compression. How big a file is depends on how it is stored. A photo or a song is usually compressed, and compression is why the same picture can take 200 kB in one format and 20 MB in another.
Check yourself
- Without looking back, work out the best-case download speed in MB/s on a 500 Mbps connection, and how long a 1 GB file would take.
- Why does a computer show a "2 TB" drive as about 1.82 TB?
- What is the difference between a kilobyte and a kibibyte, and which one does memory use?
Sources
- Prefixes for binary multiples — National Institute of Standards and Technology
- Byte — Wikipedia
- Bit — Wikipedia
- Binary prefix — Wikipedia
- RFC 791: Internet Protocol — Jon Postel, ed., Information Sciences Institute, 1981