Cartesian Coordinate System

Cartesian coordinate system is used in CNC to numerically assign direction and plane of movement. A Cartesian coordinate system is made up of reference lines called a coordinate axis, or simply; axis. These axes are all measured in the same unit of length (for CNC it would be inches or millimeters).

This coordinate system allows CNC machines to be controlled along each plane of movement, it’s at the very heart of CNC technology and you will need to understand it well in order to be able to operate and program CNC machines.

By now you would have seen X, Y and Z coordinates mentioned everywhere. They refer to the planes, or axes of movement of a CNC machine. In simple terms they mean:

X axis = Left and right movement

Y axis = Forward and backward movement

Z axis = Up and down vertical movement


We now have 3 referenced axes in 3 dimensional space. This means our CNC machines can now cut 2 dimensional profiles and cut them at different depths using the Z (vertical) axis. This movement suits the majority of CNC router, milling, laser, plasma and 3D printer machines.

However some may want more advanced movement than this; such as the ability to rotate around these axes. This is where A, B and C come in:

A axis = Rotation around the X axis

B axis = Rotation around the Y axis

C axis = Rotation around the Z axis


These new axes allow us to not only move within our 3 dimensional space but to also rotate along any axis. This gives an almost unlimited ability to work anywhere within a 3D space, however we will always be limited by how our CNC machine grips or holds the material and various other size constrictions imposed by the size and design of the CNC machine.

CNC machines with these rotational axes are often referred to as 4, 5 or 6 axis machines. You may also come across terminology such as a 5 axis BC head or table. This refers to the head or table of the CNC machine being able to rotate along the B and C axes. More on 5 axis machines here.

These additional axes are usually seen on much higher end, more expensive CNC machines. The addition of rotation on axes increases the difficulty of G-Code programming immensely as well and usually requires specialised CAM software.