← Back to CNC Programming

Single-Point Thread Programming

Single-point threading cuts a helical groove by synchronizing spindle rotation with tool feed. For a single-start thread, the feed per revolution must equal the pitch exactly. This page covers the geometry, the G76 cycle, and a worked M10×1.5 example.

Level: KScope: Haas lathe examples; metric diameter programmingPrerequisite: Turning Roughing and Finishing Cycles
After this lesson, you can:

Concept

A screw thread is a helical ridge wrapped around a cylinder. On a CNC lathe, a single-point threading tool moves along Z while the spindle rotates. The controller must keep the tool position synchronized with spindle angle so that every pass follows the same helix.

Pitch (P) is the distance between adjacent thread crests, measured along the axis. Lead (L) is the axial distance the tool advances in one full spindle revolution. For a single-start thread, pitch = lead. For a multi-start thread (two or more parallel helices), lead = pitch × number of starts.

Major diameter is the outer diameter of an external thread. Minor diameter (core diameter) is the diameter at the root. The radial thread depth determines how much material the tool removes on successive passes.

Why It Matters

This Haas teaching example uses G97 S500 to keep spindle speed constant, following the manufacturer's G76 example. F specifies the lead per revolution. The programmed lead does not change merely because RPM changes; synchronization, permitted modes and overrides must follow the specific controller manual. The G76 cycle automates the repeated motion, but setup and cycle settings remain the programmer’s responsibility. The line identifies the final minor diameter, total thread depth, first-pass depth, and feed (= lead).

How It Works

Thread Geometry: H, h3, and the 0.613 factor

The theoretical sharp 60° triangle has height:

H = (√3 / 2) × P ≈ 0.8660254 × P

Actual metric external threads (per ISO 68-1 / DIN 13 design profile) truncate the crest and root, leaving a smaller working radial height. The selected design geometry uses:

h3 = 17H / 24 ≈ 0.6134347 × P

This 0.61343 factor is documented in Hexagon Infoletter No. 37 (thread depth bolt h3 = 0.61343 P for metric DIN external thread design geometry). It applies to the ISO metric external thread design profile used in this page; other thread forms must be checked against their own standards or tooling references.

Worked Calculation: M10×1.5

Worked Calculation: M10×1.5
QuantityFormulaValue
Pitch Pgiven1.5 mm
Sharp triangle H0.8660254 × 1.51.299038 mm
Design thread depth h30.6134347 × 1.50.920152 mm
Minor diameter d310 − 2×0.9201528.159696 mm

For teaching, we round to K = 0.92 mm and X endpoint = 8.16 mm. The rounding introduces about 0.0003 mm of diameter difference — negligible for a programming example but not a 6g limit dimension.

G76 Threading Cycle (Haas lathe)

The single-line Haas G76 format:

Scope and entry contract: this is a Haas lathe fragment in metric diameter programming. G54 has its origin at the spindle axis and the prepared front face. T0101 is an external threading tool with verified geometry, wear and orientation. Stock, toolholder, chuck, spindle direction and the entire approach/return envelope have been checked. The part is already prepared to the drawing's major-diameter limit. Z3 is a classroom approach value, not a calculated synchronization distance. This fragment selects M23; Settings 95/96 must be recorded before evaluating the end geometry.

(FRAGMENT - ENTRY CONTRACT ABOVE IS REQUIRED)
G21 G18 G40 G80 G99
G54
T0101
G97 S500 M03
M23
G00 X11. Z3.
G76 X8.16 Z-20. K0.92 D0.2 F1.5
G00 X12.
G00 Z3.
M05

Reading the line:

The selected cycle plans multiple passes; the pass distribution also depends on its strategy and settings. Do not infer one universal decreasing-depth schedule from this abbreviated line. D0.2 is a teaching value — real first-pass depth depends on insert grade, material, coolant, and machine rigidity; follow the tool manufacturer's charts.

