Quick Answer
A tolerance stack-up analysis totals the variation of every dimension and geometric control between a datum and the feature that carries the requirement, showing whether a gap, clearance or assembled length still holds when each part is at its limit. Worst-case addition sums the contributors arithmetically; root-sum-square (RSS) adds them statistically, assuming independent, centered processes, and returns a tighter number. Monte Carlo simulation covers non-linear chains and mixed distributions.
Key Takeaways
- A stack-up answers one question: does the requirement still hold when every contributor sits at its limit?
- Worst case suits sealing and preload; RSS is a risk-based option for long chains of independent, centered processes.
- RSS is a probability statement and needs process data; reading tolerances as ±3σ understates risk when a process runs against a limit.
- Commonly omitted terms: geometric tolerances, datum shift, coating thickness, thermal growth and the measurement system.
What a Tolerance Stack-Up Actually Calculates
A stack-up measures nothing. It takes a functional requirement written as a dimension or a gap, walks the chain connecting it to a datum, and totals the variation each link may contribute.
Consider a housing, a spacer and a retaining plate located against a shoulder. The assembled length is the sum of three thicknesses, each with its own tolerance, so it has a spread. The stack-up sizes that spread and shows whether the gap can close to zero or grow until a fastener loses preload.
One rule is easy to break: each dimension appears once. A drawing showing a chain plus an overall dimension that duplicates it is over-dimensioned, and any stack built on it carries redundant links. Resolving that starts with datum selection, because a chain is no stronger than the datum it starts from.
Worst Case, RSS, and Monte Carlo: Choosing the Method
Worst-case addition sums the full tolerance of every contributor arithmetically: five links of ±0.1 mm give ±0.5 mm. It assumes all five sit at their extreme in the same direction at once, unlikely on a long chain but the assumption to use where a failure is unsafe.
RSS takes the square root of the sum of squares, giving ±0.224 mm for the same five links, because independent variation adds in quadrature. Two links of ±0.1 mm move from ±0.2 mm worst case to ±0.141 mm by RSS.
| Method | Calculation | Assumes | Typical use |
|---|---|---|---|
| Worst case | Sum of tolerances | Every link at its limit | Sealing, safety, preload |
| RSS | Root sum of squares | Centered, independent variation | Long chains, cost decisions |
| Monte Carlo | Random sampling | Stated distribution per link | Non-linear chains |
RSS holds only when a process is centered and its spread roughly fills the band; where it is not, worst case is the safer input. On a non-linear chain, a link at 0.3 absorbs three times the tolerance for the same effect.
How to Build a Stack-Up for Machined Parts
State the requirement as a condition, not a nominal. A gap that must stay open has a minimum, and a press fit that must carry torque has a maximum interference.
Draw the chain from the datum to the feature until it closes, recording each link as written and noting whether its tolerance is symmetric, unilateral or expressed as limits. A unilateral +0.2/0 is not ±0.1 unless the mean shift travels with it, and a dimension used twice is a redundancy to fix before the arithmetic starts.
Add the geometric contributions. Flatness, perpendicularity and position each consume part of the allowance, and where a bolt pattern is involved, position tolerance for hole patterns interacts with the chain through the bonus released as a hole departs from MMC.
Compute a margin rather than a pass or fail, then compare the predicted spread with first-article measurements.
Contributors That Vanish From First-Pass Stack-Ups
Most incorrect stack-ups are not arithmetic errors but chains missing a real source of variation.
Geometric tolerances. Size tolerances say how big a feature is, not where it sits or how flat it is, so a flatness control on a seating face adds variation to every dimension measured from it.
Finishing layers. Anodizing, plating, paint and passivation change the surfaces they cover, and which faces grow depends on the finishing coordination agreed with the supplier.
Thermal growth. A 100 mm aluminum part grows about 0.24 mm across a 100 °C change and steel about 0.12 mm, so an aluminum housing holding a steel shaft gains or loses clearance on temperature alone.
Workholding and measurement. Clamping deforms thin sections, so a dimension taken on a fixture is not the free-state dimension, and gauge uncertainty decides how much of an allowance can be verified at all.
Common Mistakes and What to Do When the Result Fails
Two patterns account for most bad stack-ups:
- Building on a chain that does not close, or counting a dimension twice through an over-dimensioned drawing.
- Applying RSS to two features machined in the same setup, where correlated variation adds arithmetically.
When the result fails, the order of remedies matters more than the size of any single change.
Remove a link. A machined pocket replacing two stacked plates eliminates an interface and its tolerance.
Change the datum scheme. Dimensioning the requirement from the same datum as its mating feature stops variation accumulating in series.
Spend tolerance where sensitivity is highest. Tightening a low-sensitivity link buys little and pushes the part into a route with the tight tolerance machining cost that follows. Where a fit depends on both members, hole tolerance and fit selection splits the allowance between hole and shaft.
FAQ
Does a tolerance stack-up analysis replace GD&T?
No. GD&T defines what each feature is permitted to be, and the stack-up totals those permissions. Without functional controls it falls back on general tolerances.
What sigma value should an RSS calculation use?
Read a drawing tolerance as ±3σ and treat the result as roughly a 3-sigma expectation for a centered process. With capability data, use the measured sigma; without it, worst case is safer.
Can a stack-up be run from the drawing tolerances alone?
It can, and that is the normal first pass. Drawing tolerances describe permission while process capability describes what happens, so converting the baseline to RSS belongs on the record.



