Bits vs. Bytes and Why File Sizes Never Quite Add Up
A byte equals 8 bits, and the two are commonly confused specifically because of similar abbreviations — a lowercase "b" typically denotes bits (as in Mbps, megabits per second, common in internet speed) while an uppercase "B" denotes bytes (as in MB, megabytes, common in file sizes) — mixing these up produces a file-size or transfer-time estimate off by a factor of 8.
This specific bit-versus-byte confusion is one of the most common sources of a mismatched expectation around file sizes and download times.
The core distinction
A bit is the most basic unit of digital information (a single 0 or 1). A byte is a group of 8 bits, and is the standard unit for measuring file sizes — a 10-megabyte (MB) file is 80 megabits (Mb) of underlying data, an 8x difference that matters a great deal when the two units get confused.
Why internet speed and file size use different units
Internet connection speeds are conventionally advertised in bits per second (Mbps, megabits per second), while file sizes are conventionally measured in bytes (MB, megabytes) — this convention mismatch is exactly why a "100 Mbps" connection downloads a 100 MB file in about 8 seconds under ideal conditions, not 1 second, since 100 Mbps is only 12.5 megabytes per second.
How to avoid the confusion
Checking the specific case of the "b" in an abbreviation (lowercase for bits, uppercase for bytes) and dividing an advertised bits-per-second speed by 8 to estimate actual bytes-per-second download speed gives a much more realistic sense of how long a file transfer will actually take.