G-code Overview and Related Resources for Machinists

July 31, 2020 12:21 pm

G-code, or preparatory code, is the most widely used computer numerical control (CNC) programming language. It allows CNC programmers to give directions to the machine tool with specific paths that transform a design into a solid object.

In this article, we’ll take a look at the origins of this language, give a brief overview of its functions, and provide some recommended resources that will bolster your comprehension of G-code.

History of G-code in a nutshell

In the late 1950s, MIT’s Servomechanisms Laboratory was the first to successfully implement a numerical control programming language. By the 1970s, FANUC and Siemens both pushed for the code to be standardized in manufacturing as a predominant issue was the inconsistency of the programming language and machine tool capability. Later that decade, 3D Computer Aided Design/Computer Aided Machining (CAD/CAM) systems – which optimized the manufacturing process due to their ability to decrease material waste, improve turnaround times and provide clear visual concepts – hit the market and by the late 80s, became the standard for use in CNC machining applications.

These computer aided systems enable the articulation of a design into G-code. Fast forward to present day, G-code continues to be developed and implemented in new ways in the metalworking industry.

G-code Overview

Another accepted name for G-code is “preparatory code” which is just any CNC program that begins with the letter G. Overall, G-code is an action for the machine tool to perform. Some examples of G-code activated movements are:

  • Rapid transport of tool
  • Feed movements that result in a bored hole, a workpiece routed to specific dimension or a contour added to the edge of a workpiece
  • Controlled feed in a straight line or arc
  • Tool information like offset
  • Switch coordinate systems

Thought the letter G has come to represent the entire computer language, there are many other letters used within the G-code premise.

In addition to using our G-code YouTube series (in collaboration with Marc Cronin the G-Code Tutor) as a resource, here are a list of books to consider.

Recommended Books

CNC Lathe G-code & M-code Illustrative Handbook

 Order Now 

Are you looking for a practical resource to better understand G and M codes specifically for CNC lathe programming? Codes in this book have been arranged in a logical way based on number, name and group number. Each section contains a quick description of the code, the command format, notes and some examples.

CNC Programming Handbook, Third Edition (Volume 1)

Order Now 

The de facto standard for training and material reference at all levels of CNC programming. Used in hundreds of educational institutions around the world as the primary text for CNC courses and daily by many in-field CNC programmers and machine operators, this book literally defines CNC programming.

Basic Programming Essentials: Learn Basic Batch, HTML, C-, and G- and M-code for CNC Milling Applications

Order Now

If you are someone who is looking for an introduction to programming, this is a good door opener before you take a dive deeper into G-code. More of an elementary option, but a good way for someone who is looking to become more comfortable with the subject.


This post may contain affiliate links. Please read our disclosure for more info.

Recommended Content


  • Bryan says:

    The journeyman Guide to cnc machines also covers g codes

  • Jeff says:

    Gcode++ is a compiler that allows the writing of gcode with ALL the cryptic syntax removed (No #,No ocodes, very clean, compiles to primitive gcode). Enhanced syntax, arrays, macros, also supported. Looking for a few people to give it try. (I haven’t had to write any regular gcode for a long time now).
    Some video, a user guide, and a download with examples available at my website.

Leave a Reply