Why a 128GB card shows 119GB — and when it's actually fraud
- A 128GB card that reads 119GB is correct, not short: 128 decimal GB equals 119.2 GiB, and Windows shows GiB while labelling it GB.
- The same 119GB also appears on a fraudulent card whose controller fakes its capacity — the displayed number alone cannot tell honest from fake.
- Only a full write-and-verify (H2testw, F3, ValiDrive) on a trial batch reveals the real usable capacity.
- Judge a supplier on whether they publish measured usable capacity and let you verify a trial batch — not on whether the headline number is round.
A 128GB microSD card lands on your desk, you slot it into a Windows laptop to spot-check the batch, and the drive shows 119GB. If you've been burned before, the first thought is the right instinct: did the factory short me?
Almost always, no. 119GB is the expected number for an honest 128GB card, and you can prove it with arithmetic anyone can do on a phone. But there is a version of this where you really have been shorted — and on Windows it looks identical to the honest one. Telling the two apart is the part that actually protects your money.
The number isn't missing — it's in a different base
Flash makers rate capacity in decimal. One gigabyte means a flat 1,000,000,000 bytes (10⁹), which is how the SD Association and effectively every hard-drive and flash vendor have defined it for decades [1]. Windows measures the same card in binary. It counts in units of 1,073,741,824 bytes (2³⁰) — and then, this is the whole problem, it labels that unit "GB" instead of its correct name, "GiB" [2].
So do the division:
128,000,000,000 ÷ 1,073,741,824 = 119.2
Windows rounds that to 119GB. Nothing is missing. The card holds exactly what the label claims; the operating system is printing the count in a different base and using the wrong name for the unit. Put the same card in a Mac or an Android phone and it reads about 128GB, because those systems report in decimal [2].
That shortfall is a constant ~6.9% wherever a tool counts in binary GiB but writes the label "GB" — so it's predictable for every capacity:
| Rated (decimal) | Windows shows |
|---|---|
| 64 GB | 59.6 GB |
| 128 GB | 119 GB |
| 256 GB | 238 GB |
| 512 GB | 477 GB |
| 1 TB | 931 GB |
It stays ~6.9%, not more, because Windows reports in GiB at every size — a 1TB card reads ~931GB for the same reason a 128GB reads 119. (Decimal and binary prefixes drift about 2.4% further apart at each step, so the same card shown in TiB would read ~9% under — but Windows shows GB, so you see 6.9% [3].)
A little more goes to formatting
Every SD card above 32GB is an SDXC card, and the standard requires it to ship on the exFAT file system [1]. The file system itself needs room for its allocation tables, so after formatting you'll see a hair under 119GB free. That's normal too, and it's small.
The part you never see, and shouldn't
One more thing happens out of sight, and it's the neatest part. NAND dies come in binary capacities, so a "128GB" card is typically built from 128 GiB of raw flash — which is 137.4 GB in decimal. The rated 128 GB is what's left after the controller fences off the difference (on the order of 9 GB) as spare area to retire bad blocks and spread wear evenly. So that reserve isn't subtracted from your 128 — it's the gap between the binary silicon inside and the round decimal number on the label. You never see it, and you don't want to.
Now the version that costs money
A fake-capacity card is one whose controller has been reprogrammed to lie. It tells the host it's a 128GB card; the NAND behind it might be 32GB, or 8. Windows still shows about 119GB, because Windows believes whatever the controller reports. It looks exactly like the honest card above — same number, same packaging, and increasingly the same printed part code.
The deception only surfaces when you write past the real capacity. The card accepts the data, reports success, and silently overwrites or drops it. For a distributor that's the worst possible failure mode: it doesn't show up on your bench, it shows up months later in your customer's cameras, after you've been paid and the container has shipped. Through 2025 the industry tracked a clear surge in fake high-capacity cards with packaging good enough to pass a visual check [4].
How to actually tell them apart
You can't eyeball this, and you can't trust the capacity Windows prints, because both honest and fake cards print the same 119. The only reliable test is a full write-and-verify: write real data across the entire card and read it back. On Windows the standard tool is H2testw; on Mac and Linux it's F3 (Fight Flash Fraud); ValiDrive spot-checks large cards faster by probing sectors across the full reported range [5][6].
Do it on a trial batch before you commit to volume. Pull a sample, write-verify it end to end, confirm the usable bytes match, and cross-check the printed part number against the manufacturer's own listing while you're at it [4]. A reputable supplier expects this and gives you the window to do it; one who pushes for payment before you can test is telling you something.
The honest number is the measured one
This is why the figure worth comparing against is the measured usable capacity, not the rounded number on the label. It's the reason we publish the usable floor for every part we sell rather than the marketing round-up — our 16GB card, for instance, is documented at 14,903MB usable, measured, not estimated. If a supplier won't hand you that floor figure, and won't let you write-verify a trial batch before you pay, that reluctance is itself the answer.
Bottom line
119GB on a 128GB card is honesty doing its job: a decimal rating shown in a binary base. The dangerous card shows the same 119 and only betrays itself under a write test. So rate your supplier on whether they'll give you the measured floor and stand behind a trial batch — not on whether the headline number is round.
FAQ
Is a 128GB card that shows 119GB fake or short?
Why does my phone show 128GB but my PC shows 119GB?
How do I check a card's real usable capacity?
References
- SD Association — Capacity (SD/SDHC/SDXC/SDUC)
- NIST — Definitions of the SI units: The binary prefixes (see also ISO/IEC 80000-13)
- Communications of the ACM — SI and Binary Prefixes: Clearing the Confusion
- SanDisk / Western Digital — SD card specifications and authenticity guidance
- F3 — Fight Flash Fraud (open-source write-verify tool, Mac/Linux)
- GRC ValiDrive (sector-probe capacity checker, Windows)
- H2testw (write-verify capacity/speed test, Windows) — originally published by Heise/c't
We publish measured usable capacity and welcome trial-batch verification — automotive-grade, direct from the source factory.
Get a quote