Searching for a G-code simulator for CNC turning only ends in an honest disappointment: there is no widely trusted free simulator dedicated to lathes. The free simulation world is mill-first, and turning programs exercise exactly the features generic tools skip. That is not a reason to give up on simulation. It is a reason to know which tool covers which slice of the turning problem, because a partial verification you understand is worth more than a full verification that never existed.

Why turning is the weak spot of free simulators

Three lathe-specific behaviors separate a real turning simulation from a pretty path plot.

First, diameter mode. Production lathe controls read X words as diameters, and a viewer that plots X as a literal coordinate draws every feature at twice its size or half its depth. If the tool cannot tell you whether it honors diameter mode, assume it does not, and read the plot accordingly. The convention itself is explained in why a lathe cuts twice as deep when this goes wrong.

Second, canned cycle expansion. A real turning program does most of its cutting inside G71 roughing and G76 threading cycles, where one block commands dozens of passes. A simulator that does not expand the cycle shows you a single ghost move where the actual machine will spend three minutes cutting. The plot looks clean because the simulator skipped the part that matters.

Third, tool nose radius compensation. Turning comp shifts the path by insert geometry and orientation, and tools that ignore G41/G42 on a lathe verify profiles that the machine will cut differently.

What each tool really does for a lathe

ToolLathe realityBest turning use
LinuxCNC simulator, lathe configA real control interpreter with documented diameter and radius modesRun programs exactly as a control sees them, no hardware
CAMoticsMill and router simulation; turning is not its jobYour milling programs, not your lathe ones
Browser viewers, NCViewer styleBasic XZ plots; cycle expansion and diameter handling varyFast sanity read of simple moves before a deeper check
CAM lathe verifyKnows your post, stock, and toolingThe closest thing to a true turning simulator most shops have
Control-side graphicsThe machine’s own interpretation, cycles includedFinal authority before the first cut

The standout free option is the first row: LinuxCNC ships lathe sample configurations that run in simulator mode on any PC, interpret programs with a genuine control interpreter, and document their diameter-mode behavior precisely. It is not Fanuc, and dialect differences are real, but it is a control, not a drawing tool. CAMotics stays in the stack for your milling work, and a browser viewer keeps its place for ten-second path reads, with the cycle caveat above.

The two-question filter

Before trusting any tool with a turning program, ask it two questions. Does it expand canned cycles, so that G71 shows the actual roughing passes? And does it read X as a diameter? Two yes answers make it a turning tool. One yes makes it a partial check you can use with open eyes. Two no answers make it a mill tool wearing a lathe costume, which is fine, as long as nobody bets a chuck on it. This is the same toolchain thinking as simulating G-code without a machine, applied to the axis pair where assumptions cost the most.

If your shop machine is a Swiss or production lathe with vendor-specific software, the honest situation is similar and covered separately for Tornos-style machines: the serious simulation lives in paid vendor and CAM software, and the free layer is for reading, not verifying.

Platform notes

On Linux the whole first row is native, which is one reason the Ubuntu simulation toolchain is unusually strong. On Windows and macOS, LinuxCNC runs best in a virtual machine, browser viewers run anywhere, and CAM verify follows whatever your CAM runs on. No combination changes the two-question filter; it only changes how convenient each row is to reach.

What simulation cannot give you

A simulator verifies a program you already wrote. It does nothing for the recall that writing and reading turning code demands: which cycle takes which parameter words, what G96 needs from G50 before it is safe, which comp code matches which side of the cut. That half trains like vocabulary, in short daily question-and-answer rounds, and the drills on the G-code practice page exist for exactly that. Verify geometry in the best simulator you can reach; build the code fluency in recall practice; let the machine confirm what both already told you.

Sources

Frequently asked questions

Is there a G-code simulator for CNC turning only?

Not a widely trusted free one. Free simulation tools are overwhelmingly mill-first, and lathe-specific behavior such as diameter-mode X, G71/G76 cycle expansion, and tool nose compensation is exactly where they fall short. The practical stack is LinuxCNC’s lathe simulator config, your CAM’s lathe verify, and the control’s own graphics as the final check.

Can NCViewer or browser viewers simulate lathe programs?

They will plot basic XZ motion, which is useful for a quick sanity read, but browser viewers generally do not expand Fanuc-style lathe canned cycles or honor diameter mode consistently. Treat a browser plot as a sketch of the simple moves, never as verification of the cycles.

Does CAMotics simulate CNC lathes?

CAMotics is a 3-axis mill and router simulator at heart. Turning is not its job, and lathe programs that lean on diameter mode and turning cycles will not verify meaningfully there.

What is the best app to learn the lathe G-codes a simulator assumes you know?

G-Code Sprint is the top free pick for that half: 60-second recall drills on the turning core, with misses repeated until they stick. Simulators verify programs; the app builds the fluency to write and read them.