Illustration for G76 Threading Cycle (Haas lathe). Its dimensions and assumptions are explained in the adjacent lesson text.G76 Threading Cycle (Haas lathe) H = 0.866P h3 = 0.613P Same pitch: height comparison only.
Height comparison only: theoretical H vs working h3 on the same pitch. Actual crest/root profile is per ISO/DIN design.

Cycle Endpoint Is Not Usable Thread Length

Define three different quantities before assigning Z coordinates: the approach position, the cycle endpoint, and the drawing's required full-profile thread interval. The first is outside the face in this example; the second is a programmed motion limit; the third excludes incomplete entry and exit thread. Moving from Z3 to Z−20 spans 23 mm of axial travel, but it does not prove that the finished component contains 23 mm, or even 20 mm, of acceptable full-profile thread.

In the selected Haas cycle, M23 enables an exit chamfer and M24 disables it. Settings 95 and 96 control its size and angle. With pitch 1.5 mm and a classroom Setting 95 value of 1.0 thread, the nominal axial chamfer amount is 1.5 mm. If the endpoint remains Z−20, that withdrawal region starts nominally around Z−18.5. Do not describe the region through Z−20 as full-depth thread. This arithmetic illustrates the drawing problem; it is not a guarantee of a particular usable length on a real part.

Approach, full-profile requirement and runoutZ decreases from left to right. The approach is Z3, face is Z0, nominal chamfer start is Z minus 18.5 and cycle endpoint Z minus 20. The drawing must define the acceptable thread interval separately.Z3 approachZ0 faceZ−18.5 nominal runout startZ−20 endpointDrawing controls full-profile limits
The shaded end segment represents a nominal 1.5 mm runout. Drawing position is proportional to Z; the drawing must specify the actual usable thread interval.

If the drawing requires full-profile thread to Z−20, the process plan needs space beyond that location for the selected exit geometry. One arithmetic illustration moves the cycle endpoint to Z−21.5 for a 1.5 mm nominal runout; this is not permission to extend the existing program. Check the shoulder, relief groove, insert width, toolholder and workholding before deciding whether such a path is possible. An alternative relieved design needs its own dimensions and a verified retract. M24 does not create a relief groove and does not make a shoulder disappear.

Record entrance chamfer length separately as well. A lead-in move in air and an entry chamfer on the part are different features. The air move supports the selected machine's synchronization and acceleration requirements; the part chamfer affects where the thread reaches full form. Machine data, spindle speed and axial motion capability determine an adequate approach. The 3 mm classroom value must therefore be verified or replaced for the intended setup rather than copied as a universal threading rule.

Pitch vs Lead on Multi-Start Threads

For a double-start thread with P=1.5, the lead is 3.0 mm/rev, so F=3.0. The programmer must explicitly arrange the second start by the controller-specified phase or axial offset; it does not happen automatically. This is why F in G76 is always the lead, not the pitch — the programmer must account for multiple starts.

Entry state for the G76 example: G54 selected, tool geometry and wear offsets established, nose radius and orientation set, lead-in/retract space verified. The G76 and G32 listings are fragments, not interchangeable complete production programs.

Inspection Is by Gauge, Not by Minor Diameter Alone

The X8.16 endpoint is a design minor diameter for programming. Whether the thread accepts a mating part is decided by the ring or plug gauge specified on the drawing, which checks pitch diameter, flank condition, and fit. A measured minor diameter that looks right does not prove the thread is good, and a NO-GO entry must be interpreted under the drawing's gauge acceptance rule rather than assumed scrap on first contact.

Multi-Start Phase Shift

For a double-start thread, F becomes the lead (3.0 mm/rev for P1.5). The second helix is 180° out of phase with the first. How the programmer or controller sets that starting phase depends on the control; Haas G76 has a Q thread-start angle whose unit and range must be checked before use.

G76 Parameters in Detail

X is the final minor diameter in diameter mode. Z is the thread end. K is the radial thread height from the crest to the root of the truncated profile. D is the first-pass radial depth, chosen as a classroom assumption. F is the lead. The controller plans passes according to the selected strategy and settings; the short example does not specify a universal pass count. Do not confuse K (total depth) with D (first pass); they are separate numbers.

