Geometric Dimensioning and Tolerancing (GD&T) defines tolerances based on how features relate to each other, not just their individual dimensions. For CNC parts, GD&T is the difference between drawings that produce consistent, assembleable parts and drawings that pass inspection but fail at assembly. This intro covers the symbols you'll actually use.
Linear tolerance (±0.05mm on a dimension) specifies how much the dimension can vary. But it doesn't specify how features relate to each other. Two features each held to ±0.05mm can be perfectly in tolerance individually yet not assemble correctly.
Example: two bolt holes, each with ±0.05mm position tolerance independently. Acceptable individually — but if both drift in the same direction, the bolt pattern is offset by 0.1mm. Linear tolerance doesn't constrain the relationship between the holes.
GD&T fixes this by tolerating the position of features relative to datums, not just their dimensions. A position tolerance of Ø0.1mm on each hole (referenced to datum A, B, C) constrains the pair to be within a 0.1mm cylinder — regardless of whether they drift the same or opposite directions.
| Symbol | Name | What it controls |
|---|---|---|
| ⬜ | Flatness | How flat a surface is — independent of reference |
| ⊥ | Perpendicularity | How square a feature is to a datum |
| ∥ | Parallelism | How parallel a feature is to a datum |
| ⌖ | Position (True Position) | Where a feature's center must land, relative to datums |
| Ⓗ | Cylindricity | How cylindrical a round feature is (round + straight) |
These five cover about 90% of real-world GD&T use. Other symbols (concentricity, runout, profile, etc.) exist but are either deprecated, special-case, or overlapping with the main five.
Every GD&T callout references datums — the surfaces, axes, or points that define the part's reference frame. A typical datum scheme for a machined bracket:
Together, A|B|C form a right-angle reference frame. Every other feature is dimensioned relative to this frame. For rotational parts (shafts, cylinders), datum A is often an axis rather than a face.
Key principle: datums should be machined features, not raw-stock surfaces. Datuming from a raw cast surface makes every other dimension ambiguous because the raw surface varies part-to-part.
Position tolerance (⌖) is the single most-used GD&T control. It specifies where a feature's center must land relative to datums.
Example: two M6 holes on a bracket. Drawing callout: ⌖ Ø0.1 A|B|C on each hole. This means the hole axis must fall within a 0.1mm-diameter cylinder centered at the theoretical position, with A, B, C as the reference datums.
Bonus modifier: MMC (Ⓜ) — maximum material condition. When specified as ⌖ Ø0.1 Ⓜ A|B|C, the position tolerance grows when the hole is at maximum material (smallest diameter). For bolt-hole patterns, this gives assembly back the tolerance it needs.
Flatness (⬜) applies to a single surface with no datum reference. Callout ⬜ 0.02 means the surface lies between two parallel planes 0.02mm apart — regardless of orientation or location.
Use flatness on:
Perpendicularity (⊥) controls a surface or axis relative to a datum. Callout ⊥ 0.05 A means the controlled feature must be perpendicular to datum A within a 0.05mm zone.
Use perpendicularity on:
Email [email protected]. Our CMM operators handle GD&T-per-ASME-Y14.5 and ISO 1101 inspection routinely — we return measured reports with every FAI.
Start a quote →