{"$schema":"nativecad-dfm-pack/1","id":"hardware","title":"Hardware — fasteners, threads, holes, inserts, pins","sector":"hardware","version":"2026-09-12","summary":"Cross-sector fastener facts every product pack points at: metric clearance and tap-drill sizes, counterbores and countersinks, thread engagement, inserts, dowels, retaining-ring grooves, edge distances.","aliases":["fastener","fasteners","screw","screws","bolt","bolts","thread","threads","tap","clearance hole","counterbore","countersink","insert","dowel","circlip","rivet","rivnut","pem","helicoil","standoff","t-nut","shoulder bolt","set screw","dowel pin","roll pin"],"crossSector":true,"size":"core","sources":[{"id":"iso-273","title":"ISO 273:1979 Fasteners — Clearance holes for bolts and screws","url":"https://www.iso.org/standard/4183.html","accessed":"2026-09-03"},{"id":"iso-4762","title":"ISO 4762:2004 Hexagon socket head cap screws (head dimensions)","url":"https://www.iso.org/standard/34460.html","accessed":"2026-09-03"},{"id":"iso-10642","title":"ISO 10642:2019 Hexagon socket countersunk head screws","url":"https://www.iso.org/standard/76437.html","accessed":"2026-09-03"},{"id":"iso-262","title":"ISO 262:1998 ISO general purpose metric screw threads — selected sizes (tap-drill = major − pitch)","url":"https://www.iso.org/standard/4167.html","accessed":"2026-09-03"},{"id":"iso-8734","title":"ISO 8734:1997 Parallel pins of hardened steel (dowel pins, m6)","url":"https://www.iso.org/standard/16151.html","accessed":"2026-09-03"},{"id":"din-471","title":"DIN 471 Retaining rings for shafts (groove dimensions)","url":"https://www.din.de/","accessed":"2026-09-03"},{"id":"iso-4032","title":"ISO 4032:2012 Hexagon regular nuts, style 1 (across-flats)","url":"https://www.iso.org/standard/56617.html","accessed":"2026-09-03"},{"id":"protolabs-threads","title":"Protolabs design tips — threaded holes, inserts and thread engagement","url":"https://www.protolabs.com/resources/design-tips/","accessed":"2026-09-03"},{"id":"cnc-cookbook-heatset","title":"Heat-set insert supplier data (McMaster-Carr 94180A series hole sizes)","url":"https://www.mcmaster.com/products/heat-set-inserts/","accessed":"2026-09-03"}],"entries":[{"id":"clearance-holes-metric","kind":"fastener","tier":1,"title":"Metric clearance holes (ISO 273 fine / medium / coarse)","summary":"Clearance ⌀ medium series: M2 2.4, M2.5 2.9, M3 3.4, M4 4.5, M5 5.5, M6 6.6, M8 9.0, M10 11.0, M12 13.5 mm. Fine is ~0.2 mm tighter (M3 3.2, M6 6.4), coarse ~0.4 mm looser (M3 3.6, M6 7.0). Use medium unless told otherwise.","applies":[],"value":{"table":[{"size":"M2","fine":2.2,"medium":2.4,"coarse":2.6},{"size":"M2.5","fine":2.7,"medium":2.9,"coarse":3.1},{"size":"M3","fine":3.2,"medium":3.4,"coarse":3.6},{"size":"M4","fine":4.3,"medium":4.5,"coarse":4.8},{"size":"M5","fine":5.3,"medium":5.5,"coarse":5.8},{"size":"M6","fine":6.4,"medium":6.6,"coarse":7},{"size":"M8","fine":8.4,"medium":9,"coarse":10},{"size":"M10","fine":10.5,"medium":11,"coarse":12},{"size":"M12","fine":13,"medium":13.5,"coarse":14.5},{"size":"M16","fine":17,"medium":17.5,"coarse":18.5}],"unit":"mm"},"basis":"ISO 273 table; medium series is what cad_drill_hole type 'clearance' cuts","sources":["iso-273"],"tags":["clearance","hole","bolt","metric"]},{"id":"tap-drills-metric-coarse","kind":"fastener","tier":1,"title":"Tap-drill diameters, metric coarse","summary":"Tap drill = major − pitch: M2 1.6, M2.5 2.05, M3 2.5, M4 3.3, M5 4.2, M6 5.0, M8 6.8, M10 8.5, M12 10.2, M16 14.0 mm. Model a tapped hole as its tap-drill cylinder plus a callout; never model the helix.","applies":[],"value":{"table":[{"size":"M2","pitch":0.4,"tapDrill":1.6},{"size":"M2.5","pitch":0.45,"tapDrill":2.05},{"size":"M3","pitch":0.5,"tapDrill":2.5},{"size":"M4","pitch":0.7,"tapDrill":3.3},{"size":"M5","pitch":0.8,"tapDrill":4.2},{"size":"M6","pitch":1,"tapDrill":5},{"size":"M8","pitch":1.25,"tapDrill":6.8},{"size":"M10","pitch":1.5,"tapDrill":8.5},{"size":"M12","pitch":1.75,"tapDrill":10.2},{"size":"M16","pitch":2,"tapDrill":14}],"unit":"mm"},"basis":"ISO 262 coarse pitches; ~75 % thread engagement drill","sources":["iso-262"],"tags":["tap","thread","drill","metric"]},{"id":"counterbore-shcs-iso-4762","kind":"fastener","tier":1,"title":"Counterbore for socket head cap screws (ISO 4762)","summary":"Counterbore ⌀ / depth for SHCS (DIN 974-1, head flush): M3 6.5/3, M4 8/4, M5 10/5, M6 11/6, M8 15/8, M10 18/10, M12 20/12 mm — depth = head height k; add 0.5–1 mm if the head must sit below the surface. Through hole = medium clearance.","applies":[],"value":{"table":[{"size":"M3","headDia":5.5,"headHeight":3,"cboreDia":6.5,"cboreDepth":3},{"size":"M4","headDia":7,"headHeight":4,"cboreDia":8,"cboreDepth":4},{"size":"M5","headDia":8.5,"headHeight":5,"cboreDia":10,"cboreDepth":5},{"size":"M6","headDia":10,"headHeight":6,"cboreDia":11,"cboreDepth":6},{"size":"M8","headDia":13,"headHeight":8,"cboreDia":15,"cboreDepth":8},{"size":"M10","headDia":16,"headHeight":10,"cboreDia":18,"cboreDepth":10},{"size":"M12","headDia":18,"headHeight":12,"cboreDia":20,"cboreDepth":12}],"unit":"mm"},"basis":"ISO 4762 head dk/k with DIN 974-1 counterbore; the same table cad_drill_hole type 'counterbore' cuts (ops/holes.js)","sources":["iso-4762","iso-273"],"tags":["counterbore","shcs","cap screw"]},{"id":"countersink-iso-10642","kind":"fastener","tier":1,"title":"Countersink for flat-head socket screws (ISO 10642, 90°)","summary":"90° countersink, theoretical head ⌀ dk: M3 6.3, M4 8.4, M5 10.4, M6 12.6, M8 17.3, M10 20.0, M12 24.0 mm — what cad_drill_hole type 'countersink' cuts. Head height k: M3 1.9, M4 2.5, M5 3.1, M6 3.7, M8 5.0 mm; never countersink a wall thinner than k.","applies":[],"value":{"table":[{"size":"M3","dk":6.3,"k":1.86},{"size":"M4","dk":8.4,"k":2.48},{"size":"M5","dk":10.4,"k":3.1},{"size":"M6","dk":12.6,"k":3.72},{"size":"M8","dk":17.3,"k":4.96},{"size":"M10","dk":20,"k":6.2},{"size":"M12","dk":24,"k":7.44}],"unit":"mm"},"basis":"ISO 10642 theoretical dk and k at 90°; matches ops/holes.js CSK table","sources":["iso-10642"],"tags":["countersink","flat head","csk"]},{"id":"thread-engagement-by-material","kind":"rule","tier":1,"title":"Minimum thread engagement by tapped material","summary":"Tapped-hole depth as a multiple of the screw diameter: steel 1.0×d, cast iron/brass 1.5×d, aluminium 2.0×d, plastics 2.5–3.0×d (or use an insert). Add 2–3 pitches of tap-drill depth beyond the thread for a blind hole.","applies":[],"value":{"table":[{"material":"steel","engagement":1},{"material":"cast iron","engagement":1.5},{"material":"brass","engagement":1.5},{"material":"aluminium","engagement":2},{"material":"plastic","engagement":2.5}],"unit":"ratio","note":"× nominal diameter"},"basis":"Screw should fail before the internal thread strips. cad_fastener sizes a tapped joint's engagement from this table; cad_fastener_audit flags a shortfall as a floating-bolt finding.","sources":["protolabs-threads"],"tags":["thread","engagement","depth","tapped"]},{"id":"edge-distance-holes","kind":"rule","tier":1,"title":"Hole edge distance","summary":"Keep the hole centre ≥ 1.5×⌀ from any edge (≥ 2×⌀ for loaded bolts or sheet metal), and ≥ 2×⌀ between hole centres. Closer than this the ligament tears out or the punch/drill wanders.","applies":[],"value":{"min":1.5,"typical":2,"unit":"ratio","note":"centre-to-edge ÷ hole diameter"},"basis":"Ligament strength and tool wander; sheet-metal shops publish 2× as the floor. cad_fastener_audit does not check edge distance; it stays a design-time call (or the fastener rules' ≥1.5×d / ≥3×d rules of thumb, CADSF-1428).","sources":["protolabs-threads"],"tags":["edge distance","hole","spacing"]},{"id":"heat-set-inserts-metric","kind":"fastener","tier":1,"title":"Heat-set threaded inserts for plastic and 3D prints","summary":"Pilot hole ⌀ / min depth for brass heat-set inserts: M2 3.2/4.0, M2.5 3.6/5.0, M3 4.0/5.5, M4 5.6/7.5, M5 6.4/9.0, M6 8.0/12.0 mm. Boss OD ≥ 2× insert OD; for FDM print the hole 0.1–0.2 mm under and let the insert form it.","applies":["3d print","injection moulded housing"],"value":{"table":[{"size":"M2","holeDia":3.2,"depth":4,"insertOD":3.5},{"size":"M2.5","holeDia":3.6,"depth":5,"insertOD":4},{"size":"M3","holeDia":4,"depth":5.5,"insertOD":4.6},{"size":"M4","holeDia":5.6,"depth":7.5,"insertOD":6.3},{"size":"M5","holeDia":6.4,"depth":9,"insertOD":7.1},{"size":"M6","holeDia":8,"depth":12,"insertOD":8.7}],"unit":"mm"},"basis":"Supplier tapered-insert hole tables (McMaster 94180A); depth = insert length + 1 mm","sources":["cnc-cookbook-heatset"],"tags":["insert","heat-set","plastic","3d print","boss"]},{"id":"dowel-pin-holes","kind":"fastener","tier":1,"title":"Dowel pin holes (ISO 8734 m6 pins)","summary":"Press-fit side: ream to H7 in the part the pin lives in (⌀3 H7 = 3.000–3.010); slip side: F7 or a 0.02–0.05 mm oversize (⌀3.02). Sizes stocked: 2, 3, 4, 5, 6, 8, 10, 12 mm. Model as the nominal cylinder; the fit is a callout.","applies":["fixture","housing halves","mating plates"],"value":{"options":[2,3,4,5,6,8,10,12],"unit":"mm"},"basis":"ISO 8734 pins are m6 (+0.004/+0.012 on 3 mm); H7 hole gives a light press","sources":["iso-8734"],"tags":["dowel","pin","locating","fit"]},{"id":"nut-pocket-hex","kind":"fastener","tier":1,"title":"Hex nut pocket (captive nut) dimensions","summary":"ISO 4032 across-flats: M2 4, M2.5 5, M3 5.5, M4 7, M5 8, M6 10, M8 13, M10 16 mm; thickness M3 2.4, M4 3.2, M5 4.7, M6 5.2, M8 6.8 mm. Pocket = AF + 0.2 mm (0.3–0.4 for FDM), depth = thickness + 0.3 mm.","applies":["3d print","plastic housing","extrusion bracket"],"value":{"table":[{"size":"M2","af":4,"thick":1.6},{"size":"M2.5","af":5,"thick":2},{"size":"M3","af":5.5,"thick":2.4},{"size":"M4","af":7,"thick":3.2},{"size":"M5","af":8,"thick":4.7},{"size":"M6","af":10,"thick":5.2},{"size":"M8","af":13,"thick":6.8},{"size":"M10","af":16,"thick":8.4}],"unit":"mm"},"basis":"ISO 4032 style 1 s and m; clearance so the nut drops in","sources":["iso-4032"],"tags":["nut","pocket","captive","hex"]},{"id":"retaining-ring-groove-din-471","kind":"fastener","tier":1,"title":"Shaft retaining-ring groove (DIN 471)","summary":"Groove ⌀ / width for external circlips: shaft 6 → 5.7/0.8, 8 → 7.6/0.9, 10 → 9.6/1.1, 12 → 11.5/1.1, 15 → 14.3/1.1, 20 → 19.0/1.3, 25 → 23.9/1.3, 30 → 28.6/1.6 mm. The width is the ring's, not yours — do not snap it to a blade.","applies":["shaft","axle","pin"],"value":{"table":[{"shaft":6,"grooveDia":5.7,"width":0.8},{"shaft":8,"grooveDia":7.6,"width":0.9},{"shaft":10,"grooveDia":9.6,"width":1.1},{"shaft":12,"grooveDia":11.5,"width":1.1},{"shaft":15,"grooveDia":14.3,"width":1.1},{"shaft":20,"grooveDia":19,"width":1.3},{"shaft":25,"grooveDia":23.9,"width":1.3},{"shaft":30,"grooveDia":28.6,"width":1.6}],"unit":"mm"},"basis":"DIN 471 d2 and m; cad_shaft_groove cuts it","sources":["din-471"],"tags":["circlip","retaining ring","groove","shaft"]},{"id":"screw-boss-plastic","kind":"feature","tier":1,"title":"Self-tapping screw boss in moulded plastic","summary":"Boss OD = 2.0–2.5× screw ⌀, pilot hole = 0.8× thread OD (M3 thread-forming: ⌀2.5 hole, ⌀6.5–7 boss), depth ≥ 2× screw ⌀, boss wall ≤ 60 % of nominal wall at the root, 0.5° draft inside, 1 mm counterbore at the mouth to stop the top splitting.","applies":["injection moulded housing","consumer product"],"value":{"typical":2.25,"unit":"ratio","note":"boss OD ÷ screw diameter"},"basis":"Thread-forming screw supplier guidance; sink marks above 60 % wall","sources":["protolabs-threads"],"tags":["boss","screw","plastic","moulding"],"check":{"process":"injection_molding","rule":"max_rib_thickness_ratio"}},{"id":"washer-sizes-iso-7089","kind":"fastener","tier":1,"title":"Plain washer sizes (ISO 7089 normal series)","summary":"ID/OD/thickness: M3 3.2/7/0.5, M4 4.3/9/0.8, M5 5.3/10/1.0, M6 6.4/12/1.6, M8 8.4/16/1.6, M10 10.5/20/2.0, M12 13/24/2.5 mm. Counterbores meant to take a washer need the OD + 1 mm.","applies":[],"value":{"table":[{"size":"M3","id":3.2,"od":7,"t":0.5},{"size":"M4","id":4.3,"od":9,"t":0.8},{"size":"M5","id":5.3,"od":10,"t":1},{"size":"M6","id":6.4,"od":12,"t":1.6},{"size":"M8","id":8.4,"od":16,"t":1.6},{"size":"M10","id":10.5,"od":20,"t":2},{"size":"M12","id":13,"od":24,"t":2.5}],"unit":"mm"},"basis":"ISO 7089 normal series","sources":["iso-4032"],"tags":["washer"]},{"id":"unc-unf-tap-and-clearance","kind":"fastener","tier":1,"title":"Inch fasteners: UNC tap drills and clearance","summary":"UNC tap drill / close clearance: #4-40 0.089/0.116, #6-32 0.107/0.144, #8-32 0.136/0.172, #10-24 0.150/0.201, 1/4-20 0.201/0.257, 5/16-18 0.257/0.323, 3/8-16 0.313/0.386, 1/2-13 0.422/0.516 in. Published in inches; keep them in inches.","applies":["north america"],"value":{"table":[{"size":"#4-40","tapDrill":0.089,"clearance":0.116},{"size":"#6-32","tapDrill":0.107,"clearance":0.144},{"size":"#8-32","tapDrill":0.136,"clearance":0.172},{"size":"#10-24","tapDrill":0.15,"clearance":0.201},{"size":"1/4-20","tapDrill":0.201,"clearance":0.257},{"size":"5/16-18","tapDrill":0.257,"clearance":0.323},{"size":"3/8-16","tapDrill":0.313,"clearance":0.386},{"size":"1/2-13","tapDrill":0.422,"clearance":0.516}],"unit":"in"},"basis":"ASME B1.1 / B18.2.8 close-fit clearance","sources":["protolabs-threads"],"tags":["unc","inch","tap","clearance"]},{"id":"blind-hole-drill-point-allowance","kind":"rule","tier":1,"title":"Blind hole: drill-point and tap run-out allowance","summary":"A 118° drill leaves a cone 0.3×⌀ deep; a tap needs 2–3 pitches of unthreaded hole below the last full thread. So a blind M6 tapped 12 deep needs the tap drill 12 + 3 = 15 deep plus the 1.5 mm point — say 16.5 mm to the cone tip.","applies":[],"value":{"typical":0.3,"unit":"ratio","note":"drill-point depth ÷ diameter"},"basis":"118° point geometry; tap chamfer length","sources":["protolabs-threads"],"tags":["blind","drill point","tap","depth"]},{"id":"lead-in-chamfer","kind":"feature","tier":1,"title":"Lead-in chamfer on holes and pins","summary":"Put a 0.5 × 45° chamfer (0.3 on holes under ⌀3, 1.0 over ⌀12) at the mouth of every tapped or press-fit hole and on the end of every pin: it starts the tap square and guides the press. Cheap in every process.","applies":[],"value":{"min":0.3,"typical":0.5,"max":1,"unit":"mm"},"basis":"Tap start and pin alignment; deburr in the same operation","sources":["protolabs-threads"],"tags":["chamfer","lead-in","deburr"]},{"id":"cad-fastener-seated-not-floating","kind":"process","tier":1,"title":"cad_fastener places it, cad_fastener_audit proves it seated","summary":"cad_fastener derives bolt length from grip + engagement (steel 1×d, aluminium 1.5-2×d, cast iron 1.25×d) using the same station table that cuts the hole; cad_fastener_audit must return zero findings for head bearing, engagement and protrusion before a bolted assembly ships.","applies":["assembly","bolted joint","fastener QA"],"basis":"V12 fastener seat audit baseline (tools/v12/fastener_audit.js, HEAD 0fae7ced): 355 fasteners measured, 112 seated, 243 not (CADSF-1422/1423/1424) — no fastener in NativeCAD output floats (CADSF-1428).","sources":[],"tags":["cad_fastener","cad_fastener_audit","bolt","bolt length","engagement","floating bolt","floating","stud","screw","nut","seated"]}]}