Skip to content
Bytearium

No ads or affiliate links active

IT fundamentals

GB or GiB, Mbit/s or MB/s: why numbers differ

Why a 1 TB SSD shows 931 GB and 100 Mbit/s give at most 12.5 MB/s: decimal vs binary prefixes, bits vs bytes, and what Windows, macOS and Linux display.

Your new 1 TB SSD shows 931 GB in Windows, the 2 TB drive only 1.81 TB, and the 100 Mbit/s line never gets past 12.5 MB/s. Nothing went missing: the box, the operating system and the speed test simply measure with different rulers.

The short answer

Why does a 1 TB SSD show only 931 GB? Drive makers count in powers of ten, so 1 TB is 1,000,000,000,000 bytes, while Windows counts in powers of two (1,073,741,824 bytes per "GB") and still labels the result GB [10][12]. The correct name for that binary unit is gibibyte, GiB [1], and 1 TB is 931.32 GiB (our calculation). Why does a 100 Mbit/s line deliver at most 12.5 MB/s? Line speeds count bits, file sizes count bytes, and one byte has eight bits [1]. Protocol overhead and binary display shave off a little more, so 11 to 12 "MB/s" in a download window is normal on such a line (our calculation).

How it works

  1. Two prefix families, both official. The SI prefixes kilo, mega, giga and tera stand for exactly 10^3, 10^6, 10^9 and 10^12. The BIPM, which maintains the International System of Units, states that SI prefixes refer strictly to powers of ten and must not be used for powers of two: a kilobit is 1000 bits, not 1024 [3]. For powers of two, the IEC approved its own prefixes in December 1998: kibi (Ki), mebi (Mi), gibi (Gi), tebi (Ti), pebi (Pi) and exbi (Ei) [1]. A kibibyte is 1024 bytes, a mebibyte 1,048,576 bytes, a gibibyte 1,073,741,824 bytes and a tebibyte 1,099,511,627,776 bytes [1][6]. Today the binary prefixes are part of IEC 80000-13; its second edition of 11 Feb 2025 replaced the 2008 edition and added new binary prefixes [2]. One more trap hides in a single letter: the binary prefix uses a capital K (KiB), the SI kilo a lowercase k (kB), and the GNU coreutils manual notes that tradition and POSIX still use "k" to mean KiB [6].
  2. Who counts how. Hard drive and SSD makers count in decimal. Seagate's product manual defines one gigabyte as one billion bytes and one terabyte as one trillion bytes [11]. Samsung says its SSDs follow the IDEMA standard and express 1 GB as 1,000 MB, while the operating system calculates with 1,024 MB [13]. Memory chips are the exception: JEDEC, the standards body for semiconductor memory, defines kilo (K) as 1024 and mega (M) as 1,048,576 for the capacity of semiconductor storage [4][5]. A 16 GB RAM kit therefore holds 16 GiB, or 17,179,869,184 bytes (our calculation). JEDEC itself quotes the standard IEEE/ASTM SI 10, which calls this practice confusing and deprecated, and points to the IEC prefixes [4]. Data rates, on the other hand, are decimal: in JEDEC's own example, 1 kb/s is 1000 bits per second [5]. The 1.44 MB floppy disk even mixes both worlds. Its "megabyte" is 1,024,000 bytes according to JEDEC [4], so the disk holds 1,474,560 bytes, which is 1.47 MB or 1.41 MiB (our calculation).
  3. What the operating systems show. Seagate names Windows among the programs that use the binary system, along with FDISK, the system BIOS and older versions of macOS [10]. Its table shows how Windows displays a 500 GB drive as 465 GB, a 1 TB drive as 931 GB and a 5 TB drive as 4.54 TB [10]. Microsoft's own documentation for the MBR2GPT tool lists a Seagate ST1000DM003, a 1 TB drive, as 931.51 GB in PowerShell and as 931 GB in DiskPart [12]. Apple names iOS 10 and earlier and OS X Leopard and earlier as systems that report capacity in binary [9], and Seagate's table lists the macOS figures in decimal [10]. On Linux it depends on the tool: df -h counts in powers of 1024, df --si in powers of 1000 [6]. The manual says the SI variant appends a "B", yet in our test with GNU coreutils 9.4 both wrote a bare "G" (252G and 271G for the same file system), so the option, not the letter, tells you the unit. lsblk also uses powers of 1024 and shortens "KiB" and "MiB" to "K" and "M" [7]. The GLib library of the GNOME desktop formats sizes with base 1000 by default [8].
  4. The gap grows with every step. Each binary step multiplies by 1024 instead of 1000, so the difference compounds: a KiB is 2.40 % larger than a kB, a MiB 4.86 % larger than an MB, a GiB 7.37 % larger than a GB and a TiB 9.95 % larger than a TB (our calculation). Seen from the drive label, a capacity in TB shows up 9.05 % smaller as TiB, before a single file is stored.
  5. Cut off, not rounded. Seagate's examples drop digits instead of rounding them: 5,000,000,000,000 bytes are 4.5475 TiB, and the table says 4.54 TB, not 4.55 [10]. 500 GB are 465.66 GiB and appear as 465 GB (our calculation). The table also lists a 2 TB drive, 1.8190 TiB by our calculation, as 1.81 TB rather than 1.82 TB [10]. On top of that, partitions and the file system need space of their own; Apple notes that the actual formatted capacity is less than the figure on the box [9].
  6. Bits are not bytes. In Germany, the Bundesnetzagentur describes contracted internet speeds in Mbit/s, megabits per second [15]. One byte has eight bits [1], so 100 Mbit/s are at best 12.5 MB/s. Watch the letter case: JEDEC writes kb/s for kilobits per second [5], and B is the symbol for byte [1]. A program that counts in binary units turns the same 12.5 MB/s into 11.92 MiB/s, and if it labels that figure "MB/s", the line looks slower than it is (our calculation).
  7. Overhead takes a few percent. Every network packet carries headers. NetApp lists the pieces for Ethernet with TCP: 12 bytes inter-frame gap, 8 bytes preamble, 14 bytes Ethernet header, 4 bytes frame check sequence, 20 bytes IP header, 20 bytes TCP header and 12 bytes TCP options [16]. With the usual 1,500-byte packets, 1,448 of every 1,538 bytes on the wire are payload, which is 94.15 % (our calculation, not a measurement). On a gigabit link that leaves 117.69 MB/s; NetApp puts the practical figure without jumbo frames at around 116 MB/s [16]. DSL, cable and fibre lines use different framing, so treat these figures as a guide, not as a promise. To compare your fixed line with the contract, the Bundesnetzagentur offers its Breitbandmessung with a desktop app [14][15].

