Chris Collins

Tools · metalworking

Fits, tolerances, and threads

ISO 286 hole and shaft limits computed from the standard — H7/g6, H7/k6, H7/p6 or any class to 500 mm — with clearance, transition or interference drawn as tolerance zones; a size-range table; the ANSI B4.1 classes; thread dimensions for metric, UNC/UNF, BSP and NPT; a thread identifier; ISO 273 clearance holes; and the IT grade your 3D printer really holds.

Added

How to use it

Switch Metric / Imperial at the top: sizes in mm or inches, deviations in µm or thousandths of an inch (thou). The choice is remembered.

Fits (ISO 286)

Enter the nominal size and pick a hole class (capital letter + grade, e.g. H7) and a shaft class (small letter + grade, e.g. g6), or tap a preferred fit. The tool shows both sets of limit deviations, the limits of size, the largest and smallest clearance (negative = interference), and whether the fit is a clearance, transition or interference fit, with the two tolerance zones drawn against the zero line (the nominal size).

How it is computed, from ISO 286-1:2010:

  • Standard tolerance (IT grade) — the tolerance band width from ISO 286-1 Table 1 for the size range ("over a up to and including b" mm). The tool also shows the formula behind the table: the tolerance factor i = 0.45 ∛D + 0.001 D µm, with D the geometric mean of the range, and IT5 = 7_i_, IT6 = 10_i_, IT7 = 16_i_, IT8 = 25_i_ … IT18 = 2500_i_ — the table is these values rounded.

  • Fundamental deviation — which side of the zero line the band sits, from ISO 286-1 Table 2 for shafts: a–h give the upper deviation es (h = 0), j–zc the lower deviation ei. Letters a, b, c and r–zc change inside a main size range, so their intermediate ranges are used.

  • Holes mirror shafts: A–H have EI = −es. J–ZC have ES = −ei, except K, M, N up to IT8 and P–ZC up to IT7, where ES = −ei + Δ with Δ = IT_n_ − IT_n−1_ (Δ = 0 up to 3 mm). J holes (J6–J8) are tabulated. js and JS are ±IT/2, with odd values in IT7–IT11 rounded down to even.

Checked against ISO 286-2 values, e.g. 25 H7 = +21/0 µm and 25 g6 = −7/−20 µm (7–41 µm clearance), 50 k6 = +18/+2, 10 p6 = +24/+15, 25 K7 = +6/−15, 25 N7 = −7/−28, 25 P7 = −14/−35, 35 S7 = −34/−59.

The presets are the hole-basis preferred fits (ISO 286-1 Annex, ANSI B4.2): H11/c11 loose running, H9/d9 free running, H8/f7 close running, H7/g6 sliding, H7/h6 locational clearance, H7/k6 and H7/n6 locational transition, H7/p6 locational interference, H7/s6 medium drive, H7/u6 force fit.

Tolerance table

Type the classes you use (H7 g6 k6 …): the table gives their upper / lower deviations for every size range up to 500 mm, splitting a cell where an intermediate range changes the value. Enter a size to highlight its row — a quick shop chart for a bearing seat or a reamed hole.

ANSI classes

A summary of ANSI B4.1 (inch) fit families — RC running and sliding, LC locational clearance, LT locational transition, LN locational interference, FN force and shrink fits — with the usual ISO equivalent to compute limits from. For the exact ANSI limits use the B4.1 tables (reprinted in Machinery’s Handbook, "Allowances and Tolerances for Fits").

Thread dimensions

Pick a family and size for the basic dimensions and the whole series as a table:

  • ISO metric (ISO 68-1, ISO 261/724): pitch Ø d2 = d − 0.649519 P, internal minor D1 = d − 1.082532 P, external root d3 = d − 1.226869 P; tap drill ≈ D − P. M10 × 1.5: d2 9.026, d3 8.160, drill 8.5 mm.

  • UNC / UNF (ASME B1.1): the same 60° profile in inches; the UNR external root is d − 1.190784 P, and the tap drill shown is for 75% thread. 1/4-20 UNC: pitch Ø 0.2175″.

  • BSP (ISO 228-1 parallel G, ISO 7-1 taper R): 55° Whitworth form, d2 = d − 0.640327 P, d1 = d − 1.280654 P.

  • NPT (ASME B1.20.1): pitch Ø at the small end E0 = D − (0.05 D + 1.1) p, hand-tight engagement L1 = (0.80 D + 6.8) p, taper 1:16 on diameter. 1/2-14 NPT: E0 = 0.75843″.

