How many megabytes in a gigabyte: The 1,000 vs 1,024 mess explained

How many megabytes in a gigabyte: The 1,000 vs 1,024 mess explained

You’re staring at your phone, trying to download a 2GB update, but your settings menu says you only have 1,900MB left. You do the quick mental math. It doesn't add up. Why is your phone lying to you? Honestly, it’s because the tech industry has been using two different languages for the same thing for decades, and they’ve never bothered to fix it for the rest of us.

If you want the short, "I'm at the store and need to know right now" answer: there are 1,024 megabytes in a gigabyte. But wait.

If you look at the back of a Western Digital hard drive box or a SanDisk SD card, they’ll tell you there are exactly 1,000 megabytes in a gigabyte. Both are technically right. Both are also incredibly annoying. This isn't just a math quirk; it’s a fundamental disagreement between how engineers think and how marketers sell products. This confusion is exactly why that 512GB iPhone you just bought seems to have "lost" about 40GB the second you took it out of the box.

The battle between base-10 and base-2

Most of us grew up learning the metric system. Kilo means a thousand. Mega means a million. Giga means a billion. In the world of physics and standard weights—like grams or meters—this is absolute. Scientists call this Base-10. It’s clean. It’s easy. It’s how humans with ten fingers like to count.

Computers are different.

They don't have fingers. They have transistors that are either "on" or "off." This binary reality means they count in Base-2. Instead of powers of ten ($10^1, 10^2, 10^3$), they use powers of two ($2^{10}, 2^{20}, 2^{30}$).

When a computer scientist looks at a "kilo," they aren't looking for 1,000. They are looking for the power of two that gets closest to 1,000. That number is $2^{10}$, which equals 1,024.

So, for a long time, the industry just shrugged and said, "Close enough." They started calling 1,024 bytes a kilobyte. Then 1,024 kilobytes became a megabyte. And 1,024 megabytes became a gigabyte.

Why your hard drive looks smaller than advertised

Imagine you’re a marketing executive at a storage company in the 90s. You want to sell a "1 Gigabyte" drive. You have two choices. You can build a drive that holds 1,073,741,824 bytes (the binary definition) or one that holds exactly 1,000,000,000 bytes (the decimal definition).

The second option is cheaper to manufacture.

It also lets you put "1GB" on the box because, technically, "Giga" means a billion in the International System of Units (SI).

However, when you plug that drive into a Windows PC, the operating system talks in binary. Windows takes that 1,000,000,000 bytes and divides it by 1,024, then 1,024 again, then 1,024 again. Suddenly, your "1GB" drive shows up as roughly 931MB. You feel cheated. You aren't actually losing space—the data is there—but the ruler used to measure it has different markings.

🔗 Read more: Accuracy Explained: Why Getting it Right is Harder Than You Think

Real-world conversion breakdown

If we use the binary standard (JEDEC), which is what your RAM and Windows OS use:

  • 1 Kilobyte (KB) = 1,024 Bytes
  • 1 Megabyte (MB) = 1,024 Kilobytes
  • 1 Gigabyte (GB) = 1,024 Megabytes
  • 1 Terabyte (TB) = 1,024 Gigabytes

If we use the decimal standard (SI), which is what drive manufacturers and macOS (since Snow Leopard) use:

  • 1 Kilobyte (KB) = 1,000 Bytes
  • 1 Megabyte (MB) = 1,000 Kilobytes
  • 1 Gigabyte (GB) = 1,000 Megabytes
  • 1 Terabyte (TB) = 1,000 Gigabytes

Meet the Mebibyte: The word nobody uses

Back in 1998, the International Electrotechnical Commission (IEC) tried to fix this mess. They realized that using "Mega" to mean two different things was a disaster for technical accuracy. They proposed a new set of prefixes.

Instead of Megabyte, we were supposed to use Mebibyte (MiB) for the binary version (1,024). Instead of Gigabyte, we were supposed to use Gibibyte (GiB).

  • Megabyte (MB): 1,000,000 bytes
  • Mebibyte (MiB): 1,048,576 bytes

