Tolerance Stack-Up Analyzer

Stack dimensions (± tolerances)

Every dimension is assumed to act along the same axis. The ± tolerance is taken as absolute. All results are in the same unit as the inputs.

Result

Stack nominal85.000
Worst-case minimum84.400
Worst-case maximum85.600
Worst-case spread± 0.600
RSS minimum84.626
RSS maximum85.374
RSS spread± 0.374
RSS vs worst-case0.226 narrower (37.6%)

Worst case adds every tolerance; RSS takes the square root of the sum of the squares, which is realistic only when the parts are statistically independent.

What is Tolerance Stack-Up Analyzer

Tolerance Stack-Up Analyzer adds up a linear chain of dimensions along one axis and reports the two ways a stack can be evaluated. The worst-case method adds every tolerance to the nominal sum, giving the absolute minimum and maximum the stack can reach when every part is at its extreme. The statistical method — root sum of squares, or RSS — takes the square root of the sum of the squared tolerances, which is the realistic spread when the part variations are independent.
Each row holds a part name, a nominal dimension and a symmetric plus-or-minus tolerance. The tool reports the stack nominal, the worst-case minimum and maximum with the total spread, the RSS minimum and maximum with its spread, and the RSS saving — how much narrower the statistical prediction is than the worst case, in units and as a percentage. The default example stacks a 50 millimetre housing, a 10 millimetre spacer and a 25 millimetre shaft.

How to Use Tolerance Stack-Up Analyzer

  1. Step 1: Enter each dimension in the chain as a row: a part name, a nominal value and a symmetric ± tolerance. All values are in the same unit — the tool does not label units, so keep them consistent.
  2. Step 2: Press + Add dimension for every link in the chain, and remove a row with its ✕ button or − Remove last when the list is too long.
  3. Step 3: Read the worst-case block: the nominal stack, the minimum and maximum, and the ± spread.
  4. Step 4: Read the RSS block: the statistical minimum and maximum and its spread.
  5. Step 5: Compare the two spreads with the RSS saving row — the default stack of 50±0.3, 10±0.1 and 25±0.2 must show a nominal of 85, worst case 84.4 to 85.6, and RSS 84.626 to 85.374.
The worst case is the conservative answer: if the assembly must close under every possible combination of parts, design to it. The RSS answer is the economic one — it is what quality departments actually observe when parts come from stable processes — and the saving row tells you how much tolerance budget the statistical view frees up.

Why Use Tolerance Stack-Up Analyzer

Every assembly that closes on paper only because the paper added the nominal dimensions is one field failure away from being wrong. Stack analysis is how a designer knows whether a bearing fits, a cover seals, or a pin engages over the full production range — and doing it by hand is exactly the kind of repeated arithmetic where a single transposed tolerance poisons the answer with no error message.
The tool's real value is the comparison it forces: worst-case spread versus RSS spread tells you whether you are over-constraining the parts. When the worst case fails the requirement but the RSS case passes comfortably, that is the classic signal for a statistical tolerance — parts are cheap, the assembly is safe, and only the combination of every worst-case part at once would break it.

Privacy & Security

This tool runs entirely in your browser — no data ever leaves your device. There is no server round-trip, no upload, no logging, and no account required. Your input is processed locally using client-side JavaScript and is never stored, transmitted, or accessible to anyone else. When you close the tab, everything disappears.

Frequently Asked Questions

Why does the default stack give RSS limits of 84.626 and 85.374?

The nominal sum of 50, 10 and 25 is 85. The RSS spread is the square root of 0.3 squared plus 0.1 squared plus 0.2 squared, which works out to the square root of 0.14, or about 0.374. Adding and subtracting that from 85 gives 84.626 and 85.374 — noticeably tighter than the worst-case spread of 0.6, which is the whole point of the statistical method.

When is the RSS method safe to use?

RSS assumes the part dimensions are statistically independent — that a long housing is no more likely to appear with a long spacer. That holds for parts from different processes or different suppliers, and breaks when parts share a cause, like one batch cut from the same bar or a single fixture drifting. When in doubt, or when a failure means scrapping the assembly, design to the worst case instead.

Does the tool handle asymmetric tolerances?

No — each row takes a symmetric plus-or-minus value. An asymmetric tolerance such as plus 0.2 minus 0.1 must first be converted to its symmetric equivalent: shift the nominal by the mean shift and keep the half-width. For a tolerance of plus 0.2 minus 0.1, use the nominal plus 0.05 with a tolerance of 0.15. That conversion is exact for both the worst-case and RSS sums.

How do I include a dimension that acts in the opposite direction?

Enter its nominal as negative — the sum handles direction by sign. A clearance that subtracts 2 millimetres from the stack is entered as a nominal of minus 2 with its positive tolerance. The tolerance itself is always taken as absolute, so a minus 2 plus-or-minus 0.1 row contributes minus 2 to the nominal and 0.1 to both spread calculations.