Tolerance Allocation & Synthesis
Tolerance analysis answers "will these tolerances work?" Tolerance allocation answers the harder question: "what tolerances should I specify to guarantee this gap?" This guide covers practical methods for budgeting and distributing tolerances across components.
Analysis vs. Synthesis
Analysis: Given component tolerances → calculate assembly variation
Synthesis: Given assembly requirement → calculate component tolerances
The Tolerance Budget
Start with the assembly requirement—the gap, clearance, or interference that must be maintained. This is your tolerance budget. Every component in the stack-up chain consumes part of this budget.
Assembly Requirement = ±Ttotal
This is the maximum acceptable variation in the critical dimension
If your assembly needs a clearance of 0.5mm minimum and 1.5mm maximum, your tolerance budget is ±0.5mm around the 1.0mm nominal. Every contributor in the loop must share this budget.
Allocation Methods
There's no single "correct" way to distribute tolerances. The right method depends on your constraints: manufacturing capability, cost, and which dimensions are easier to control.
1. Equal Allocation
Divide the budget equally among all contributors. Simple, but often impractical—it ignores that some features are harder (more expensive) to hold tight than others.
Ti = Ttotal / n
Where n = number of contributors
Worst-case: If you have 5 contributors and ±0.5mm budget, each gets ±0.1mm.
RSS: The math changes. For RSS, tolerances combine as root-sum-square:
Ti = Ttotal / √n
RSS allows larger individual tolerances for the same assembly result
With 5 contributors and ±0.5mm RSS budget, each gets ±0.224mm—more than double the worst-case allocation.
2. Proportional Allocation
Allocate tolerances proportional to nominal dimension. Larger features get larger tolerances, which often aligns with manufacturing capability—it's easier to hold ±0.1mm on a 100mm dimension than on a 5mm dimension.
Ti = Ttotal × (Li / ΣL)
Where Li = nominal dimension of contributor i
This often produces more manufacturable designs than equal allocation, especially when feature sizes vary significantly.
3. Cost-Weighted Allocation
The most sophisticated approach: allocate looser tolerances to expensive-to-control features, tighter tolerances to cheap-to-control features. This minimizes total manufacturing cost while meeting the assembly requirement.
Ti ∝ 1 / √Ci
Where Ci = relative cost to tighten tolerance on feature i
Features that are expensive to hold tight (ground surfaces, tight bores) get more of the budget. Features that are cheap to control (turned diameters, standard hole sizes) get less.
| Method | Best When | Drawback |
|---|---|---|
| Equal | Quick estimate, similar features | Ignores manufacturability |
| Proportional | Varied feature sizes, general machining | Doesn't account for process differences |
| Cost-Weighted | Production optimization, cost-sensitive | Requires cost data for each feature |
Sensitivity-Driven Allocation
Not all contributors affect the assembly equally. A contributor with sensitivity factor 2 has twice the impact on the result as one with sensitivity 1. Sensitivity-driven allocation accounts for this.
Ti = Ttotal / (|Si| × n)
Where Si = sensitivity coefficient of contributor i
High-sensitivity features (those that strongly affect the result) need tighter tolerances. Low-sensitivity features can be looser without significantly impacting assembly variation.
This is why sensitivity analysis is so valuable—it tells you where to spend your tolerance budget for maximum effect.
Worked Example: Shaft-Housing Gap
A shaft passes through two housings with a spacer between them. The assembly requires 0.2–0.8mm end clearance (nominal 0.5mm, tolerance ±0.3mm).
| Contributor | Nominal | Sensitivity | Direction |
|---|---|---|---|
| Housing A depth | 25.0 mm | +1 | Positive |
| Spacer thickness | 10.0 mm | +1 | Positive |
| Housing B depth | 25.0 mm | +1 | Positive |
| Shaft length | 59.5 mm | −1 | Negative |
Stack-up: (25 + 10 + 25) − 59.5 = 0.5mm nominal gap ✓
Equal Allocation (Worst-Case)
Budget: ±0.3mm across 4 contributors
Ti = 0.3 / 4 = ±0.075mm per feature
Very tight! The 59.5mm shaft at ±0.075mm is challenging.
Equal Allocation (RSS)
Ti = 0.3 / √4 = 0.3 / 2 = ±0.15mm per feature
More reasonable. RSS assumes statistical distribution of errors.
Proportional Allocation (RSS)
Total nominal length in chain: 25 + 10 + 25 + 59.5 = 119.5mm
Housing A: 0.3 × (25/119.5) × √4 = ±0.126mm
Spacer: 0.3 × (10/119.5) × √4 = ±0.050mm
Housing B: 0.3 × (25/119.5) × √4 = ±0.126mm
Shaft: 0.3 × (59.5/119.5) × √4 = ±0.299mm
The long shaft gets more tolerance; the thin spacer gets less.
Verification
Always verify your allocation by running the stack-up analysis with the allocated tolerances:
RSS check: √(0.126² + 0.050² + 0.126² + 0.299²) = √0.0896 = ±0.299mm
Result is within ±0.3mm budget ✓
Iterative Refinement
Allocation is rarely one-and-done. The typical workflow:
- Start with equal or proportional allocation as a baseline
- Check manufacturability — can your processes actually hold these tolerances?
- Identify problem features — which tolerances are too tight for available processes?
- Reallocate — loosen problem features, tighten others to compensate
- Verify — run the stack-up analysis to confirm the assembly still meets requirements
- Iterate until you have a manufacturable design that meets requirements
This is where what-if analysis becomes invaluable. Quickly test "what if I loosen this tolerance and tighten that one?" to find the optimal balance.
Process Capability Constraints
Allocation must respect what your manufacturing processes can actually achieve. Common capability limits:
| Process | Typical Capability | Notes |
|---|---|---|
| CNC Milling | ±0.025–0.1mm | Depends on size, setup |
| CNC Turning | ±0.013–0.05mm | Diameters easier than lengths |
| Grinding | ±0.005–0.025mm | Expensive, adds operation |
| Sheet Metal | ±0.1–0.5mm | Bend locations vary more |
| Injection Molding | ±0.05–0.2mm | Material and part size dependent |
| Die Casting | ±0.1–0.3mm | Draft and parting line effects |
If your allocation demands ±0.01mm from a sheet metal part, you need to reallocate—or change the design.
Connecting Allocation to Cpk
When you allocate tolerances, you're implicitly setting quality targets. A tolerance that matches process capability (3σ = tolerance) gives Cpk ≈ 1.0 and about 2,700 PPM defects. Tighter tolerance relative to capability means higher Cpk and fewer defects.
See Cpk and PPM in Tolerance Analysis for the full relationship between tolerance, process capability, and defect rates.
Common Allocation Mistakes
- Ignoring the loop — allocating tolerances without first identifying all contributors in the tolerance loop
- Forgetting assembly variation — fixtures, fastener clearances, and assembly methods add variation too
- Over-optimistic RSS — RSS assumes independent, normal distributions; correlated or skewed processes need margin
- Single-iteration allocation — not verifying allocations against actual process capability
- Ignoring cost — equal allocation often results in expensive tight tolerances where they're not needed
Summary
- Allocation is the inverse of analysis — start with the assembly requirement, work backward to component tolerances
- Equal allocation is simple but ignores manufacturability
- Proportional allocation scales with feature size, often more practical
- Cost-weighted allocation minimizes manufacturing cost
- Sensitivity-driven allocation puts tight tolerances where they matter most
- Always verify by running the stack-up analysis with allocated tolerances
- Iterate to balance requirements, capability, and cost