It was a noble effort. It also failed miserably in the public eye. Unless you are a Linux power user or a high-level network engineer, you’ve probably never said the word "Gibibyte" in your life. It sounds like something a baby would say. So, the world just kept using "Gigabyte" for both, and the confusion stayed.

RAM is different from Storage

Here is where it gets even more confusing. While hard drive makers love the 1,000-count, RAM (Memory) manufacturers must use the 1,024-count.

This is because of how memory chips are physically wired. RAM is built in blocks that naturally double. You have 8GB, 16GB, or 32GB of RAM. In this specific case, 8GB of RAM is always $8 \times 1,024$ megabytes. You will never buy an 8GB stick of RAM and find out it’s actually 7.4GB.

Storage is the wild west. RAM is the law.

Why this actually matters for your data cap

If you’re on a limited mobile data plan, you need to know how your carrier counts. Most ISPs and mobile carriers (like Verizon or AT&T) count in decimal (1,000MB = 1GB). They do this because it makes your data usage look slightly higher, which benefits them.

Let's look at 4K video. A one-minute 4K video at 60fps might be around 400MB.

If you have a 10GB data limit:
In the "Marketing/Decimal" world, that's 10,000MB. You can fit 25 of those videos.
In the "Computer/Binary" world, that's 10,240MB. You get a little extra breathing room.

Most software downloads, like those on Steam or the PlayStation Store, show you the binary size. If a game says it’s 50GB, it’s actually looking for $50 \times 1,024$ megabytes of space. If your "500GB" SSD only has 45GB of free space showing in Windows, that game isn't going to fit, even though 45 is "close" to 50.

How to calculate your actual space

If you want to know how much space you'll actually see on a Windows computer when you buy a drive, there is a simple "rule of thumb" multiplier.

Take the advertised capacity and multiply it by 0.931.

✨ Don't miss: Philips Norelco OneBlade: Why It’s Kinda the Best (and Worst) Grooming Tool You’ll Buy

  • A 500GB drive: $500 \times 0.931 = 465.5GB$
  • A 1TB (1,000GB) drive: $1000 \times 0.931 = 931GB$
  • A 2TB drive: $2000 \times 0.931 = 1862GB$

The larger the drive, the more "missing" space you’ll notice. By the time you get to massive server arrays in the petabyte range, the difference between the two standards is huge—hundreds of terabytes of difference.

Acknowledging the "Hidden" Storage

To be fair to the manufacturers, it isn't all a marketing trick.

Even if they used the 1,024-count, your drive would still show less than the full amount. This is because of File Systems. When you format a drive (NTFS for Windows, APFS for Mac), the drive needs to create a map of where all the data is stored. This map, or "Index," takes up space.

Then there is Over-provisioning. SSDs are smart. They know that flash memory eventually wears out. To extend the life of your drive, the manufacturer hides a small percentage of the storage. When one part of the drive dies, the controller swaps in some of that "hidden" space so you don't lose data. You can't see it, you can't use it, but it's working to keep your photos safe.

Actionable insights for your next purchase

Stop relying on the number on the front of the box. It’s a suggestion, not a promise.

If you are building a PC or buying an external drive for a specific project—like a 400GB photo library—never buy the capacity that matches your data exactly. Always overhead. If you have 900GB of data, a 1TB drive is actually too small once you factor in the 0.931 conversion and the file system overhead. You'll be at 99% capacity on day one, which slows down your drive.

Go for the 2TB.

Always check your OS settings. If you’re on a Mac, you’re seeing the decimal version (1,000MB = 1GB), which matches the box. If you’re on Windows, you’re seeing the binary version (1,024MB = 1GB). If you move a drive between the two, the files haven't changed size, but the numbers will look different. Don't panic.

Lastly, when you’re checking your internet speed, remember that Megabits (Mbps) and Megabytes (MBps) are totally different things—there are 8 bits in a single byte. But that’s a headache for another day. For now, just remember: your computer wants 1,024, but the guy selling it to you wants 1,000.

Plan accordingly and always leave yourself a 10% buffer of "empty" space. Your hardware will thank you by not crashing when you're in the middle of a project.