Home / Wiki / Design Guide / Tolerance Design

Tolerance Design

Tolerances are where most of the money is made or lost on a CNC part. A feature specified at ±0.5mm costs the same to machine as one at ±0.01mm — but the inspection, tooling, scrap rate, and cycle time are completely different. This page explains how to assign tolerances that are tight enough to work, loose enough to afford, and justified for every single feature on your drawing.

Tolerance Cost Curve

The relationship between tolerance and cost is not linear — it is exponential. Each step tighter requires a better machine, a more skilled operator, more frequent inspection, and slower cutting parameters. The cost curve below shows the relative cost multiplier for common CNC tolerance bands. "1×" represents the baseline cost of a part with standard tolerances.

Tolerance BandRelative CostTypical ProcessWhat You Get
±0.5 mm 1.0× Standard CNC milling / turning General machining. Suitable for non-critical features, brackets, housings, covers.
±0.1 mm 1.5× CNC with standard tooling, normal inspection Most commercial parts. Good for clearance fits, mounting faces, cosmetic dimensions.
±0.05 mm 2.5× CNC with controlled environment, CMM inspection Precision commercial. Fits, bearing seats, dowel holes, sealing surfaces.
±0.025 mm 4.0× Precision CNC, grinding, temperature control High precision. Precision bearings, gear bores, hydraulic spools, gauge features.
±0.01 mm 8.0× Jig boring, precision grinding, CMM Very high precision. Gauge blocks, precision tooling, optical mounts, mold inserts.
±0.005 mm 15.0× Lapping, honing, temperature-controlled lab Ultra-precision. Metrology standards, optical assemblies, semiconductor fixtures.
The exponential trap Moving from ±0.1mm to ±0.05mm increases cost by ~67%. Moving from ±0.05mm to ±0.01mm increases cost by 220%. Most engineers intuitively think "a little tighter, a little more expensive" — but the reality is that each halving of tolerance can double or triple the cost. The single most impactful DFM decision you can make is to loosen every tolerance that does not need to be tight.
Cost drivers behind the curve Tighter tolerances cost more for several reasons: (1) slower feed rates and more spring passes increase cycle time, (2) tooling wears faster and requires more frequent replacement, (3) scrap rate rises because fewer parts fall within the narrower band, (4) inspection cost increases — calipers become micrometers become CMMs, (5) environmental control (temperature, vibration) may be required for tolerances below ±0.025mm.

Which Features Need Tight Tolerances?

Not every feature on a part needs the same tolerance. The key principle is tolerate the function, not the part. Assign tight tolerances only to features that directly affect assembly, sealing, motion, or safety. Everything else can be loose.

Feature TypeTolerance LevelTypical RangeWhy
Interference / press fits Very Tight ±0.005–0.015 mm The interference is measured in microns. Too loose = part slips out. Too tight = stress crack during assembly.
Transition / locational fits Tight ±0.01–0.025 mm Bearing journals, gear bores, precision dowel holes. Must locate accurately without excessive press force.
Dowel pin holes Tight ±0.01–0.02 mm (H7) Dowels locate two parts relative to each other. Positional error directly transfers to assembly alignment.
Bearing journals / bores Tight ±0.005–0.015 mm Bearing life depends on fit. Too loose = fretting and vibration. Too tight = preload and overheating.
Sealing surfaces (O-ring grooves) Moderate ±0.025–0.05 mm O-ring groove dimensions must be controlled to maintain proper compression. Width is more critical than depth.
Sealing faces (flat gasket) Moderate ±0.05 mm flatness The surface must be flat enough for the gasket to seal. Surface finish often matters more than dimensional tolerance.
Threaded holes Moderate Standard thread class (6H / 6g) Standard thread classes (6H for nuts, 6g for bolts) are well-defined. Do not re-specify thread tolerances unless you have a reason.
Clearance holes (bolt-through) Loose ±0.1–0.25 mm The bolt has clearance by design. As long as the hole is bigger than the bolt, it works.
Mounting faces Moderate ±0.05–0.1 mm Must be flat and at the correct position for the mating part to seat properly.
Overall dimensions (length, width, height) Loose ±0.1–0.5 mm (ISO 2768-mK) Unless the part fits into a specific envelope, overall dimensions rarely need tight tolerance.
Non-critical surfaces Loose ±0.5 mm or ISO 2768 External surfaces, ribs, bosses, cosmetic features. As long as they look right, tolerance does not matter.
Weight reduction pockets Loose ±0.5 mm or ISO 2768 These pockets remove material to reduce weight. The pocket shape and size are not functionally critical.
The 80/20 rule of tolerances On a typical part, 80% of features can be toleranced at the loosest standard (ISO 2768-m or -c). Only 20% (or less) need tighter control. Identify the critical features first, assign tight tolerances to those, and explicitly state "ISO 2768-mK" on the drawing for everything else. This one note can cut your part cost by 30–50%.

