CNC Machining Tolerance Chart
The numbers engineers actually need: ISO 2768 tolerance classes with real values, what each process can hold, every GD&T symbol in one table, and the tolerance-cost curve that decides your quote.
Why Tolerances Decide Your Quote
Here's the thing most drawings get wrong: a designer marks ±0.01mm on every dimension "to be safe," and the quote comes back three times higher than expected. Then the buyer asks us to cut the price, and we have to explain that the drawing is asking for something the part does not functionally need.
Tolerance is the single biggest lever on machining cost — bigger than material choice in most cases. This page gives you the numbers to make that call yourself.
We machine to ISO 2768-mH by default. Anything tighter needs to be called out explicitly on the drawing, and anything tighter than ±0.01mm needs a conversation before we quote.
ISO 2768 Linear Tolerances (mm)
Deviation allowed on linear dimensions, by nominal size range. This is the table to check when a drawing says "ISO 2768-m" with no other callout.
| Nominal size (mm) | f (fine) | m (medium) | c (coarse) | v (very coarse) |
|---|---|---|---|---|
| 0.5 – 3 | ±0.05 | ±0.1 | ±0.2 | — |
| over 3 – 6 | ±0.05 | ±0.1 | ±0.3 | ±0.5 |
| over 6 – 30 | ±0.1 | ±0.2 | ±0.5 | ±1.0 |
| over 30 – 120 | ±0.15 | ±0.3 | ±0.8 | ±1.5 |
| over 120 – 400 | ±0.2 | ±0.5 | ±1.2 | ±2.5 |
| over 400 – 1000 | ±0.3 | ±0.8 | ±2.0 | ±4.0 |
| over 1000 – 2000 | ±0.5 | ±1.2 | ±3.0 | ±6.0 |
| over 2000 – 4000 | — | ±2.0 | ±4.0 | ±8.0 |
Source: ISO 2768-1:1989. For nominal sizes below 0.5mm, tolerances shall be indicated directly on the drawing.
ISO 2768 Geometric Tolerances (Part 2)
The "H", "K" and "L" suffix in a callout like ISO 2768-mH refers to these classes for form and position — not the same as the linear table above.
| Tolerance type | H | K | L |
|---|---|---|---|
| Straightness & flatness | 0.1 | 0.2 | 0.4 |
| Perpendicularity (per 100mm) | 0.2 | 0.4 | 0.6 |
| Symmetry | 0.5 | 0.6 | 0.6 |
| Circular runout | 0.1 | 0.2 | 0.5 |
| Cylindricity | Not covered by ISO 2768-2 | — | — |
| Concentricity | Not covered by ISO 2768-2 | — | — |
Values in mm. Note: cylindricity, concentricity, profile and angularity are NOT covered by ISO 2768-2 — they must be explicitly toleranced on the drawing or the shop has no defined requirement.
What Each Process Can Actually Hold
Realistic, repeatable tolerances on a production run — not laboratory best-case numbers.
| Process | Standard | Achievable with effort | Surface Ra typical | Cost multiplier |
|---|---|---|---|---|
| 3-axis CNC milling | ±0.05mm | ±0.01mm | Ra 1.6 μm | 1.0× |
| 5-axis CNC milling | ±0.05mm | ±0.01mm (better on compound angles) | Ra 0.8 μm | 1.8× |
| CNC turning | ±0.05mm | ±0.01mm on diameter | Ra 0.8 μm | 1.0× |
| Turning + grinding | ±0.01mm | ±0.002mm | Ra 0.4 μm | 2.5× |
| Wire EDM | ±0.01mm | ±0.005mm | Ra 0.4 μm | 2.0× |
| Jig boring | ±0.005mm | ±0.002mm | Ra 0.8 μm | 3.0× |
| Surface grinding | ±0.01mm | ±0.002mm flatness | Ra 0.2 μm | 2.2× |
Cost multiplier is relative to standard 3-axis milling on the same part geometry. "Achievable with effort" assumes climate-controlled inspection, sharp tooling and in-process measurement.
GD&T Symbol Quick Reference
| Category | Symbol name | What it controls | Needs a datum? |
|---|---|---|---|
| Form | Straightness ⏤ | How straight a line element is | No |
| Flatness ▱ | How flat a surface is | No | |
| Circularity ○ | Roundness of a cross-section | No | |
| Cylindricity ⌭ | Combined roundness + straightness of a cylinder | No | |
| Profile | Profile of a line ⌒ | Deviation of a cross-section from true profile | Sometimes |
| Profile of a surface ⌓ | Deviation of a 3D surface from true profile | Sometimes | |
| Orientation | Angularity ∠ | Angle of a feature relative to a datum | Yes |
| Perpendicularity ⟂ | 90° relationship to a datum | Yes | |
| Parallelism ∥ | Equal distance from a datum | Yes | |
| Location | Position ⌖ | Where a feature sits relative to datums | Yes |
| Concentricity ◎ | Coaxiality of median points (rarely used — prefer runout) | Yes | |
| Symmetry ⌯ | Mid-plane alignment to a datum | Yes | |
| Runout | Circular runout ↗ | Variation at any single cross-section | Yes |
| Total runout ⌰ | Variation across the entire surface | Yes |
Datum = a reference feature the tolerance is measured from. Symbols render differently across fonts; your drawing software will generate the correct glyphs per ASME Y14.5 or ISO 1101.
What Tightening Tolerance Actually Costs
This is the table we wish every designer saw before marking a drawing:
| Tolerance band | What changes on the shop floor | Typical cost vs. ±0.1mm |
|---|---|---|
| ±0.1mm | Standard speeds, single pass, no special inspection | 1.0× (baseline) |
| ±0.05mm | Slightly slower finishing pass, standard CMM check | 1.1 – 1.2× |
| ±0.025mm | Dedicated finishing tool, two-stage roughing/finishing, 100% inspection | 1.5 – 2.0× |
| ±0.01mm | Climate-controlled inspection, sharp tooling changed early, in-process measurement, higher scrap | 2.0 – 3.0× |
| ±0.005mm and tighter | Grinding, lapping or jig boring — different process entirely | 3.0 – 5.0× |
The rule we give our own customers
Tolerance the fit, not the part. A bore that receives a bearing gets ±0.01mm. The mounting face 40mm away gets ±0.1mm. The outer profile gets ISO 2768-m default. When a drawing marks every dimension at ±0.01mm, nobody knows which three features actually matter — and the shop has to assume all of them do.
One more trap: tolerance stack-up. If five parts each at ±0.05mm assemble in a chain, the worst-case assembly deviation is ±0.25mm, not ±0.05mm. If your assembly has a functional gap requirement, do the stack-up before finalizing individual part tolerances — not after the parts arrive.
Tolerance Questions We Answer Every Week
What is ISO 2768-mH?
What tolerance can CNC machining actually hold?
Does tighter tolerance always cost more?
What is the difference between ISO 2768-f, -m, -c and -v?
What is the standard surface finish for CNC machined parts?
Should I use GD&T or plus/minus tolerancing?
Send the Drawing — We'll Flag the Expensive Tolerances
When you send us a drawing, our quoting engineer reviews every tolerance callout and tells you which ones are driving cost without adding function. That review is free and comes back with the quote — usually within 24 hours.