Threading and thread measuring
How do you calculate thread depth and infeed for CNC threading?
Technical review pending. Formulas and values are cited. This notice comes down after a machinist review.
External thread depth is 0.613435 x P, so 1/2-13 is 0.0472 in deep on the radius. Split that depth so each pass removes about the same chip area: pass depth = first depth x sqrt(pass number).
Source: Machinery's Handbook (thread cutting); ASME B1.1; ISO 68-1. Thread depth is a starting point; check the finished thread with wires or a gauge.
Thread depth and infeed pass calculator
Thread depth (radial)
in
h = 0.613435 x P = 0.613435 x 0.0769 = 0.0472 in
0.0944 in on X (diameter). Final X 0.4056 in (10.30 mm). Compound travel at 29.5°: 0.0542 in. Lead 0.0769 in, so F0.0769 in feed per rev (G99).
First pass depth (radial)
in
d_1 = h / sqrt(N) = 0.0472 / sqrt(8) = 0.0167 in
| Pass | Cumulative depth (in) | This pass (in) | X diameter (in) |
|---|---|---|---|
| 1 | 0.0167 | 0.0167 | 0.4666 |
| 2 | 0.0236 | 0.0069 | 0.4528 |
| 3 | 0.0289 | 0.0053 | 0.4422 |
| 4 | 0.0334 | 0.0045 | 0.4333 |
| 5 | 0.0373 | 0.0039 | 0.4254 |
| 6 | 0.0409 | 0.0036 | 0.4183 |
| 7 | 0.0441 | 0.0033 | 0.4117 |
| 8 | 0.0472 | 0.0030 | 0.4056 |
Depths are radial. X is on diameter, as a Fanuc-style lathe programs it. Add a spring pass at the final X.
Maximum RPM for the Z feed
RPM
RPM max = Fz / L = 100 / 0.0769 = 1,300 RPM
The formulas
Pitch, lead and feed
P = 1 / TPI; L = P x starts; F = L
| Symbol | Meaning | Unit |
|---|---|---|
| P | Pitch (metric threads are called out by pitch) | in or mm |
| TPI | Threads per inch | 1/in |
| L | Lead: axial advance per revolution | in or mm |
| F | Feed per revolution on a Fanuc-style lathe in G99 | in/rev or mm/rev |
Thread depth and diameters
h = 0.613435 x P (external); X = D - 2 x h; h = 0.541266 x P (internal); D1 = D - 1.082532 x P
| Symbol | Meaning | Unit |
|---|---|---|
| h | Radial thread depth: to the rounded root (external) or basic (internal) | in or mm |
| D | Major diameter | in or mm |
| X | Final diameter of an external thread | in or mm |
| D1 | Internal minor diameter: bore to it, then thread out to D | in or mm |
Constant-volume infeed
d_n = d_1 x sqrt(n); d_1 = h / sqrt(N); N = (h / d_1)^2, rounded up
| Symbol | Meaning | Unit |
|---|---|---|
| d_n | Cumulative radial depth after pass n | in or mm |
| d_1 | First pass depth | in or mm |
| n | Pass number, 1 to N | none |
| N | Number of passes | none |
Compound infeed, RPM limit and helix angle
compound travel = h / cos(A); RPM max = Fz / L; tan(lambda) = L / (pi x E)
| Symbol | Meaning | Unit |
|---|---|---|
| A | Compound angle: 29.5° gives x 1.1490, 30° gives x 1.1547 | ° |
| Fz | Machine maximum Z feed | IPM or mm/min |
| RPM max | Highest spindle speed the Z axis can follow at this lead | RPM |
| lambda | Helix (lead) angle | ° |
| E | Pitch diameter | in or mm |
Worked example: 1/2-13 external, 8 passes
1/2-13 UNC external thread, single start, radial infeed, 8 passes, 0.5000 in major diameter.
- Pitch: P = 1 / 13 = 0.0769 in.
- Depth: h = 0.613435 x 0.076923 = 0.0472 in.
- First pass: d_1 = 0.0472 / sqrt(8) = 0.0472 / 2.8284 = 0.0167 in.
- Cumulative depths: 0.0167, 0.0236, 0.0289, 0.0334, 0.0373, 0.0409, 0.0441, 0.0472 in.
- Final X: 0.5000 - 2 x 0.0472 = 0.4056 in.
- Compound at 29.5°: 0.0472 x 1.1490 = 0.0542 in of compound travel.
- Helix angle at the basic pitch diameter (0.4500 in): atan(0.0769 / (3.1416 x 0.4500)) = 3.11°.
Result: 0.0472 in deep, first pass 0.0167 in, final X 0.4056 in (10.30 mm). Final X here comes from the 0.5000 in basic major. The G92 example starts from the class 2A maximum major, 0.4985 in, so its final X is 0.4041 in. A starting point; check the thread with wires or a ring gauge.
Worked example: M16 x 2 external, 10 passes
M16 x 2 external thread, single start, radial infeed, 10 passes.
- Depth: h = 0.613435 x 2 = 1.227 mm.
- First pass: d_1 = 1.227 / sqrt(10) = 1.227 / 3.1623 = 0.388 mm.
- Cumulative depths: 0.388, 0.549, 0.672, 0.776, 0.868, 0.950, 1.026, 1.097, 1.164, 1.227 mm.
- Final X: 16 - 2 x 1.227 = 16 - 2.454 = 13.55 mm.
Result: 1.227 mm deep, first pass 0.388 mm, final X 13.55 mm (0.5333 in).
Worked example: RPM limit from the Z feed
Machine max Z feed 100 IPM. 1/2-13, single start and 2-start.
- Single start: lead 0.0769 in. RPM max = 100 / 0.0769 = 1,300 RPM.
- 2-start: lead = 2 x 0.0769 = 0.1538 in, so F = 0.1538 IPR.
- RPM max = 100 / 0.1538 = 650 RPM.
Result: 1,300 RPM single start, 650 RPM 2-start. The cutting speed for the insert may set a lower limit.
Rules of thumb
Shop rules of thumb, not part of any standard:
- Set the compound at 29.5° for flank infeed, manual or CNC, so the trailing flank takes a light shave.
- Start Z clear of the part by 3 to 4 x the lead, so the axis is up to feed before the tool reaches the work.
- Finish with a spring pass at the final X, 0 added depth.
- Radial infeed for fine pitches and short runs; flank or modified flank infeed for coarse pitches and stringy materials.
Common mistakes
- Programming radial depth as an X move. A Fanuc-style lathe programs X in diameter: 0.0472 in radial is 0.0944 in on X.
- Using the internal depth (0.541266 x P) on an external thread, or the external depth on an internal thread.
- Feeding the pitch on a multi-start thread. F is the lead: 2 x P on a 2-start thread.
- Letting passes get too thin at the bottom. G76 on a Fanuc lathe has a minimum cutting depth word (Q); which block it goes in depends on the one-block or two-block format, so check the manual for your control.
- Treating the depth as final. The result is a starting point; the thread is right when it gauges or measures right over wires.
FAQ
How do you set the first depth of cut and the number of passes?
Use constant-volume infeed: d_1 = h / sqrt(N). A 1/2-13 external thread is 0.0472 in deep, so 8 passes start at 0.0167 in and each later pass takes less.
Why set the compound at 29.5° and not 30°?
Rule of thumb: the half degree keeps the trailing flank shaving lightly instead of rubbing. At 29.5°, compound travel is radial depth x 1.1490; at 30° it is x 1.1547.
How deep is a 1/2-13 thread?
0.0472 in radial (0.613435 x P), so X goes from 0.5000 to 0.4056 in on diameter.
What feed do you use for a 2-start thread?
Feed equals lead: 2 x 0.0769 = 0.1538 IPR for a 2-start 1/2-13. The RPM limit halves with it: 650 RPM at 100 IPM of Z feed.
How do you do flank infeed with G92?
Shift the Z start point each pass by the radial depth x tan(29.5°). At the full 0.0472 in depth of a 1/2-13 thread the Z start has moved 0.0472 x 0.5658 = 0.0267 in. The G92 example page shows the radial infeed program to start from.
Last updated