Tolerance Assignment Strategy

Assigning tolerances is not guesswork. Follow this systematic approach to ensure every tolerance on your drawing is justified, achievable, and cost-effective.

Step-by-Step Process

StepActionDetails
1 Identify critical functions List every function the part performs: bears a load, seals a fluid, locates another part, aligns an optical element, etc. Each function maps to one or more critical features.
2 Map functions to features For each function, identify which dimensional feature controls it. Example: "seals hydraulic fluid at 200 bar" maps to O-ring groove width, depth, and surface finish — not the overall part length.
3 Determine the tolerance needed for each critical feature Use engineering analysis (tolerance stack-up, FEA, empirical data) to calculate the maximum allowable deviation. Do not default to "tight" — calculate what is actually needed.
4 Apply ISO 2768 to everything else Every feature that is not on the critical list gets general tolerances per ISO 2768. Specify the class: -f (fine), -m (medium), -c (coarse), -v (very coarse). Medium (mK) is the most common default.
5 Document rationale On the drawing or in a separate tolerance analysis document, note why each tight tolerance is needed. This prevents future engineers from loosening them and prevents the shop from questioning them.
6 Review with manufacturing Before finalizing, review the tolerance scheme with your machinist or manufacturing engineer. They can flag tolerances that are tighter than necessary or suggest alternatives that achieve the same function at lower cost.

ISO 2768 Quick Reference

ISO 2768 defines general tolerances for dimensions that are not individually toleranced on the drawing. It covers linear dimensions, external radii, chamfer heights, angular dimensions, and geometrical tolerances (straightness, flatness, perpendicularity, symmetry, circular runout).

ISO 2768 ClassLinear Tolerances (for 6–30mm nominal)When to Use
f (fine) ±0.05–0.1 mm Precision parts where most features need good control. Still cheaper than individual tolerances on every dimension.
m (medium) ±0.1–0.2 mm The most common default. Suitable for the majority of commercial CNC parts. Good balance of cost and precision.
c (coarse) ±0.2–0.4 mm Non-critical parts, structural members, large housings, brackets. Use when fit and function are not sensitive to dimension.
v (very coarse) ±0.4–1.0 mm Rough structural parts, weldments, bases. Rarely used for precision CNC but appropriate for large structural components.
How to specify ISO 2768 on your drawing Add the following note in the title block or general notes area: GENERAL TOLERANCES PER ISO 2768-mK. The "m" controls linear and angular dimensions. The "K" controls geometrical tolerances (flatness, straightness, perpendicularity, etc.). This single line covers all dimensions that do not have an individual tolerance callout.

Surface Finish vs Tolerance

A common misconception is that a tight tolerance automatically requires a smooth surface finish, or vice versa. In reality, Ra (surface roughness) and dimensional tolerance are independent specifications. You can have a dimension that is ±0.01mm with a surface finish of Ra 1.6, or a dimension that is ±0.5mm with a surface finish of Ra 0.4. The two are driven by different functional requirements.

