MFG

Machining Tolerances Guide

Machining tolerances: ISO 2768-1 classes, material-specific achievable precision, GD&T geometry control, and how tightening a tolerance raises cost.

Tolerance is the allowed variation in a dimension. For CNC machining, ISO 2768-1 defines general linear tolerances in four classes (fine f, medium m, coarse c, very coarse v) by size range, and ISO 2768-2 defines geometric tolerances by grade. Specifying tolerance well means declaring one general class for the part and then tightening only the features that need it, which keeps the part makeable and inspectable without paying for precision the function does not require.

How machining tolerance works

A tolerance sets the band a dimension can land in and still pass inspection. General tolerances, set by ISO 2768-1, apply to every linear dimension the drawing does not single out, and they are declared once in the title block as a class such as ISO 2768-mK. The class names a linear grade (f, m, c, v) and, with ISO 2768-2, a geometric grade (H, K, L), so a single label governs both size and geometry across the whole drawing.

How class widens and how dimensions override

Each class widens with the nominal size, because larger features pick up more variation from machine travel, thermal growth, and setup error. A dimension with its own tolerance written next to it always overrides the general class, so the drawing carries two layers: a default band for everything, and specific bands for the features that matter.

General vs achievable tolerance

The general class is a default, not a ceiling. A capable shop can hold tighter than the general band on the right setup, and what it can achieve depends strongly on the material. Aluminum 6061, carbon steel 1018 and 1045, and free-machining brass reach about ±0.025mm with good practice, because they machine cleanly. Stainless 304 and titanium run about ±0.05mm, because stainless work-hardens under the cut and titanium traps heat at the tool.

Feature geometry sets the achievable band

The achievable tolerance also depends on the feature: a rigid, well-supported bore reams tighter than a deep pocket, a thin wall, or a long threaded bore, which all flex or deflect under cut. The practical move is to set the general class for cost, and then ask for the material-and-feature achievable precision only where the function needs it.

Tolerance and cost

Tolerance is one of the largest cost levers in machining, because every step tighter needs more time and more checking. Moving a feature from ±0.005in to ±0.001in can add 20 to 50 percent, through slower cycles, stiffer fixturing, and added inspection, and ±0.0005in can double the cost by pushing the work into optical measurement and a controlled environment. A ground finish such as Ra 0.4µm adds 30 to 50 percent over an as-machined surface, because it is a separate grinding operation.

Localizing precision

The cost discipline is to localize precision: apply fine values to mating, locating, and sealing features, and let the general class govern everything else. A part with three tightly toleranced features and the rest at medium costs far less than the same part with every dimension at fine, and it works just as well.

GD&T and geometry

Size tolerance alone does not control how a feature sits in space, which is why geometric dimensioning and tolerancing exists. GD&T, under ASME Y14.5 or ISO 1101, controls form (flatness, roundness), orientation (perpendicularity, parallelism), location (position), and runout, so a feature can be in size band and still fail to seal or mate if its geometry is out. ISO 2768-2 sets general geometric grades H (fine), K (medium), and L (coarse), declared alongside the linear class in the title block. The payoff is at the functional interfaces: a position tolerance locks a hole pattern to its datum, a perpendicularity keeps a face square to a bore, a runout keeps a shaft concentric. Use GD&T where the function depends on the geometry relationship, and let size tolerance with the general class handle the rest.

Tolerance feature by feature

Different features reach different tolerance bands on the same machine, because geometry sets how rigidly the tool can hold the cut. A bored or reamed hole reaches about ±0.025mm readily, because the tool is supported and the cut is light. A pocket or a face milled to a size holds a similar band when the wall is thick and rigid, but a thin wall, a deep pocket, or a long overhang deflects under cutting force and widens the achievable band. A turned diameter on a rigid bar holds tight, but a long, slender turned part can barreling or chatter and lose both size and finish. Threaded features hold their pitch well but their position only to the general class, so a threaded hole pattern often needs a position callout if the bolt pattern must line up. The lesson is that the achievable tolerance is a property of the feature and the setup, not just the machine, so design each feature to the band it can actually reach rather than asking a thin wall to hold a bore tolerance.

Worked example: one bracket, four decisions

A worked example ties it together. A bracket with a precision locating bore, a tapped hole pattern, and a sealing face might call for ±0.025mm on the bore (held by boring or reaming), a GD&T position on the tapped pattern (so the bolts line up with the mating part), a flatness callout on the sealing face (so it seals), and the general class ISO 2768-mK on every other dimension. Four tolerance decisions on one part, each tied to a function, instead of a blanket fine spec. The bore, the pattern, and the face earn their tight values; the rest stay at the general class and the part costs what it should.

Tolerance and inspection

A tolerance is only useful if it can be inspected, so plan the measurement with the dimension. A ±0.10mm linear dimension is checked with calipers; a ±0.025mm dimension needs a micrometer or a bore gauge; a ±0.005mm dimension needs gauge blocks or a coordinate measuring machine in a temperature-controlled room. GD&T callouts need the right setup too: a position tolerance needs a datum reference frame and often a CMM, a runout needs a rotation against a gauge, and a flatness needs a surface plate and an indicator. A tolerance that cannot be inspected at the shop’s level is a tolerance that will be argued about at first-article, so match the tolerance to the inspection the shop can actually perform. The most economical tolerance is the loosest one the function allows, checked with the simplest tool that can verify it.

Checklist

  • General tolerance class stated in the title block, such as ISO 2768-mK.
  • Tight tolerances only on functional features; the rest at the general class.
  • Material-specific achievable tolerance understood and matched to the ask.
  • Tolerance stack-up checked across the assembly on each critical chain.
  • GD&T called out on the features where fit, position, or runout matters.

Design rules

  • Apply tight tolerances only to functional features, and leave the rest at the general class to control cost. A blanket fine spec raises cost across the whole part.
  • Account for tolerance stack-up across mating parts. The combined variation along a dimension chain can exceed a single part tolerance and prevent fit, so shorten the chain, baseline-dimension from a datum, or control position with GD&T.
  • Match the tolerance to the material and the feature. Ask for the achievable precision the material can hold on a well-supported feature, not a number the geometry cannot reach.
  • Separate size tolerance from geometry tolerance. A bore inside its size band can still fail to seal, so call out the form or position control that protects the function.
  • Confirm the tolerance is inspectable at the level the shop works at. A dimension is only as good as the tool that can verify it, so match each tolerance to the simplest measurement that can prove it, and reserve values that need a controlled environment for the few features that truly require them.

Tolerances

  • For metals, ISO 2768-1 fine (f) is typical for machined parts, and medium (m) is the general default. Aluminum 6061, carbon steel 1018 and 1045, and brass reach about ±0.025mm; stainless 304 and titanium about ±0.05mm.
  • GD&T under ISO 2768-2 grade K gives straightness and flatness about 0.05mm on short features (up to 10mm) and circular runout 0.2mm. Declare the grade with the linear class in the title block.
  • Cost rises sharply with tolerance. Moving from ±0.005in to ±0.001in can add 20 to 50 percent, and ±0.0005in can double the cost, so specify tight only where the function requires it.
  • Secondary operations shift the achievable band and the cost. A ground surface can reach Ra 0.4µm and tighter geometry, but it is a separate operation with its own setup; lapping reaches finer still but at a steep cost. Plan these only where the function demands the precision, and confirm the shop can both hold and inspect the value you ask for.
  • Tolerance intent belongs on the drawing, not in the model alone. A STEP can carry PMI but not every CAM system reads it, so put the general class in the title block and the specific tolerances on the dimensions, where they are explicit and universal. The model defines the shape; the drawing defines what the shop must hold and what the inspector must verify, and that contract is what makes a tolerance real.
Size RangeFineMediumCoarse
0.5 to 3mm±0.05mm±0.10mm±0.20mm
3 to 6mm±0.05mm±0.10mm±0.30mm
6 to 30mm±0.10mm±0.20mm±0.50mm
30 to 120mm±0.15mm±0.30mm±0.80mm
120 to 400mm±0.20mm±0.50mm±1.20mm
400 to 1000mm±0.30mm±0.80mm±2.00mm

Frequently asked questions

What tolerance can CNC machining hold?
ISO 2768-1 fine class is typical for metals (about ±0.10mm on a 6 to 30mm feature). Precision work reaches ±0.025mm (±0.001in) in aluminum; tighter is possible but costly.
Why does tolerance affect cost so much?
Tighter tolerances need slower machining, more rigid setups, and more inspection. ±0.001in costs about 20 to 50% more than ±0.005in, so specify tight only where function requires.
What is GD&T?
Geometric Dimensioning and Tolerancing (ASME Y14.5 or ISO 1101) controls form, orientation, location, and runout. ISO 2768-2 sets general geometric grades: H fine, K medium, L coarse.
What tolerance can each material hold?
About ±0.025mm in aluminum 6061, carbon steel 1018 and 1045, and free-machining brass; about ±0.05mm in stainless 304 and titanium, because stainless work-hardens and titanium traps heat at the tool.
What is the difference between general and achievable tolerance?
The general class (ISO 2768-1) covers untoleranced dimensions and is declared in the title block. The achievable tolerance is what a capable shop can actually hold on a given material and feature, which is often tighter than the general class.
How tight is too tight?
When a tolerance needs a separate grinding or lapping pass, optical measurement, or a controlled-environment setup, it has moved past economical machining for that feature. Reserve such values for the few features that truly need them.
Do I tolerance every dimension?
No. Declare the general class in the title block for every untoleranced dimension, and write a specific tolerance only on the functional features. Tolerancing every dimension to fine raises cost across the whole part for little benefit.
How do I handle tolerance across an assembly?
Check the worst-case stack along each critical dimension chain. A chain of plus-minus bands can add up past the clearance a mating part needs, so shorten the chain, switch to baseline dimensioning, or control the position with GD&T.

Sources