Why G97 and Not G96

Under synchronous feed, lead is the axial distance per spindle revolution and is set by F. Changing RPM changes the required axial speed and synchronization demand, not the programmed lead. This Haas teaching example uses G97 S500 before G76 per the manufacturer setup; verify the recommended spindle mode on the specific control.

Thread Inspection beyond the Minor Diameter

A thread gauge checks functional fit. The GO ring should assemble under hand force; NO-GO acceptance follows the drawing's gauge rule. Measuring the minor diameter with a caliper or micrometer does not replace the gauge, because pitch diameter and flank condition matter. Once a thread is overcut, material cannot be restored.

Insert Grades and Thread Pass Count

Number of passes depends on insert grade, material, and machine rigidity; this example does not prescribe it. Start from the tool catalog, then watch the first part for chatter, flank wear, and ring gauge fit.

Why the Major Diameter Slightly Below Nominal

External threads are typically turned a few hundredths below nominal major diameter to leave crest room and match tolerance classes. The example treats major as O10 for geometry teaching; on a real part, follow the drawing.

Thread Relief Groove

When a thread runs up to a shoulder, a relief groove under the thread lets the tool retract without rubbing the shoulder. Its width and diameter are specified on the drawing; program Z to that relief rather than guessing.

External vs Internal Thread Programming

In this diameter-mode programming, internal threading toward the bore wall uses a target X that increases (away from spindle axis); retract direction is verified against the controller. The G76 parameter signs and retract direction must match the controller; verify before running.

Checking Pitch on the First Part

Before trusting the cycle, measure pitch with a screw pitch gauge or compare with a known mating part. A wrong F produces threads that look shaped but do not assemble; pitch check catches it early.

When to Use a Threading Insert Holder with a Built-In Blade

Parting and threading share some holder geometry but the insert angles differ. Do not substitute a parting blade for a threading insert; the flank angles are wrong and the thread form will be off.

Why the First Pass Matters

The first threading pass sets how the insert bites. Too heavy a first pass overloads the corner; too light a pass rubs and work-hardens the surface. Start from the tooling catalog and watch the first chip form.

Thread Relief and Retract

A thread runout or relief groove lets the tool leave cleanly. Without one, the insert may drag on the shoulder at thread end.

When to Rework a Thread vs Scrap

If GO will not enter, the thread may be oversize or have burrs. Clean and re-measure before adding a pass. If NO-GO enters, material is already removed; that part is usually beyond correction. Check with the drawing's gauge rule before deciding.

Threading Insert and Grade Selection

Use the insert grade matched to the workpiece. Tool wear shows as flank wear, built-up edge, or poor finish. Replace the insert on a schedule, not after every thread.

Example

Example 1 — Single-start M10×1.5: At S500 RPM, the ideal synchronous axial feed is 500 × 1.5 = 750 mm/min. Use the controller’s documented threading override behaviour; do not alter the planned speed or synchronization settings while proving the cut.

Example 2 — Double-start M10×1.5 (pitch 1.5, lead 3.0): F=3.0 mm/rev. At S500, axial feed = 1500 mm/min. The programmer arranges the second start by the controller's specified phase or axial offset; do not assume the cycle shifts automatically.

Tolerance and inspection: In this teaching example we assume a 6g external thread, checked with a thread ring gauge (go/no-go). The mating internal thread would use 6H and a thread plug gauge — but always follow the tolerance class specified on your drawing. The ring gauge confirms functional acceptance; it does not verify every dimension on the drawing.

G32 — Single-Pass Threading (Manual)

A separate programming approach cuts threads pass by pass using G32 (constant lead threading). Each pass is a separate block. For an external M10×1.5 thread on Ø10 stock, the first cut starts just below the major diameter and takes a small radial bite. This two-pass geometry fragment additionally assumes a prepared relief encompassing Z−20 with sufficient axial width and radial depth for the insert and withdrawal. The selected tool/offset, G21/G18/G40/G54/G99, diameter mode and clear entry are already established. It does not demonstrate full thread completion or a shoulder exit:

