7 CNC G95 Techniques to Boost Machining Efficiency
This guide is for programmers and process engineers who run lathes, mill-turn centers and Swiss-style machines. It explains how feed per revolution changes chip load, where G95 earns its keep, and where G94 or G96 is still the right call. After reading it you can decide per operation instead of setting one mode for the whole program.

What G95 actually controls
Feed per revolution is a different unit, not a different machine.
Why feed per revolution holds chip load steady
G94 sets feed in millimeters or inches per minute. The number you type is the number the axis tries to hold, regardless of what the spindle is doing. That works well for milling, where the tool spins and the work stays still. On a lathe it hides a problem: every time spindle speed sags, the same feed rate means a bigger chip per tooth.
G95 flips the unit. Instead of millimeters per minute you command millimeters per revolution. A finish pass at 0.15 mm/rev stays at 0.15 mm/rev whether the spindle runs at 1,200 rpm or 900 rpm. Chip load follows spindle speed instead of fighting it.
Where does this matter most? Interrupted cuts, hard spots in castings, and bar stock with varying wall thickness. The spindle bogs down for a fraction of a second, and G94 quietly overloads the insert. With G95 that same moment produces a smaller chip, not a broken edge.
The trade-off is predictability. Feed per revolution gives you a stable cutting load, but the programmed feed in mm/min changes with rpm. If your cycle time estimate assumes a fixed feed rate, recompute it before you quote the job.
Structure the G95 block before the first cut
Most programs set G95 once near the top and never touch it again. That works until the tool change, when the next tool needs a different feed unit. Put the G95 call inside the tool block, right after the tool change and spindle start, so the mode is explicit for every operation.
Pair it with a spindle command in the same block. G97 S1200 M03 followed by G95 F0.2 leaves no ambiguity about which rpm the feed refers to. If the machine has a gear range, set the range before G95, not after.
Keep a comment on the line. A single note like (G95 rough OD, 0.25 mm/rev) saves the next programmer ten minutes of guessing. Shop-floor edits happen; make them readable.
- 1Call G95 per toolDo not rely on modal state across a tool change.
- 2Set rpm firstG97 with an explicit S value, then G95 with the feed.
- 3Cancel before millingG94 returns the machine to per-minute feed for live tooling.
Pair G95 with G96 without fighting it
G96 constant surface speed changes the spindle rpm as the tool moves across the diameter. On a facing pass from Ø120 mm down to Ø20 mm, the rpm climbs through the whole cut. With G95 the feed per revolution stays fixed, so the chip load stays fixed too. That is the combination most turning shops should default to.
The order matters. Set G96 with a surface speed and a max rpm clamp first, then G95 with the feed per revolution. If you reverse the order, some controls recalculate the feed and the first block runs at the wrong chip load.
Always set the G50 or G92 spindle clamp. Without it, a small diameter can push the spindle past its bearing limit. The clamp is not optional on a lathe running G96, and it is cheap insurance.
G95 and G96 together also calm down chatter on long shafts. As the part deflects and rpm dips, the feed drops with it, so the cutting force does not spike at the worst moment.
When to use G94, G95 or G96
Pick per operation, not per program.
| Mode | Unit | Best for | Avoid when |
|---|---|---|---|
| G94 | mm/min or in/min | Milling, live tooling, constant feed paths | Lathe turning with rpm variation |
| G95 | mm/rev or in/rev | Turning, drilling, tapping, threading | Live tooling on a mill-turn center |
| G96 | m/min surface speed | Facing and taper cuts on a lathe | Small diameters without an rpm clamp |
| G95 + G96 | mm/rev at constant surface speed | OD and face turning on steel and stainless | Parts too short to reach the clamped rpm |
Deep hole drilling with G95 pecking
Peck drilling depth is usually set in millimeters, and the feed is set per revolution. That combination is natural with G95. A 12 mm carbide drill in 4140 at 0.12 mm/rev and 1.2 mm peck depth clears chips without packing the flutes.
Watch the retract speed. Rapid retract out of a deep hole can drag chips back in and snap a drill. Many controls let you set a separate retract feed; if yours does, slow it down on holes deeper than four diameters.
Through-spindle coolant changes the math. With 70 bar coolant you can often double the peck depth and cut cycle time. Without it, keep pecks short and accept the extra retracts.
On stainless and titanium, drop the feed per revolution rather than the speed. A smaller chip is easier to evacuate than a hot, gummy one, and the drill lasts longer.
Thread milling and helical interpolation in G95
Thread milling on a mill-turn center often runs in G94 because the tool path is circular. Move the same operation to a lathe with a thread whirling head and G95 makes more sense: the feed per revolution ties directly to the thread pitch.
For a single-point threading cycle, the feed per revolution equals the pitch. An M16 × 2.0 thread runs at 2.0 mm/rev. No conversion, no rounding error, no surprise when the spindle speed changes between the first and last pass.
Helical interpolation for a threaded hole follows the same rule. Set the feed per revolution to the pitch, and let the control handle the axial advance. The result is a thread that gauges correctly on the first part.
One caution: thread milling with a multi-tooth cutter needs the feed per tooth, not per revolution. Divide the pitch by the number of effective teeth before you type the F value.
Adaptive G95 for variable stock
Castings, forgings and bar stock rarely arrive at a uniform size. A sand casting can vary by 1.5 mm on the same feature. With G94 that variation shows up as a chip load spike on the heavy side of the cut.
G95 does not remove the variation, but it decouples the feed from the spindle. If the spindle slows in a hard spot, the feed per revolution holds, and the chip stays in a safe range. The cut gets slower, not heavier.
For the first pass on a raw casting, program conservative values and let the spindle load meter tell you where to push. A 0.3 mm/rev roughing feed is aggressive on a uniform bar and reckless on a crusty casting.
Some controls offer adaptive feed control that reads spindle load and trims the feed. Combine it with G95 and you get two layers of protection: the feed scales with rpm, and the load loop trims the base value.
Tool wear compensation with feed per revolution
As an insert wears, the cutting edge rubs instead of shears. The usual fix is to raise the surface speed or drop the feed. With G95 the feed change is a single number: 0.2 mm/rev down to 0.16 mm/rev, and the chip thins across the whole cut.
Keep a wear log per tool and per material. A 4140 roughing insert might hold 0.25 mm/rev for 40 parts, then need 0.2 mm/rev for the next 20. That is a real production decision, not a guess.
Do not confuse feed compensation with offset compensation. Tool offsets correct the size; feed per revolution corrects the load. Adjusting the offset to fix a chipped edge just moves the problem to the next part.
On finishing passes, drop the feed per revolution before you drop the speed. Slower rpm with the same chip load gives a worse surface finish, not a better one.
Multi-axis and mill-turn operations
A mill-turn center switches between turning and milling in the same cycle. The B-axis or live tooling needs G94 for the milling portion; the turning portion wants G95. Switching modes inside the program is normal and expected.
Put the switch on its own line with a comment. G94 (milling) before the live tool engages, G95 (turning) before the turret indexes back. Any operator who reads the program can follow the logic.
For 5-axis work on a turn-mill, the feed per revolution applies only to the turning moves. Simultaneous 5-axis milling always uses per-minute feed, because the tool tip speed depends on the rotary axes, not the spindle.
Check the post-processor. A post that outputs G95 for every operation will produce bad code on the milling side. Verify the output before the first run, not after the scrap bin fills up.
What this means on the shop floor
The value of G95 is not the code itself. It is the consistency it gives you across a batch. When the chip load holds steady, tool life becomes predictable, and predictable tool life means fewer mid-run changes.
Start with two operations: OD roughing and deep hole drilling. Measure the cycle time and the insert life for a week. If both improve, move to threading and finishing.
At GreatLight we run 127 high-precision CNC machines including 16 simultaneous 5-axis centers and 16 mill-turn centers. Turning work in stainless, 4140 and 17-4PH is routine, and G95 is part of how we hold ±0.005 mm on a production run.
If you are quoting a turned or mill-turn part, send the drawing and the material. We return a quotation and a free DFM analysis within 12 hours.
G95 questions engineers ask
Does G95 work on a milling machine?
Only if the machine has a spindle encoder that reports rpm to the control. Most machining centers do, but the feed per revolution is not useful for milling because the tool has multiple teeth and the chip load depends on feed per tooth.
Use G94 for milling. Use G95 when the operation is a single-point cut that follows the spindle, such as turning, drilling or tapping.
Can I mix G94 and G95 in the same program?
Yes, and on a mill-turn center you should. G95 applies to the turning portion, G94 to the live tooling and any simultaneous milling.
Place each mode call on its own line, right before the operation that needs it. Never assume the mode from the previous operation is still correct.
What feed per revolution should I start with?
For roughing carbon steel with a coated carbide insert, 0.2 to 0.3 mm/rev is a normal starting range. Stainless and titanium run lower, often 0.1 to 0.2 mm/rev.
These are starting points. The insert manufacturer's data and the machine's load meter are the real limits.
How does G95 affect cycle time estimates?
The programmed feed per revolution stays constant, but the actual feed in mm/min changes with spindle rpm. Your cycle time estimate must use the rpm that the operation will actually run.
For a G96 facing pass, the rpm changes through the cut, so estimate with the average rpm, not the starting one.
Is G95 safe on a machine without a spindle clamp in G96?
No. G96 without a G50 or G92 clamp can overspeed the spindle at small diameters, and G95 will follow that overspeed with a matching feed.
Set the clamp before G96, and set G95 after the clamp is active.
Do you program G95 for medical and aerospace parts?
Yes, where the geometry is turned. Medical and aerospace work often uses stainless, titanium and 17-4PH, and G95 gives us a stable chip load on those materials.
Final inspection is 100% before shipment, with reports available on request.
Send a turned or mill-turn part for quotation
Upload your drawing and material spec. We return a quotation and a free DFM analysis within 12 hours, and production can start within 24 hours.
12-hour quoteFree DFM analysis100% inspectionNo minimum order quantity