A G91 left hanging
What happens. G90 and G91 are modal. If an earlier operation left G91 active, every coordinate you write afterwards stops being measured from the work offset and becomes a move from wherever the tool is. The errors accumulate line by line.
How you spot it. On a dry run, the tool walks away in a staircase, each move a little further than the last. In simulation, the path leaves the profile of the part and keeps going.
How you avoid it. G90 in the header of every program, and G90 again after any block that uses G91 — typically a G28 return to home.
Cutter radius compensation set up wrong
What happens. Three variants, all three common. Switching G41/G42 on or off on an arc instead of on a straight move. Approaching the profile with a move shorter than the tool radius, which leaves the control no room to offset, so it either alarms or eats into the part. And leaving G41 active when you finish, which offsets everything that comes after.
How you spot it. An "interference in compensation" alarm, if you are lucky. If you are not, the part comes out with the profile offset by exactly the cutter radius, and the measurement is always wrong by the same amount.
How you avoid it. Switch on and cancel in G01, off the part, with an approach move longer than the radius. And G40 before every tool change.
The wrong work offset
What happens. The program works against G54 but the part is set in G55, or it was set on the vice instead of on the part, or two parts were set and one of them was moved. The machine does exactly what you ask, just at a different point in space.
How you spot it. This is the most treacherous one, because it gives no alarm: the machine is convinced everything is fine. The only defence is looking before you start.
How you avoid it. Before every cycle, two ten-second checks: that the offset the program uses is the one you set, and a dry run with Z shifted up to see where it passes. If the shop has the habit of noting on the fixture which offset it uses, better still.
The wrong units
What happens. A program in inches executed in millimetres, or the reverse. The factor is 25.4: the machine moves the axes twenty-five times further than you expect, or twenty-five times less.
How you spot it. On the first move, and spectacularly. If the program comes from outside — from a customer, from another shop, from the internet — this is the first thing to look at.
How you avoid it. An explicit G21 or G20 in the header, always, even when the control is already in that unit. And read the header of every program you did not write yourself.
The previous tool's length offset
What happens. The tool is changed with M06 but the G43 H is not updated. The machine works out the tip position using the length of a tool that is no longer in the spindle. If the new one is longer, it goes into the part far deeper than the program says.
How you spot it. The depth of cut is not the programmed one, and the error is constant: exactly the difference in length between the two tools.
How you avoid it. The rule is mechanical: after every M06, its G43 H with the right number. And make the H number match the T number. If T05 uses H03, sooner or later somebody gets it wrong.
A canned cycle left on
What happens. A G81, G83 or G73 is still active, and any coordinate you write afterwards is read as one more point at which to repeat the cycle. You drill where you only meant to position.
How you spot it. In simulation, holes appear where you never drew any.
How you avoid it. G80 right at the end of the run of holes, before any other move.
Starting without coolant
What happens. The M08 is forgotten, or the nozzle is pointed wrong, or the tank is low. In steel and stainless the tool heats up, loses its edge in minutes and ends up breaking. In aluminium, the material welds to the edge and ruins the finish.
How you spot it. By ear and by the chip. The cut sounds different, higher, and the chip comes off blue instead of silver. If you see colour in a steel chip, something is wrong.
How you avoid it. M08 in the start-up sequence of every tool, and a look at the nozzle on the first part.
Not enough clamping
What happens. It is not a programming error, but it is the one that causes the most injuries. The part moves or is thrown out during roughing, when the forces are highest.
How you spot it. Vibration and an irregular noise that changes pitch. If the machine starts to chatter, stop.
How you avoid it. Clamp with the direction of the cutting force in mind, not just so the part is held. And rough with passes the vice can take.
The thirty-second check
Before pressing cycle start on a new program, five questions:
Are the units in the header the right ones? Is the offset the program uses the one I set? Does every tool have its own length offset? Is compensation cancelled before each change? Is the coolant on?
Thirty seconds. They cost less than a cutter.
And what is not negotiable: doors closed, eye protection on, and nobody with their hands inside while the spindle is turning. This is not a health-and-safety guide and it does not replace one — the safety training at your workshop is a legal requirement and comes before anything here.
Next step: the last stop on the path is checking what you have learnt with the CNC Challenge, fifteen questions from the trade.