We use technical and security cookies and, only if you accept, analytics with no cross-site tracking. More in the Cookie policy and Privacy policy.
We use first-party cookies and technical storage to make the site work, Google reCAPTCHA security technology and, only if you accept, Vercel analytics (no cookies, no cross-site tracking). You can accept or reject analytics; both options are equivalent and you can change your choice at any time. More info: Cookie policy, Privacy policy, Legal notice and Terms and conditions.
G81 is the simplest drilling canned cycle: the tool rapids down to the R plane, drills at feed to the Z bottom and pulls out in rapid, with no dwell and no pecking. It is modal, so every following block with a new X or Y repeats the hole at that position, and G80 cancels it. For flat-bottomed holes you use G82 (it adds a dwell) and for deep holes G83 (it pecks and clears the chips).
For reference only: syntax changes with the control, the post-processor and the machine parameters. Check the official manual and run a simulation before cutting. Legal notice.
With G99 the tool returns to the R plane between holes, which is the fast way; with G98 it goes back up to the initial plane, which is what you need when there are clamps or steps between holes. K repeats the cycle in incremental mode.
Haas (milling)
G99G81X20.Y20.Z-18.R2.F180L4
Same syntax as Fanuc, but repeats are written with L instead of K, and they only make sense in G91 as well. On Haas the cycle inherits the modal F just like on Fanuc.
Siemens 840D / 828D
CYCLE81(50, 0, 2, -18)
Siemens does not use G81: the equivalent cycle is CYCLE81 and the parameters are positional (retract plane, reference plane, safety clearance and final or relative depth). Positioning over each hole is done beforehand or with MCALL.
Heidenhain TNC (Klartext)
CYCLDEF200TALADRADO
Cycle 200 defines the safety clearance (Q200), the depth (Q201), the feedrate (Q206) and the plunging depth (Q202). It is run with CYCL CALL at each position or with a point pattern cycle.
Address letters used with it
Letter
What it sets
Unit
X Y
Hole position. Every new block with an X or a Y repeats the whole cycle at that position until G80 cancels it.
mm / in
Z
Hole bottom: absolute dimension under G90, incremental distance from the R plane under G91.
mm / in
R
Reference plane: the height where the tool switches from rapid to feed, and the one it returns to between holes under G99. The usual value is 2 or 3 mm above the face.
mm / in
F
Drilling feedrate. It is modal: if you leave it out, the cycle inherits the last F in the program.
mm/min under G94
K / L
Cycle repeats in incremental mode, for rows of evenly spaced holes. K on Fanuc, L on Haas; K0 or L0 store the cycle without running it.
integer
Worked example
Four 5 mm through holes in a 15 mm plate, with a 118-degree point drill. The Z bottom has to include the height of the drill point (around 1.5 mm on a 5 mm drill) plus a couple of millimeters of breakout, hence the Z-18. The spotting was done in the previous operation.
G91G28Z0.
( Z to the reference point in incremental before the change. )
T4M06
( 5 mm drill. )
G90G54G00X20.Y20.
( Absolute, work offset and rapid over the first hole with Z still up. )
G43H04Z25.M03S2400
( T4 length offset and spindle on. Z25 is the initial plane it will return to under G98. )
M08
( Coolant on. )
G99G81Z-18.R2.F180
( Starts the cycle at the current position: rapids down to Z2, drills at feed to Z-18 and returns in rapid to Z2 because G99 is active. )
X60.
( Second hole. Only the new dimension is needed: the cycle repeats in full with the same Z, R and F. )
Y50.
( Third hole. )
G98X20.
( Fourth hole, now under G98: on the way out it goes up to the initial plane Z25, so the next traverse clears the clamp. )
G80G00Z25.M09
( G80 cancels the cycle. Without it any later block with an X or a Y would drill again; cancel it before any rapid move. )
G81 is for short holes, up to about three diameters deep, where the chips come out on their own through the drill flutes. Also for spotting with a spot drill, for shallow countersinking and for drilling material that makes short chips. As soon as the hole gets deeper or the material makes stringy chips, the drill packs up and you have to move to G83, which pulls it out of the hole on every peck. If the bottom has to be clean and flat, G82 adds a dwell before retracting.
How it works with R, G98/G99 and G80
The cycle hangs off three heights: the initial plane (where Z was when the cycle started), the R plane and the Z bottom. G99 sends the tool back to the R plane between holes, which saves time, and G98 back to the initial plane, which is what you need when the traverse crosses over a clamp, a vise jaw or a step. The cycle stays active until G80, and G80 has to be written before any rapid move and before any tool change.
What it controls and what is left to you
The control takes care of the sequence and of the approach speeds, but the real depth is yours: in a through hole the Z has to include the height of the drill point, which on a 118-degree point is roughly 30 percent of the diameter, plus a breakout margin. The feed is yours too, and since it is modal it can be inherited from an earlier block without you noticing. And the R plane decides how much rapid travel there is on every hole: setting it too high multiplies cycle time for nothing.
Mistakes that cost you a part (or a tool)
Putting the R plane below the face of the part or below a clamp: the move down to R is a rapid and the drill hits the material at that speed.
Forgetting the G80 at the end: the next block carrying an X or a Y drills again, so a simple rapid positioning move in the following operation ends up as a hole where it should not be.
Staying in G99 with vise jaws, clamps or a step between holes: the traverse happens at R plane height and the drill hits them sideways.
Mixing up G90 and G91 in the cycle: in incremental the Z is the depth measured from the R plane and the R is measured from the current position, not from part zero.
Not adding the height of the drill point to the Z bottom in a through hole: the holes do not break through and somebody has to open them by hand.
Using G81 in holes deeper than three diameters: the chips do not clear, the drill packs up and it snaps. That job belongs to G83.
Leaving the F from the previous operation in: the cycle inherits the modal feedrate and the drill can go in at the feed of an end mill finishing pass.
Frequently Asked Questions (FAQ)
What is the difference between G81, G82 and G83?
G81 goes down, drills and comes out. G82 does the same but waits a dwell time P at the bottom, so the bottom cleans up on counterbores and flat-bottomed holes. G83 splits the depth into pecks of Q millimeters and comes out to the R plane on each one to clear the chips, which is what deep holes need.
How high do I put the R plane?
Between 2 and 3 mm above the face of the part on flat, well-clamped work. Higher only lengthens the cycle; lower leaves the drill no margin if the surface is not flat or the stock comes oversize. On an irregular surface it has to go above the highest point.
G98 or G99?
G99 as long as the path between holes is clear, because it only returns to the R plane and saves time. G98 when the traverse crosses a clamp, a vise jaw or a boss, because it goes up to the initial plane. You can switch between the two from hole to hole inside the same cycle.
How do I repeat the cycle at several holes?
Just write blocks with the new X and Y dimensions: the whole cycle repeats at each position. For evenly spaced rows you can use K on Fanuc or L on Haas, but they only work in incremental mode: in G90 the control drills the same hole in the same place.
How do I work out the Z bottom of a through hole?
Part thickness plus the height of the drill point plus 1 to 2 mm of breakout. For a standard 118-degree point, the point height is around 30 percent of the diameter: on a 5 mm drill that is about 1.5 mm.