These are basic sizes: real parts carry a tolerance class (6H/6g, 2A/2B) that makes external threads a little smaller.

Identify a thread

Measure the outside diameter of a bolt with calipers and the pitch with a gauge (or count threads over an inch), and the tool ranks every metric, unified, BSP and NPT thread by how well pitch and diameter match. Bolts measure 0.1–0.2 mm under nominal; pipe threads are named for the old pipe bore, so a "1/2″" pipe thread measures about 21 mm.

Clearance holes

ISO 273 close (fine), normal (medium) and loose (coarse) series for M1–M64, and the ASME B18.2.8 pattern for inch screws (#2 to 1-1/2″).

3D printing

What a printer’s ± tolerance means as an ISO grade at a given size — an FDM part holding ±0.15 mm at 20 mm is only IT13, so machining fits like H7/g6 (21 µm band) are out of reach — and starting clearances for press, snug, sliding and free fits, split between hole and peg.

Limits

  • ISO 286 sizes from just over 0 to 500 mm. Rare special cases in the standard (for example M6 holes from 250 to 315 mm, and the cd, ef, fg letters for small sizes) are not modelled; check ISO 286-2 for critical work.

  • Deviations v, x, y, z, za, zb, zc are transcribed from ISO 286-1 Table 2; they are rarely used and less cross-checked than the common letters.

  • Thread figures are basic profile dimensions, not the tolerance limits of a class; tap drills are starting points.

  • The ANSI table is a summary, not the B4.1 limit tables. ISO equivalents are approximate.

  • Printing clearances are rules of thumb — calibrate with a test print.

Related: taps, drills, and threads (% thread engagement, drill chart, counterbores, three-wire measurement) · bolt torque and preload · print tolerances and fits · speeds and feeds · gears, belts, and chains.

Sources: ISO 286-1:2010 and ISO 286-2:2010 (Geometrical product specifications — ISO code system for tolerances on linear sizes); ISO 68-1, ISO 261 and ISO 724 (metric threads); ASME B1.1 (unified threads); ISO 228-1 and ISO 7-1 (pipe threads); ASME B1.20.1 (NPT); ISO 273 (clearance holes); ANSI B4.1 and B4.2 (fits); Machinery’s Handbook, 31st ed.

Linking to an example

Links can be written by hand. Add the tab after #: fits, table, ansi, threads, identify, clearance or print.

Parameter Meaning Example

units

mm (metric) or in (imperial)

units=in

d

Nominal size for the fit, in mm (always mm, whatever the display units)

d=25

hole

Hole class

hole=H7

shaft

Shaft class

shaft=g6

fam

Thread family: mc, mf, unc, unf, bsp, npt

fam=unc

thread

Thread in that family: M10, M10x1.25, 1/4-20, 1/2 (BSP and NPT)

thread=M10

od

Identify: measured outside diameter, mm

od=7.9

pitch

Identify: pitch in mm, or threads per inch with pmode=tpi

pitch=1.25

pmode

mm or tpi

pmode=tpi

bolt

Clearance hole: M6 or an inch size such as 1/4

bolt=M8

proc

3D printing process: fdm, fdm6, resin, sls

proc=resin

tol

Process tolerance ±, mm

tol=0.1

pd

Printed feature size, mm

pd=20

example

One of the presets below; parameters given with it override the preset’s

example=sliding-25

Presets:

example= Shows

sliding-25

25 mm H7/g6: hole +21/0 µm, shaft −7/−20 µm, 7–41 µm clearance (open)

bearing-k6

A 6205 bearing seat: 25 mm k6 shaft (+15/+2 µm) in an H7 housing (open)

dowel-p6

10 mm H7/p6 locational interference (open)

shrink-s6

50 mm H7/s6 medium drive fit (open)

inch-half

A 1/2″ shaft, H8/f7 close running, in thou (open)

m10

M10 × 1.5: pitch Ø 9.026, root 8.160, tap drill 8.5 mm (open)

quarter-20

1/4-20 UNC: pitch Ø 0.2175″ (open)

mystery-bolt

A bolt measuring 7.9 mm with a 1.25 mm pitch: M8 (open)

pipe-half

20.8 mm at 14 TPI: G/R 1/2 BSP, not 1/2 NPT (open)

fdm-20

A 20 mm FDM hole at ±0.15 mm is about IT13 (open)

Runs entirely in your browser; nothing you type leaves this page.