GHaas G-Code Field Guide Get the book

Haas Mill · G-code

G12 Circular Pocket Milling Clockwise

A Haas canned cycle that mills a round pocket from the centre out. G12 cuts clockwise, G13 counter-clockwise.

Updated · by Ethan Reynolds

What G12 does on a Haas mill

G12 and G13 rough and finish a circular pocket from a single line. Position the tool over the pocket centre, then give the radius, the depth and the cutter comp offset. With K and Q the cycle starts at radius I and steps out by Q until it reaches the finished radius K.

G13 (counter-clockwise) gives a climb cut on the pocket wall with a standard right-hand tool, which is why most programmers reach for G13 more often than G12.

G12 format

AddressMeaning
DTool radius/diameter offset number (required)
IRadius of first circle (or finish radius if no K)
KFinished radius
QRadial step-over
ZDepth of cut
LRepeats for multiple Z steps (with G91 Z)
FFeed rate

G12 example program

G00 X2. Y1.5 (pocket centre)
Z0.1
G01 Z0. F15.
G13 G91 Z-0.25 I0.25 K1. Q0.2 D01 L3 F20.
G90 G00 Z1.

⚠ Watch out

The cycle uses the D offset to stay on size. A missing or wrong diameter value in the D register gives an oversize pocket or a gouge. Start with the tool already at the pocket centre.

Related codes

G12 questions

Does G12/G13 need cutter compensation?

It needs a D tool offset so the control knows the cutter size. You do not command G41/G42 yourself.

Which is climb milling, G12 or G13?

With a standard right-hand cutter, G13 (counter-clockwise) climb mills the pocket wall.

Independent reference. Not affiliated with, sponsored by or endorsed by Haas Automation, Inc. Haas is a trademark of its respective owner. Always confirm codes against your machine's operator manual — options and settings vary by model and software version.