Functional RequirementRecommended RaTypical ProcessTolerance Implication
Sliding / bearing surfaces Ra 0.2–0.4 μm Grinding, honing, lapping Requires tight tolerance (the smooth surface is meaningless if the dimension is off).
Static sealing surfaces (gasket) Ra 0.8–1.6 μm Fine milling, facing, light grinding Flatness matters more than Ra. Surface must be flat enough for the gasket to conform.
Dynamic sealing (O-ring, lip seal) Ra 0.4–0.8 μm Grinding, fine turning Too rough = seal wears. Too smooth = seal cannot generate lip pressure. Direction of lay also matters.
Fits (press, transition, clearance) Ra 0.8–1.6 μm Reaming, boring, precision turning Surface roughness affects the effective fit. Rough surfaces measure smaller on shafts and larger on holes.
Cosmetic / visible surfaces Ra 0.8–1.6 μm Standard finishing pass Driven by appearance, not function. Looser dimension is fine as long as it looks good.
General machined surfaces Ra 1.6–3.2 μm Standard milling, turning The default CNC finish. No special operations needed. Pairs with ISO 2768-m tolerances.
Clearance / non-contact surfaces Ra 3.2–6.3 μm Roughing pass only Internal pockets, weight reduction, non-visible surfaces. Cheapest to produce.
Tool marks acceptable (as-machined) Ra 6.3–12.5 μm Heavy roughing Cast surfaces, raw stock, internal features never seen or contacted. Minimum cost.
Surface roughness affects effective fit A shaft with Ra 3.2 and a nominal diameter of 20.000mm will measure smaller at the peaks (the micrometer reads the peaks). Similarly, a hole with Ra 3.2 will measure larger at the valleys. For tight fits, specify both the dimensional tolerance and the surface finish. For H7/g6 fits, Ra should not exceed 1.6 μm. For loose clearance fits, Ra 3.2 is acceptable.
Don't over-specify surface finish Every step down in Ra requires an additional finishing operation. Going from Ra 3.2 (standard milling) to Ra 0.8 (fine finishing) adds a light cut. Going from Ra 0.8 to Ra 0.2 requires grinding or honing — a completely different process, different machine, and much higher cost. Specify the roughest surface that meets the functional requirement.

GD&T vs ± Tolerances

GD&T (Geometric Dimensioning and Tolerancing, per ASME Y14.5 / ISO 1101) is a symbolic language that controls the form, orientation, location, and runout of features. Plus-minus (±) tolerancing controls size and, indirectly, some geometric characteristics. Most parts can be fully defined with ± tolerances alone. GD&T is needed only for specific situations.

When to Use Plus-Minus (±)

± tolerances are the default and should be your first choice. They are simpler to understand, cheaper to inspect (calipers, micrometers), and sufficient for the majority of CNC parts.

SituationUse ± When...Why
Simple prismatic parts Blocks, plates, brackets with rectangular features Plus-minus on length, width, height, and hole positions is clear and sufficient.
Single-datum features One face or one edge serves as the reference for all dimensions No need for datum references when all dimensions originate from the same surface.
Clearance fits only Bolt holes, clearance slots, non-critical positioning Clearance holes have generous tolerance bands. ± is perfectly adequate.
Low-volume production Prototypes and short runs (< 100 pcs) GD&T inspection (CMM) adds setup cost that is hard to justify at low volume.

When to Use GD&T

SituationGD&T Feature Control NeededWhy ± Is Not Enough
Critical datum surfaces Datum features (A, B, C), flatness, perpendicularity ± tolerances do not explicitly define which surface is the reference. GD&T datums establish a clear measurement hierarchy.
Complex geometry Profile of a line/surface, position Irregular shapes, curved surfaces, and non-rectangular features cannot be adequately controlled with ± alone.
Pattern of holes True position (with MMC/LMC modifiers) True position with bonus tolerance from MMC allows more manufacturing flexibility and can reduce cost while maintaining function.
Concentricity / coaxiality Concentricity, runout, total runout ± on diameter does not control how centered one feature is relative to another. Runout controls both size and position simultaneously.
Cylindrical features with form requirements Cylindricity, circularity ± tolerance on diameter allows out-of-roundness within the band. Cylindricity controls the entire surface shape.
High-volume production Any GD&T feature with functional gauges GD&T allows the use of functional go/no-go gauges for fast, cheap inspection at volume.

Cost of GD&T Inspection

GD&T tolerances require CMM (Coordinate Measuring Machine) inspection for verification. This has a direct cost impact.

