I speculate that this is due to storage manufacturers using the SI decimal prefixes near-universally.
Further on in the manpage (assuming GNU
SIZE is an integer and optional unit (example: 10M is 10*1024*1024).
Units are K, M, G, T, P, E, Z, Y (powers of 1024) or KB, MB, ... (pow‐
ers of 1000).
So 1K is 1024.
In another GNU tool,
dd, this bug discussion provides some insight:
I recall considering this when I added this kind of diagnostic to GNU dd back in 2004, and going with powers-of-1000 abbreviations because secondary storage devices are normally measured that way. For this reason, I expect many users will prefer powers-of-1000 here. This is particularly true for transfer rates: it's rare to see "GiB/s" in real-world prose.
The commit which added this feature to
df in 1997 only says what, and not why.