Posted by: davidhayden | March 1, 2010

Proven Tips, Tools and Tactics: Understanding G00

Unlike the G01, G02 and G03 codes previously discussed, The G00 is not used for cutting. The G00 is strictly a positioning code. But not all G00 codes are a like.
Not all moves on a CNC machine are cutting moves. In fact, it is not uncommon that a CNC program will do a lot more positioning around the part than actually cutting material.
The G00 is the code used for non-cutting positioning moves.

Code Data

Code: G00 (for most new controls G0 is commonly used)
Modal: Yes
Group: 01
Action: Rapid positioning moves
ANSI Std: Yes
Requirements: Destination point.
Conflicting G Codes G01, G02/G03, G04, All Canned Cycles, Any other G code in Groups 00, 01 or 09

Description and How to Use G00

Rapid positioning moves are required to locate the tool or part prior to some cutting action. For example, if you want to drill a hole at X10 Y4, the first thing you have to do is move the tool to X10 Y4 before you initiate the drill cycle. And, you would not want to start drilling 5 inches above the work surface. So you would position the tool closer to the work surface while the machine is in G00 mode.

The G00 applies to all axis including rotary axis, tilt tables, nutating heads.

A G00 command tells the machine to move to the destination point as fast as it can without regard to feedrates. However not all machines move the same way and this an important consideration to keep in mind when programming rapid moves near obstacles.

Imagine you program a rapid move 5 inches along the X axis and 5 inches along the Y axis.

G94 – Sets the mode of the motion to be in inches per minute.
G00 X5 Y5 – Rapid move to point X5 Y5

If both axis have the same rapid rate of speed the tool will move at a 45 degree angle.

Simple enough. But now imagine you program a rapid move 10 inches along the X axis and 5 inches along the Y axis.

G94 – Sets the mode of the motion to be in inches per minute.
G00 X10 Y5 – Rapid move to point X10 Y5

At maximum speed for both axis, the machine will travel at a 45 degree angle for the first 5 inches along each axis, then move 5 inches along the X axis only.

Traveling along this dogleg is the fastest way to get to the programmed point. But, it also is a little harder to predict when trying to avoid obstacles.

The other possibility is that the machine could make the rapid move in a straight line instead of the dogleg. It is slightly slower, but a little easier to program rapid moves around obstacles.

When the factory sets up the CNC machine, they can set up the machine to do either straight line rapid moves or dogleg rapid moves. IT IS VERY IMPORTANT THAT YOU KNOW WHICH TYPE OF RAPID MOVES YOUR MACHINE IS GOING TO MAKE!

The style of rapid move also affects canned cycles. So when you are programming a series of holes around clamps or part features, you need to know how the machine is going to move. At 300 -1000 inches per minute, accidents can happen very quickly


While simply positioning from one point to another seems simple enough, like all CNC programming you must understand your control and program within it’s features and limitations. Here are a few things to remember when using the G0/G00 Command.

  • It is for positioning only, never try to cut using a G00.
  • G00 is modal. Once the machine is in rapid mode, it will be until you change it.
  • The rapid moves may be in a straight line or in a dogleg.
  • you can command one or all axis to move at the same time with one G00 command
  • Identical machines may be setup differently where one uses a straight rapid move and another uses a dogleg
  • The rapid movements embedded in canned cycles will follow the pattern of G00 moves and may be straight or dogleg

For a complete introduction to the fundamentals of CNC programming, take a look at 7 Easy Steps to CNC Programming . . . A Beginner’s Guide or 7 Easy Steps to CNC Programming . . . A Beginner’s Guide, the Ebook


%d bloggers like this: