Let's say I have 999,999,997 bits/s of data-transfer rate and I want to display it in a human-readable way by converting it to the largest possible unit with two decimal places.

Would it be best to display it as:

  1. | 1.00 Mbit/s |
  2. | 0.99 Mbit/s |
  3. | 1000.00 Kbit/s |
  4. | 999.99 Kbit/s |

Interestingly, the first form might in rare cases lead to confusing situations in my applications because I allow the user to create filters matching data, and these filter can be for example in the form of a range with units in it, e.g. 10Mb-1Gb or 1Mb-100Mb. So theoretically the situation might occur where 1.00 Mbit/s is displayed but not matched by latter filter.


Be Consistent

The problem with rounding is ambiguity. You've identified this problem with your example of non-matching with filters.

To solve this problem, you could always round your numbers in the same direction and indicate that to the user. For example, always round down (i.e., floor) and display 999,999,997 bits/s as "Throughput greater than 0.99 Mbit/s" or the maybe better "Throughput not less than 0.99 Mbit/s".

To go the other way and display "Throughput less than 1 Mbit/s" would probably not give the user a good feeling, since I presume your users by and large would prefer to have more throughput rather than less, but in other situations perhaps always rounding up and saying less than would provide a nicer perspective for the user (e.g., System is experiencing (less/not greater) than 100 faults/second).

  • In a table row I can't use such long texts but I could maybe display it in the column header… 🤔. – phk Oct 10 at 14:41
  • Yeah, I'd probably prefix the table with like "Throughput not less than" and then use the floor'd number or else just put >=0.99Mbit/s in the table cell. – sintax Oct 10 at 15:20

In such a case, use ≈ notation to indicate that the value is close to the displayed if this information is important to the user.

|   ≈1.00 Mbit/s |
|    0.99 Mbit/s |
| 1000.00 Kbit/s |
|  999.99 Kbit/s |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.