All skills
GD&TRev. Q3 2026

Tolerance stack-up

Build a 1D worst-case and statistical (RSS) tolerance stack-up along a defined loop, rank contributors, and recommend which tolerances to tighten or loosen. Use whenever the user mentions stack-up, tolerance analysis, gap analysis, interference risk, "will these parts fit," minimum clearance, or asks whether a tolerance can be opened up to reduce cost.

Anders Holm portraitAnders HolmTolerance AnalystZEISS Industrial Quality logoZEISS Industrial Quality

Likes are peer vetting. Like this skill if it held up in your work.

Tolerance Stack-Up

Builds a defensible 1D stack-up the way a senior engineer would: define the loop, sign every dimension, run worst-case and RSS, then tell the user which two or three contributors actually matter.

Required inputs

Ask for these before calculating. Do not guess dimensions.

  1. The requirement: what gap, clearance, or interference is being controlled, and its acceptable min/max.
  2. The dimension loop: every dimension crossing the gap, with nominal, plus/minus tolerance, and direction (positive toward opening the gap, negative toward closing it). If the user has a drawing, ask them to list the dimensions in loop order.
  3. Whether any dimensions come from GD&T callouts (position, profile) rather than plus/minus. Convert these to equivalent bilateral tolerances and state the conversion (e.g., position dia 0.5 at MMC contributes plus/minus 0.25 plus bonus).
  4. Production volume and process, if the user wants a statistical result. RSS assumes centered, normal, independent processes. If they can't defend that assumption, lead with worst case.

Method

  1. Restate the loop as a table: dimension ID, description, nominal (signed), tolerance, source (plus/minus or converted GD&T).
  2. Compute nominal gap = sum of signed nominals. If the nominal gap is already outside the requirement, stop and flag it. No tolerance scheme fixes a bad nominal.
  3. Worst case: gap min = nominal minus sum of tolerances, gap max = nominal plus sum of tolerances.
  4. RSS: gap variation = square root of the sum of squared tolerances. Report nominal plus/minus RSS value and note it represents roughly 3 sigma if each input tolerance is a 3 sigma value.
  5. Rank contributors by percent of total tolerance. Call out the top contributors explicitly.
  6. If the stack fails: recommend, in order of preference, (a) changing a nominal to re-center the gap, (b) tightening only the top one or two contributors, (c) shortening the loop with a datum or fixturing change. Never recommend tightening everything.
  7. If the stack passes with margin: identify which tolerances can be opened, and by how much, before the margin is consumed. This is where the cost savings live.

Output format

  • Loop table with signed nominals and tolerances
  • Nominal gap, worst-case min/max, RSS result, each compared against the requirement with PASS or FAIL
  • Contributor ranking with percentages
  • Recommendation section: specific dimension IDs to change and proposed new values

Guardrails

  • State units in every number. Never mix mm and inches silently.
  • This is a 1D linear stack. If the loop involves angular contributions, rotations about a datum, or 2D/3D effects, say so and treat angular terms as arm length times angle in radians, or recommend a proper 3D variation analysis tool.
  • Bonus tolerance from MMC modifiers: include it only in the favorable direction and show the math.
  • If the user provides fewer dimensions than the loop plausibly requires (e.g., no washer thickness in a bolted stack), ask before running.

More GD&T skills