A megabyte (MB) is bigger than a kilobyte (KB). In the decimal system used by storage manufacturers, 1 MB equals 1,000 KB, which equals 1,000,000 bytes. In the binary system used by most operating systems, 1 MB equals 1,024 KB, or 1,048,576 bytes. Either way, one MB carries roughly a thousand times more data than one KB, so the prefix "mega" outranks "kilo" by three orders of magnitude.
The confusion rarely comes from the direction of the hierarchy. It comes from the fact that the same two letters describe two slightly different quantities depending on who is counting. A 1 MB file is 1,024 KB in Windows Explorer and 1,000 KB on the label of a USB drive. That gap is small at the kilobyte scale but compounds into the famous "missing gigabytes" on a new hard drive. This explainer walks through the byte hierarchy, the two competing counting systems, the historical accident that split them, and the practical rules for reading storage specs without being misled.
The byte hierarchy and where KB and MB sit
A byte is eight bits, and a single byte can store one ASCII character such as a letter or a digit. The prefixes stack in powers of 1,000 in the International System of Units (SI): kilobyte, megabyte, gigabyte, terabyte, petabyte. Each step multiplies by 1,000 in strict SI terms. That makes the ordering unambiguous: KB < MB < GB < TB < PB.
The binary interpretation changes the multiplier from 1,000 to 1,024, which is 2 to the 10th power. Engineers chose 1,024 because computers address memory in binary, and 1,024 is the nearest power of two to 1,000. So a binary kilobyte is 1,024 bytes, a binary megabyte is 1,024 binary kilobytes, and so on up the chain. The hierarchy order never changes; only the exact multiplier does.
Here is the practical consequence in one plain sentence: no matter which counting system you use, a megabyte is always about a thousand times a kilobyte, never the reverse. The only real question is whether "about a thousand" means exactly 1,000 or exactly 1,024.
Why two counting systems exist
The split has a specific origin. Early computer engineers needed shorthand for powers of two, and "kilo" was the closest familiar prefix. Through the 1970s and 1980s, "kilobyte" almost always meant 1,024 bytes in technical documentation. Memory manufacturers, disk manufacturers, and software vendors all used the term loosely, and nobody enforced a standard.
In 1998, the International Electrotechnical Commission (IEC) published a formal fix. It introduced binary prefixes: kibibyte (KiB) for 1,024 bytes, mebibyte (MiB) for 1,024 KiB, gibibyte (GiB), and so on. The SI prefixes (KB, MB, GB) were reserved for strict powers of 1,000. The intent was to end the ambiguity with clean, distinct labels.
Adoption was uneven. Most operating systems kept displaying binary values under SI labels, so Windows still reports a file as "1 MB" when it means 1,048,576 bytes. Storage manufacturers, meanwhile, largely adopted the SI definition for marketing because it makes capacities look larger. That is why a drive sold as 1 TB shows up as roughly 931 GB in Windows. The drive is not defective; the two parties are counting different things.
Quantified context: how large is the gap
At the kilobyte and megabyte scale, the discrepancy between 1,000 and 1,024 is only 2.4 percent, which is easy to ignore. That percentage is constant per step, but it multiplies with each prefix jump. By the time you reach gigabytes, the cumulative gap is about 7.4 percent. At the terabyte level, it reaches roughly 10 percent. This compounding is the mechanism behind the "shrinking" drive.
Consider a 1 TB drive. In SI terms it holds 1,000,000,000,000 bytes. Divided by 1,024 four times (to reach binary gigabytes), it comes out to about 931 GiB. The larger the nominal capacity, the more visible the shortfall becomes. A 256 GB phone shows about 238 GiB of usable space in a binary-reporting OS for the same reason, before any space is consumed by the operating system itself.
To keep the units straight at the low end:
1 KB (SI) = 1,000 bytes 1 KiB (binary) = 1,024 bytes 1 MB (SI) = 1,000,000 bytes 1 MiB (binary) = 1,048,576 bytes 1 MB is always larger than 1 KB, whichever convention applies The difference between SI and binary grows at every prefix step
A useful anchor: a plain-text email of a few hundred words is a few KB. A typical smartphone photo is 2 to 5 MB. A one-minute song at moderate compression is about 1 MB. So a single photo is roughly a thousand times the size of a short text file, which is exactly the KB-to-MB relationship in action.
Edge cases that trip people up
The 1,024-versus-1,000 question is the main edge case, but several others cause real confusion. Network speeds are measured in bits, not bytes, so a "100 Mbps" connection delivers about 12.5 MB per second, because you divide by eight. People routinely mistake megabits for megabytes and conclude their connection is slow. The unit label matters: lowercase "b" usually means bits, uppercase "B" means bytes.
Storage marketing adds another layer. Drive vendors use SI, so the number on the box is accurate under that convention. Operating systems often use binary under SI labels, so the number on screen is smaller. Both are "correct" within their own definitions, which is why the mismatch persists. Formatting overhead, file system metadata, and preinstalled software further reduce the free space you actually see.
There is also a counterintuitive detail worth flagging. The gap between SI and binary is not a rounding error you can wave away; it is a systematic 2.4 percent per prefix that compounds. Professionals who provision storage, whether for a data center or a backup plan, must budget for it explicitly. Ignoring it at the terabyte scale means under-provisioning by roughly a tenth of nominal capacity.
Common misconceptions about KB and MB
The most common error is reversing the order, assuming MB is smaller than KB because "mega" sounds like "mini" to some ears. The prefixes are fixed: kilo means thousand, mega means million. MB is always larger.
A second misconception is that the 1,024 figure is "wrong" or a bug. It is not. It reflects binary addressing and remains the working convention inside most operating systems. The IEC labels (KiB, MiB) exist precisely to remove ambiguity, but they have not displaced the older usage in everyday software.
A third is that a "1 TB" drive should show 1,000 GB on screen. Under binary reporting it shows about 931 GiB, and that is expected behavior, not false advertising under SI conventions. A fourth is confusing bits and bytes when reading internet speed or file size. A fifth is assuming all "KB" labels mean the same thing across devices. They do not, because the reporting convention depends on the software and the vendor.
Practical actions for reading storage specs
You can sidestep most confusion with a few habits:
When buying storage, check whether the capacity is quoted in SI (1,000-based) or binary (1,024-based), and expect the OS to show less under binary reporting. Treat the on-screen size in Windows or macOS as binary even when the label says GB or TB. Divide network speeds by eight to convert megabits per second to megabytes per second. Use IEC labels (KiB, MiB, GiB) in your own documentation to avoid ambiguity. Budget roughly 7 to 10 percent extra capacity when planning backups at the gigabyte and terabyte scale.
For file-size questions, the short rule holds: MB is bigger than KB by a factor of about 1,000. If you need exactness, state which convention you mean. For most everyday purposes, the thousand-fold relationship is accurate enough, and the 2.4 percent binary correction rarely changes a decision about whether a photo fits in an email or a file fits on a drive.
Limitations and what the numbers cannot tell you
Unit conversions describe capacity, not usable performance. Two drives with identical nominal capacity can differ in real-world speed, endurance, and reliability because of controller design, flash type, and interface. The KB-versus-MB question tells you nothing about those qualities. Similarly, a file's reported size does not predict how long it takes to transfer, because transfer time depends on connection speed, latency, and the number of small files involved.
The 1,024 convention itself is a legacy artifact, and standards bodies have not fully harmonized display behavior across platforms. Any single rule you adopt will occasionally conflict with a specific device or app. The reliable approach is to check the convention in context rather than assume one universal definition. For ordinary consumers, the practical takeaway stays simple: a megabyte is bigger than a kilobyte, by a factor of 1,000 in strict SI terms or 1,024 in binary terms, and good decisions rarely hinge on the 2.4 percent difference.