Documentation

Percentage rounding in reports

Every percentage MX8 Labs displays is a rounded version of an underlying value carrying full precision. Rounding each cell on its own would routinely produce columns that total 99% or 101%, so MX8 Labs uses the largest remainder method wherever a set of percentages is exhaustive and should total 100%.

Rounding affects display only. Significance tests, margins of error, exports, and every downstream calculation run on the unrounded values.

How largest remainder works

Take the exact percentages, round each one down, then distribute whatever is left over to the categories with the largest fractional parts, one point each, until the total reaches 100%.

A single-select question with 1,000 respondents:

OptionCountExact %Rounded downFractionFinal
Option A33733.7%330.734%
Option B33333.3%330.333%
Option C33033.0%330.033%
Total1,000100%99100%

Rounding down gives 99%, so the single remaining point goes to Option A, which has the largest fraction at 0.7. The column totals 100% and each figure stays within half a point of its exact value.

Rounding each cell independently to the nearest whole number would give 34% + 33% + 33% here, but on other distributions it produces columns totalling 99% or 101%. Largest remainder removes that inconsistency without moving any single figure further from the truth.

Where it applies

Largest remainder needs a known total to reconcile to, so it applies wherever the categories are exhaustive and the set should sum to 100%:

  • Single-select frequency columns in crosstabs
  • Any other set of percentages covering all respondents in the base exactly once

It does not apply to multi-select questions. Respondents can choose more than one option, so the percentages legitimately add up to more than 100% and there is no total to reconcile to. Those cells are rounded individually.

The percent base determines the denominator before any rounding happens. Changing the base changes the exact percentages, and the rounding is then applied to that new set.

Two things this explains

Equal displayed percentages can differ underneath. Two cells both showing 33% may hold different underlying values — one may be 33.4% and the other 32.6%. This is why a crosstab sometimes flags one of two apparently identical cells as significant and not the other. The residual t-test uses the unrounded values and the expected value for that row or column, not the figure printed in the cell. See Interpreting crosstabs.

A category can round up while a larger fraction rounds down. Where several categories have identical fractional parts and there are fewer remaining points than tied categories, the allocation is resolved consistently rather than arbitrarily, so the same data always produces the same report.

Reproducing a figure by hand

If you are checking a reported percentage against a hand calculation, work from the counts and the percent base, and apply the rounding at the end rather than partway through. Rounding an intermediate value and then using it in a further calculation will diverge from the platform's figure, which carries full precision until the moment of display.

For exports that give you the underlying values directly, see Data exports.