kB vs KiB Converter — Why 1 TB Shows as 931 GB
kB vs KiB Converter — Why 1 TB Shows as 931 GB
Decimal kB, MB, GB, TB against binary KiB, MiB, GiB, TiB, with bits in the same ladder and a transfer time. A 1 TB drive is 931.32 GiB — and Windows prints that number labelled “GB”, which is the whole of the confusion.
Bytes, bits, and the 1024-against-1000 question
one terabyte — the drive on the shelf
Two definitions, nothing more
KiB = 2¹⁰ = 1024 B · MiB = 2²⁰ B · GiB = 2³⁰ B · TiB = 2⁴⁰ B
1 byte = 8 bits · time = size ÷ speed
- kB, MB, GB, TB
- the SI decimal prefixes, powers of 1000. What drive makers and network operators use
- KiB, MiB, GiB, TiB
- the IEC binary prefixes, powers of 1024, from IEC 80000-13. What operating systems and RAM use
- bit
- an eighth of a byte. Line speeds are in bits per second; file sizes are in bytes
Worked example
one terabyte — the drive on the shelf
A 1 TB drive is 1,000,000,000,000 bytes, because drive makers use the SI prefixes correctly: tera is 10¹²
Windows counts in gibibytes: 10¹² ÷ 1024³ = 931.3226 — and prints that number labelled “GB”
So the “missing” 68.7 units are not missing at all. The drive is 931.32 GiB and 1,000 GB at the same time, and both statements are exact
In tebibytes it is 0.9095 TiB, which is where the 9.95% figure comes from: 1024⁴/10¹² = 1.099512
At 100 Mbit/s — 12.5 MB/s — copying it takes 80,000 seconds, or 22.22 hours. Divide by 100 million instead of 12.5 million and you get 2.78 hours, which is the bit/byte error in one line
The two ladders, and the gap that compounds
| Decimal (SI) | Bytes | Binary (IEC 80000-13) | Bytes | Binary is larger by (%) | So a “1 decimal unit” device shows as |
|---|---|---|---|---|---|
| kB (kilobyte) | 1,000 | KiB (kibibyte) | 1,024 | 2.4000 | 0.976563 |
| MB (megabyte) | 1,000,000 | MiB (mebibyte) | 1,048,576 | 4.8576 | 0.953674 |
| GB (gigabyte) | 1,000,000,000 | GiB (gibibyte) | 1,073,741,824 | 7.3742 | 0.931323 |
| TB (terabyte) | 1,000,000,000,000 | TiB (tebibyte) | 1,099,511,627,776 | 9.9512 | 0.909495 |
| PB (petabyte) | 1,000,000,000,000,000 | PiB (pebibyte) | 1,125,899,906,842,624 | 12.5900 | 0.888178 |
| EB (exabyte) | 1,000,000,000,000,000,000 | EiB (exbibyte) | 1,152,921,504,606,846,976 | 15.2922 | 0.867362 |
Which convention each system uses, and what it calls it
| Where | Counts in | Prints | Consequence |
|---|---|---|---|
| Hard drive and SSD capacity on the box | 1000s | GB, TB — correctly | A 1 TB drive is 10¹² bytes. This is the honest end of the chain |
| Windows Explorer and Properties | 1024s | “KB”, “MB”, “GB”, “TB” — the SI symbols | THIS IS THE MISLABELLING. A 1 TB drive shows as 931 “GB”, which is really 931.32 GiB. Wikipedia’s worked case is a 400 GB drive displaying as “372 GB”, and 400×10⁹/2³⁰ is 372.53 |
| macOS, since 10.6 Snow Leopard (2009) | 1000s | GB, TB | Apple changed it deliberately, “as commonly used by hard disk manufacturers”. So the same drive reads ~1 TB on a Mac and 931 GB on a PC, and neither is broken |
| Linux: df -h, du -h, ls -lh | 1024s | K, M, G, T | Correct in substance, ambiguous in symbol — the same letters as the decimal units. df -H or –si switches to 1000s and prints the SAME letters |
| Linux: a SIZE argument like -BK or 10K | 1024s | K | And the convention inverts: on the command line K means 1024 while KB means 1000, which is the opposite of the SI rule |
| RAM, DIMM and cache sizes | 1024s | GB (JEDEC usage) | Always binary, and for a real reason: memory is addressed by binary address lines, so its natural sizes ARE powers of two. A 16 GB module is 16 GiB |
| Network throughput, ISP line speeds | 1000s | Mbit/s, Gbit/s | Decimal AND in bits, so an eighth on top of the prefix question. 100 Mbit/s is 12.5 MB/s at best |
| Optical media: the 1.44 MB floppy | both at once | “1.44 MB” | A 1,474,560-byte disk: 1440 KiB, quoted as 1.44 “MB” by dividing by 1024 once and by 1000 once. There is no defensible unit in which that disk is 1.44 of anything |
Bits and bytes: the second factor of eight
| Quoted | In bits per second | In bytes per second | Time for 1 GB (10⁹ B) | Time for 1 TB |
|---|---|---|---|---|
| 10 Mbit/s | 10,000,000 | 1,250,000 | 800.0 s | 222.22 h |
| 100 Mbit/s | 100,000,000 | 12,500,000 | 80.0 s | 22.22 h |
| 1 Gbit/s | 1,000,000,000 | 125,000,000 | 8.0 s | 2.22 h |
| 40 Mbit/s | 40,000,000 | 5,000,000 | 200.0 s | 55.56 h |
| 500 Mbit/s | 500,000,000 | 62,500,000 | 16.0 s | 4.44 h |
Nothing is missing from your drive
A 1 TB drive shows as 931 GB because two different units are both called “GB”, and Windows prints the wrong one of the two names. Nothing is missing. The drive holds 1,000,000,000,000 bytes, exactly as advertised, because drive makers use the SI prefixes properly: kilo is 1000, mega is 10⁶, giga is 10⁹, tera is 10¹². Windows counts in powers of 1024 instead — 1024, 1024², 1024³, 1024⁴ — because that is the natural unit for addressing memory. Divide 10¹² by 1024³ and you get 931.3226. That number is correct. Its name is gibibytes. Explorer writes “GB”.
The names exist and have done since 1999. IEC 60027-2 Amendment 2 introduced kibi, mebi, gibi and tebi with the symbols Ki, Mi, Gi, Ti; the definitions now live in IEC 80000-13, whose current edition is 2.0, published on 11 February 2025 and replacing the 2008 edition. NIST publishes the table openly: KiB = 2¹⁰ = 1024 bytes, MiB = 2²⁰, GiB = 2³⁰, TiB = 2⁴⁰. The standard is two lines long and there is nothing to argue about. The reason nobody uses the names is that the habit of saying “kilobyte” for 1024 bytes is forty years older than the fix.
The gap compounds, which is why the question gets asked about terabyte drives and not about kilobytes. Each step multiplies the discrepancy by 1.024, so it is 2.4% at kilo, 4.86% at mega, 7.37% at giga and 9.95% at tera. A 1 KB file shown as 1024 bytes upsets nobody; a 69-gigabyte hole in a 1 TB drive gets a support ticket. It is the same 2.4% four times over.
Where each convention is actually used, and why. Drive capacity is decimal, and has been since the beginning. RAM is always binary, and this one is not a convention but a consequence: memory is addressed by binary address lines, so a chip’s capacity is necessarily a power of two, and a 16 GB module really is 16 GiB. File sizes as shown by the operating system are usually binary — Windows always, Linux by default, macOS decimal since Snow Leopard in 2009, which is why the same drive reads differently on a Mac and a PC with neither being wrong. And network throughput is decimal AND in bits, so an extra factor of eight sits on top of everything else: a 100 Mbit/s line is 12.5 MB/s at the absolute best. That factor of eight is a bigger error than the 1024-against-1000 question by a wide margin, and this page handles both in the same dropdown so you can see them together.
A word about the Linux case, because it is subtler than either. GNU coreutils gives df -h as “powers of 1024” and df -H or --si as “powers of 1000” — and prints the same letters K, M, G, T for both. So the letter alone never tells you which you are looking at; the flag does. Worse, inside a SIZE argument the convention flips: the manual says units are “K,M,G,T,P,E,Z,Y,R,Q (powers of 1024) or KB,MB,… (powers of 1000)”, so on the command line 10K is 10240 bytes and 10KB is 10000. That is exactly backwards from the SI rule, and it is documented behaviour rather than a bug.
What this page does. Eighteen units in one ladder, bits and bytes together, decimal and binary side by side, and a transfer time so that the bit/byte factor has somewhere to show itself. Every factor is a definition — 1000ⁿ or 1024ⁿ — so there is no table to disagree with and nothing to be approximately right about. For the other kind of number that looks like one thing and is another, see the aspect ratio calculator, where “21:9” turns out to be three different shapes, and the screen size and viewing distance calculator, where a diagonal turns out not to be a size. For fractions of an inch written as decimals, the inch fraction converter.
Frequently asked questions
Why does my 1 TB drive show as 931 GB?
Because the drive maker counts in 1000s and your operating system counts in 1024s, and both call the result “GB”. 10¹² bytes divided by 1024³ is 931.32, so the drive is 931.32 gibibytes — and Windows prints that number with a “GB” label. Nothing has been lost. Formatting and the filesystem’s own metadata do take a little real space on top, but that is a fraction of a per cent, not the 6.9% the naming collision accounts for.
What is the difference between KB and KiB?
kB is 1000 bytes; KiB is 1024 bytes. The binary prefixes — kibi, mebi, gibi, tebi, with symbols Ki, Mi, Gi, Ti — were standardised in 1999 and are defined in IEC 80000-13, currently edition 2.0 of February 2025. NIST publishes the table. The difference is 2.4% at the kilo step and it compounds to 10.0% by the terabyte.
Is 1 GB 1000 MB or 1024 MB?
1 GB is 1000 MB. 1 GiB is 1024 MiB. If someone says 1024 MB they mean 1 GiB and are using the older informal convention. The practical rule: if the number came off a box or a network bill it is decimal, and if it came out of Windows, a Linux -h flag or a RAM specification it is binary.
Do macOS and Linux do the same thing as Windows?
No, and they do not agree with each other either. macOS has used decimal since Mac OS X 10.6 Snow Leopard in 2009 — Apple’s own note says prefixes are “used in strictly decimal meaning … as commonly used by hard disk manufacturers” — so a 1 TB drive reads about 1 TB on a Mac and 931 GB on a PC. Linux tools default to 1024s with the letters K, M, G, and switch to 1000s with the same letters if you pass -H or –si.
Why is my 100 Mbit/s broadband only giving 12 MB/s?
Because it is quoted in bits and your download shows bytes, and there are 8 bits in a byte. 100 Mbit/s is 12.5 MB/s at the theoretical maximum; 11.93 MB/s or so is what is left after Ethernet framing and TCP/IP headers, and a shared line or a slow disk takes more. That factor of eight is a much bigger discrepancy than the 1024-against-1000 one, and it hides in a single capital letter: Mb against MB.
Is RAM measured in binary or decimal?
Always binary, and for a physical reason rather than a convention: memory is addressed by binary address lines, so a memory chip’s capacity is necessarily a power of two. A “16 GB” DIMM holds 16 × 1024³ bytes — 17,179,869,184 — so it is 16 GiB and also about 17.2 decimal GB. Drive capacity has no such constraint, which is why the two industries diverged.
How long does 1 TB take to transfer?
At 100 Mbit/s, 80,000 seconds — 22.22 hours — at the theoretical maximum, and longer in practice. At 1 Gbit/s it is 17.78 hours. Get the unit right first: if you divide 10¹² bytes by 100 million instead of 12.5 million you will predict 2.78 hours and be wrong by a factor of eight.
Why was the 1.44 MB floppy disk neither 1.44 MB nor 1.44 MiB?
Because its size was computed by dividing by 1024 once and by 1000 once. The disk holds 1,474,560 bytes, which is 1440 KiB; dividing 1440 by 1000 gives “1.44 MB”. In decimal megabytes it is 1.47 MB and in mebibytes 1.41 MiB. It is the one case where the two conventions were mixed inside a single number, and the unit it produced does not exist.
Related calculators
References
- IEC 80000-13:2025, Quantities and units – Part 13: Information science and technology, edition 2.0, published 11 February 2025. It replaced IEC 80000-13:2008, which in turn cancelled and replaced subclauses 3.8 and 3.9 of IEC 60027-2:2005 — that amendment, in 1999, is where the binary prefixes were first standardised. The standard itself is paywalled and was NOT read; its definitions are two lines and are taken from NIST below, and the publication and withdrawal dates above are from the IEC webstore’s own record, which was fetched.
- National Institute of Standards and Technology. Definitions of the SI units: The binary prefixes (physics.nist.gov/cuu). Fetched. Gives kibi Ki = 210, mebi Mi = 220, gibi Gi = 230, tebi Ti = 240, pebi Pi and exbi Ei, and the worked distinction “1 Kibit = 210 bit = 1024 bit” against “1 kbit = 103 bit = 1000 bit”. It also says why they exist: “computer professionals noticed that 210 was very nearly equal to 1000 and started using the SI prefix kilo to mean 1024”.
- GNU coreutils, df(1) and du(1) manual pages (man7.org). “-h, –human-readable: print sizes in powers of 1024 (e.g., 1023M)” against “-H, –si: print sizes in powers of 1000 (e.g., 1.1G)” — the same letter for both. And in a SIZE argument the convention inverts: “Units are K,M,G,T,P,E,Z,Y,R,Q (powers of 1024) or KB,MB,… (powers of 1000)”, so on the command line K is 1024 and KB is 1000.
- Apple, Mac OS X 10.6 Snow Leopard (released 28 August 2009). “Prefixes for bytes are now used in strictly decimal meaning (as opposed to their binary meaning) when describing disk space, such that an indicated file size of 1 MB corresponds to 1 million bytes, as commonly used by hard disk manufacturers.” Apple’s own release notes are no longer served; this is the Wikipedia article on Snow Leopard, which cites a macprime.ch report of 19 June 2009.
- Wikipedia, Gigabyte. The source for what Windows shows: a 400 GB drive of 400,000,000,000 bytes “displays as 372 GB instead of 372 GiB”. That figure is 400×109/230 = 372.53, so the number is a gibibyte count wearing a gigabyte label, which is the whole of the 931 GB question.