Quick reference: storage (our calculation, rounded to two or four decimals)

On the labelExact bytesBinary value
500 GB500,000,000,000465.66 GiB
1 TB1,000,000,000,000931.32 GiB
2 TB2,000,000,000,0001.8190 TiB
4 TB4,000,000,000,0003.6380 TiB
16 TB16,000,000,000,00014.5519 TiB
16 GB RAM (JEDEC)17,179,869,18416 GiB

Quick reference: speed (our calculation, payload share 94.15 %)

Line speedBest caseSame in MiB/sPayload over Ethernet
100 Mbit/s12.50 MB/s11.92 MiB/s11.77 MB/s
250 Mbit/s31.25 MB/s29.80 MiB/s29.42 MB/s
1 Gbit/s125.00 MB/s119.21 MiB/s117.69 MB/s

A worked example

We checked the 1 TB drive from Microsoft's documentation ourselves. Seagate's product manual lists 1,953,525,168 guaranteed sectors of 512 bytes for the ST1000DM003 [11]. We ran this short calculation with Python 3.13 on 25 Oct 2026:

size = 1_953_525_168 * 512   # Seagate ST1000DM003: guaranteed sectors x 512 bytes
print(size)                  # exact bytes
print(size / 1000**4)        # in TB (decimal)
print(size / 1024**3)        # in GiB (binary)
print(100_000_000 / 8 / 1000**2)   # 100 Mbit/s in MB/s
print(100_000_000 / 8 / 1024**2)   # 100 Mbit/s in MiB/s

The output was 1000204886016, 1.000204886016, 931.5133895874023, 12.5 and 11.920928955078125. So the drive holds 204,886,016 bytes more than 1 TB, and the label is honest. In binary units it holds 931.51 GiB, exactly the 931.51 GB that PowerShell shows in Microsoft's example [12]. Same bytes, different ruler. The line works the same way: a speed test result of 94 Mbit/s means 11.75 MB/s or 11.21 MiB/s. A 100 GB download needs at least 2 h 13 min 20 s at a full 100 Mbit/s, and about 2 h 22 min at 94.15 % payload (our calculation, not a measurement).

To look at your own drives, run Get-Disk | ft -Auto in PowerShell: it lists every disk with its total size and partition style [12]. On Linux, lsblk -b prints sizes in bytes [7], and df --si shows file systems in decimal units [6].

Checklist

  • Check whether a value says GB or GiB, and whether your tool counts in steps of 1000 or 1024.
  • Multiply a label in TB by 0.9095 to estimate the TiB value Windows will show, and a label in GB by 0.9313 for GiB.
  • Compare drives by exact bytes or sector counts from the datasheet, not by the rounded display.
  • Divide Mbit/s by 8 for MB/s, and by 8.389 for MiB/s.
  • Expect a few percent less in real downloads; on gigabit, around 116 to 118 MB/s is the ceiling.
  • Treat RAM as the exception: 16 GB of RAM means 16 GiB.
  • Use the Bundesnetzagentur's Breitbandmessung if you want to compare your fixed line with the contract.

Related pages: Understanding NVMe SSDs; Choosing NAS hard drives: seven checks; 2.5 GbE in the homelab: when it pays off; LAN, Wi-Fi or powerline: what lowers ping?; Watts, kWh, TDP and PSU ratings.

Primary sources

These sources are the basis of this page. That does not mean every claim was checked individually; whether a review record exists is shown above under “Status”. The interpretation and checklist are our own work.

There is no documented review record for this version yet. The text relies on the sources listed.

How this page was made: Bytearium creates these pages with the help of AI and is responsible for publishing them. AI can be wrong, so we show our sources and review status openly.

  1. NISTPrefixes for binary multiples
  2. IECIEC 80000-13:2025 Quantities and units – Part 13: Information science and technology
  3. BIPMThe International System of Units (SI Brochure), 9th edition, version 4.01
  4. JEDECmega (M) (as a prefix to units of semiconductor storage capacity)
  5. JEDECkilo (K) (as a prefix to units of semiconductor storage capacity)
  6. GNUGNU Coreutils manual – Block size
  7. util-linuxlsblk(8)
  8. GNOMEGLib – g_format_size
  9. AppleHow storage capacity is measured on Apple devices
  10. SeagateWhy does my hard drive report less capacity than indicated on the drive's label?
  11. SeagateDesktop HDD Product Manual, Rev. E
  12. Microsoft LearnMBR2GPT.EXE
  13. Samsung SemiconductorWhy is the displayed capacity of a Samsung SSD different from its actual capacity?
  14. BundesnetzagenturBreitbandmessung
  15. BundesnetzagenturNachweis Minderleistung leicht gemacht
  16. NetAppWhat is the theoretical maximum throughput of a Gigabit Ethernet interface?

This page has no ads and no affiliate links.