Inspection MethodTypical Tolerance RangeInspection Cost per PartSpeed
Calipers / micrometers ±0.05mm and looser Minimal (included in base price) 30–60 seconds per feature
Go/no-go gauges Fixed limits (thread gauges, pin gauges) Low (amortized over volume) 5–10 seconds per feature
Height gauge / surface plate ±0.01–0.05mm Moderate (+$5–15 per part) 2–5 minutes per feature
CMM (programming + measurement) Any GD&T, ±0.005mm and tighter High (+$20–80 per part) 5–15 minutes per part (after program)
Roundness tester / optical comparator Form tolerances (roundness, cylindricity) Very high (+$50–150 per part) 10–30 minutes per feature
GD&T is not inherently more expensive to manufacture GD&T often allows more manufacturing tolerance (through MMC bonus, composite tolerances, etc.) while still guaranteeing assembly. The cost comes from inspection, not machining. If your volume justifies CMM fixture programming, GD&T can actually reduce manufacturing cost by widening the allowable tolerance zone.

Common Mistakes

These tolerance errors appear on a surprising number of engineering drawings. Each one either increases cost unnecessarily or creates ambiguity that leads to disputes, delays, or non-conforming parts.

#MistakeWhat HappensCorrect Approach
1 Same tight tolerance on every dimension Part costs 3–5× what it should. Every feature is machined, inspected, and documented as if it were critical. Massive waste of time and money. Assign tight tolerances only to critical features. Apply ISO 2768 to everything else. Use the 80/20 rule: 80% of features loose, 20% tight.
2 Specifying ±0.01mm without understanding the cost Quote comes back 8× higher than expected. Engineer is surprised. Project budget is blown. Before specifying a tolerance tighter than ±0.05mm, consult the tolerance cost curve. Ask yourself: is this tolerance justified by engineering analysis?
3 No general tolerance note (no ISO 2768) Every untoleranced dimension is interpreted differently by the shop and the customer. Disputes are inevitable. The shop may default to their own (possibly tighter) standard. Always include "GENERAL TOLERANCES PER ISO 2768-mK" on the drawing. This is the single most important tolerance note you can add.
4 Tight tolerance on a non-functional dimension Money wasted on machining and inspection for a dimension that does not affect part function. Example: ±0.02mm on the overall length of a bracket where only the hole position matters. For each tolerance, ask: "What happens if this dimension is at the limit of a looser tolerance?" If the answer is "nothing," loosen it.
5 Confusing Ra with dimensional tolerance Specifying Ra 0.4 on a feature that only needs Ra 3.2, because the tolerance is tight. Or specifying a tight tolerance because the surface needs to be smooth. These are independent specs. Specify tolerance based on dimensional function. Specify Ra based on surface function (sealing, sliding, cosmetic). They are independent.
6 Using GD&T when ± would suffice Drawing is harder to read. Inspection requires CMM instead of calipers. Cost increases with no functional benefit. The shop may request a drawing revision. Use ± for simple parts with rectangular geometry and single-datum dimensioning. Reserve GD&T for complex geometry, critical datums, and high-volume production.
7 Tolerance stack-up not analyzed Multiple features each within tolerance, but the assembly does not fit because the tolerances stack up. Discovered at assembly — the most expensive time to find problems. Perform a tolerance stack-up analysis (worst-case or RSS) for any assembly with more than two mating parts. Adjust individual tolerances to meet the assembly requirement.
8 Tolerances tighter than the process capability High scrap rate. The shop cannot consistently produce parts within tolerance. They either charge a premium for selective sorting or reject the order. Know the standard capability of each process. CNC milling achieves ±0.025mm routinely. If you need ±0.005mm, specify grinding.
9 Not specifying datum references Inspection measures from a different reference surface than you intended. The part passes inspection but fails assembly. This is especially common with GD&T. Clearly define datum features on the drawing. Datum A should be the primary mating surface. Datum B should be the secondary alignment surface.
10 Ignoring material behavior (thermal expansion) Part measured at 20°C is within tolerance. Part measured at 35°C (on the shop floor or in operation) is out of tolerance. Aluminum expands 0.024mm per 100mm per °C. For tight tolerances (<±0.025mm), specify measurement temperature (usually 20°C per ISO 1). For parts operating at extreme temperatures, tolerance the dimension at operating temperature.