In the sandisk case, at least from what I understand, it that 16Gb used to mean like a 17Gb module, with 1Gb used for system functions, now it's a 16Gb module with 1Gb used for system functions
Phones are actually worse in that a mere OS update can decrease the amount of free space, which is something that presumably does not happen with USB drive firmware updates.
Still, a 16GiB module would be 17 billion bytes. No need to combine different sizes. Unless you're saying a single module would have a decimal capacity?
If you take a 16GiB module and sell it as 16 billion bytes then that gives you 7% overprovisioning. Overprovisioning 10% would give you a 15.4 billion byte drive. If you want 16GiB then it's a quantitative change of how much you lose. But if you go by their promise of 16 billion bytes then it's a qualitative change that they broke the promise.
As the user I care about how much storage I can use, and how durable it is. If the storage is used by the OS it isn't helpful to me, other than the "runs iOS" feature point.
(This does get slightly complicated if the OS space changes with updates, what number is best to explain to the user in this case. It isn't entirely clear but I can ensure you that if an OS update takes 30GiB more space users aren't going to care that that storage is still in their phone)
Damn man, don't give them ideas.