G97 S500 M03
G00 X9.8 Z3.           (first pass: 0.1mm radial below Ø10)
G32 Z-20. F1.5         (cut thread at 1.5 mm/rev lead)
G00 X12.               (retract X clear)
Z3.                    (return Z to start)
X9.6                   (next pass: another 0.1mm radial deeper)
G32 Z-20. F1.5         (second pass)
G00 X12.
Z3.
... (further passes omitted; shown two passes only)

X9.8 means the tool cuts 0.1 mm radially below the Ø10 surface. X9.6 cuts another 0.1 mm deeper. The number of passes and depth per pass depend on tool material, insert grade, and material — follow the tooling catalog. G32 gives full control but is tedious; G76 automates the multi-pass strategy.

Threading on a Mill: Tapping vs Thread Milling

Tapping (G84 rigid tap cycle): A tap rotates and feeds synchronously. In G94 mode, F = pitch × RPM. For M10×1.5 at S500, F = 750 mm/min. The tap cuts the full thread form in one operation.

Thread milling: A threaded tool follows a helical interpolation path — one circular orbit around the hole, with one pitch of axial travel per orbit. The feed rate is based on feed per tooth, number of flutes, and the tool-center path speed, not simply F = lead × RPM. The 1.5 mm axial rise per orbit defines the pitch, but the programmed F is the tool-center feed around the circle. Thread milling is flexible for large holes and hard materials but requires CAM or careful helical math.

Common Threading Problems

Common Threading Problems
ProblemCheckCorrective direction
Ring gauge GO won't enterCheck pitch, setup, burrs, major diameter, then measure pitch diameterIf pitch diameter is too large, take one more light pass per tooling data; material already cut cannot be restored
NO-GO gauge entersPitch diameter may be over-cutCheck against the drawing's gauge acceptance rule; material already removed cannot be recovered
Off-pitch at startInsufficient verified approach or another synchronization/setup issueVerify the cause and provide enough lead-in for the control to sync; set it from acceleration/RPM data
Chatter / poor finishSpindle speed too high or tool wornReduce RPM, check insert condition
Tool breaksPass depth too aggressiveReduce first-pass depth per tooling catalog

Document the Thread-Length Decision

For a reviewable setup sheet, list the drawing's thread designation and tolerance class, the prepared major diameter, the desired full-form start and end, the actual G76 start and endpoint, and the selected chamfer or relief strategy. Then write the relevant machine settings beside the program revision. A reviewer can compare these entries with the physical drawing rather than infer them from a single Z word.

For example, the teaching line ending at Z−20 may be adequate for a component whose drawing explicitly allows its final 1.5 mm to be runout, but it cannot simply be reused where a gauge must engage full thread through that interval. A successful cycle completion message only confirms that execution ended; it does not inspect usable engagement, tolerance class or the surface. Check the required thread length and gauge result separately, and retain both records with the first-part inspection.

Common Mistakes

Practice

1. Single-start M12×1.75: what is F? Compute H and h3.

Show answer

F = 1.75 mm/rev (lead = pitch). H = 0.8660 × 1.75 = 1.5155 mm. h3 = 0.61343 × 1.75 = 1.0735 mm. Minor ≈ 12 − 2×1.0735 = 9.853 mm.

2. Given G76 K0.92 on a 60° metric thread, find P.

Show answer

P = 0.92 / 0.61343 = 1.4998 ≈ 1.5 mm. This confirms the M10×1.5 example.

3. A double-start thread has pitch 1.5. What is F in G76, and why?

Show answer

F = 3.0 mm/rev (lead = 2 × pitch). G76 feed is always the lead, so on a multi-start thread it is larger than the pitch. At S500, axial feed = 1500 mm/min.

4. The nominal runout is 1.5 mm and the cycle endpoint is Z−20. Where does nominal runout begin, and what cannot be inferred?

Show answer

Z−18.5. Neither the endpoint nor this subtraction certifies 20 mm of full-profile thread; entry geometry, runout, drawing limits and actual inspection still govern acceptance.

Sources