CNC Lathe | G90 Cycle | Turning ( Straight and Tapered )

G90 Cycle Introduction

In CNC lathe machines, G90 cycle is used to perform rough cutting (straight cutting) operations in the Z axis direction. As with other cycles, the cycle continues automatically until it reaches the measurements determined by the parameters used with the command. Unlike similar turning cycles, the G90 cycle is used for single pass roughing, linear profiles and turning of simple shapes. It is not used for complex profiles and surfaces.

Before going further, a reminder. Do not confuse G90 for lathes with G90 for machining centers. In turning, G90 is a lathe cycle, G90 is the absolute mode in milling:

G90 is absolute mode for milling, X and Z axes are absolute mode for turning
G91 is incremental mode for milling, U and W axes are incremental mode for turning

A cycle identified by G90 preparatory command is called the Straight Cutting Cycle (Box cycle). Its purpose is to remove excessive stock between the cutter start position and the coordinates specified by the X and the Z axes. Resulting cut is a straight turning or boring cut, normally parallel to the spindle centerline, and the Z-axis is the main cutting axis. As the cycle name suggests, G90 cycle is used primarily for removing stock in a rectangular fashion (box shape). The G90 cycle can also be used for a taper cutting.

G90 Cycle Format

G90 X(U).. Z(W).. F..
G90 X(U).. Z(W).. I.. F..
G90 X(U).. Z(W).. R.. F..


X = Diameter to be cut
Z = End of cut in Z position
I (R) = Distance and direction of the taper (I=0 or R=0 for straight cutting)
F = Cutting feedrate (usually in/rev or mm/rev)
  • In all formats, the designation of axes as X and Z is used for absolute programming, indicating the tool position from program zero.
  • The designation of axes as U and W is used for incremental programming, indicating actual travel distance of the tool from the current position.
  • The F address is cutting feedrate, normally in inches per revolution or millimeters per revolution.
  • The I address is used for taper cutting along the horizontal direction. It has an amount equivalent to one half of the distance from the diameter at taper end, to the diameter at taper beginning.
  • The R address replaces the I address, and is available on newer controls only – it’s purpose is the same.

To cancel G90 cycle, all that is necessary to do is to use any motion command – G00, G01, G02 or G03. Commonly, it will be G00 rapid motion command.

Explanation with Tool Path

G90 Cycle Examples

G90 CNC Program Example – 1 – Taper Cutting

G28 U0 W0;
G50 S2200 T0100;
G96 S200 M03;
G00 X61.0 Z2.0 T0101 M08;
G90 X55.0 W–42.0 F0.25;
Z-12.0 R-1.75;
Z-26.0 R-3.5;
Z-40 R-5.25;
G28 U0 W0;

G90 CNC Program Example – 2 – Taper Cutting

O006 ;
N315 G54;
N320 T0101;
N325 G99 F0.25;
N330 G50 S1800;
N335 G96 S100 M03;
N345 G00 X105 Z0 M08;
N350 G01 X–1.6;
N355 G00 X100 Z2;
N360 G90 X90. Z–50. F0.2 R–7.5;
N365 X80;
N370 X70;
N375 X60;
N380 G28 Z0.;
N385 M05 M09;
N390 M30;

G90 CNC Program Example – 3 – Straight Cutting

G28 U0 W0;
G50 S2000 T0100;
G96 S200 M03;
G00 X56.0 Z2.0 T0101 M08;
G90 X51.0 W-32.0 F0.25;
G28 U0 W0;

G90 CNC Program Example – 4 – Straight Cutting

G50 S2000;
G96 S200 M03;
G00 X65.0 Z3.0 T0101;
G90 X55.0 Z-20.0 F0.25;
G00 X200.0 Z200.0;

G90 CNC Program Example – 5 – Straight Cutting

CNC Lathe G90 Straight Cutting Cycle Example

G40 G0;
N315 G50 S2500;
N320 G96 S200 F0.25 M04;
N325 T0101 M08;
N330 G54;
N335 G00 X105 Z0;
N340 G01 X–1.6;
N345 G00 X100 Z5;
N350 G90 X95. Z–50. F0.25; ( For 72mm diameter )
N355 X90;
N360 X85;
N365 X80;
N368 X75;
N370 X72;
N375 G00 X72 Z5;
N380 G90 X67 Z–25 F0.25; ( For 44mm diameter )
N385 X62;
N390 X57;
N395 X52;
N400 X47;
N405 X44;
N410 G28 Z0.;
N415 M05 M09;
N420 M30;