G-code Viewer

Drop in a .gcode or .nc file and see the path, layer by layer, with the numbers that matter — in your browser, nothing uploaded.

or drop it here · nothing is uploaded

.gcode and .gco from any slicer, .nc .ngc .tap .cnc from any CAM. Both dialects are read: layers and filament for a print, tools and feeds for a machining program.

How to view a G-code file

1

Drop the file in

A .gcode or .gco from a slicer, or a .nc, .ngc or .tap from CAM. It is read in your browser and never uploaded.

2

Turn it and scrub the layers

Drag to rotate, scroll to zoom. For a print, the slider walks up through the layers; tick 'this layer only' to inspect one on its own.

3

Read the numbers

Size, layers, layer height, filament and weight for a print; tools, feed range and depth for a machining program. Plus travel distance and an estimated time for both.

Two dialects, not one

A sliced print and an NC program are both called G-code and they are not the same language. A print is XYZ plus an E word counting filament, almost entirely straight moves, stacked in layers. A machining program has no E at all, leans on modal motion — one G1, then a run of bare coordinate lines that repeat it — is full of G2 and G3 arcs, and may well be in inches with its comments in parentheses.

Most free viewers are written against one of those and quietly mangle the other. Skip the arcs and a curved profile comes back as the straight lines between their endpoints. Demand a G word on every line and most of a CAM post disappears. So the dialect is worked out from the file rather than assumed, and the panel changes with it: layers, layer height, filament and weight for a print; tools, feed range and cutting depth for a program.

What it does not do is pretend to be a control. Motion comes from G0 to G3; canned cycles, probing and cutter compensation are named with the line they appeared on rather than invented, because a path made up for a cycle nobody parsed is worse than an honest gap. The time is feed divided into distance with no acceleration model, and the page says so next to the number. If you want the print as a solid instead of a picture, that is the G-code to STL converter, which shares this reader.

Frequently asked questions

How do I view a G-code file?

Drop it on the tool at the top of this page. It is read in your browser and the toolpath appears straight away — drag to turn it, scroll to zoom. If the file is a sliced print you also get a layer slider, so you can walk up through the object one layer at a time or watch it build. Nothing is uploaded and there is no account.

Is it free, and is my file sent anywhere?

Free, no account, no size limit imposed by us. The file is opened by code running in your browser tab and never leaves the machine, so nothing is stored, logged or scanned. Once the page has loaded you can disconnect from the internet and it keeps working — which for a shop file under NDA is the only answer that counts.

Does it open CNC programs as well as 3D printing files?

Yes, and it tells the two apart on its own. A sliced print has an E word on its moves; a machining program has none. When there is no E the moves are read as cutting rather than extruding, and the panel changes to show tools, feed range and cutting depth instead of layers and filament. Extensions .gcode and .gco from any slicer and .nc, .ngc, .tap, .cnc and .mpf from any CAM all open.

Does it understand G2 and G3 arcs?

Yes, in all three planes, in both the I/J/K centre form and the R radius form, including the sign convention where a negative R means the long way round. It also handles helical arcs, where the third axis ramps along the sweep. This matters more than it sounds: a viewer that skips arcs draws the straight line between their endpoints, so a program full of curves comes back as a sparse tangle that looks nothing like the part. Several free viewers do exactly that.

My file uses modal motion. Will it read?

Yes. In an NC program it is normal for a block to be just coordinates — G1 once, then a run of bare X and Y lines that repeat it. The reader keeps the last motion word in force the way a control does. A reader that demands a G word on every line silently drops most of the program.

What about inch programs?

G20 is honoured and everything is converted to millimetres, with a note on the page saying the file was in inches so the numbers are never ambiguous. Absolute and relative positioning (G90/G91), absolute and relative extrusion (M82/M83), G92 offsets and G90.1/G91.1 arc centres are all handled.

How accurate is the estimated time?

It is the sum of every move at its commanded feed, and nothing more. Real machines accelerate into and out of every move, so a file made of thousands of short segments will take noticeably longer than this figure and a file of long straight runs will land close to it. It is useful for comparing two versions of the same job; it is not a substitute for what your slicer or control tells you.

Where do the filament and weight figures come from?

The filament length is the total E the file commands, which is exactly what the printer will pull off the spool. Weight is that length turned into a volume for the filament diameter you pick and multiplied by the density of the material you pick, so switching between PLA, PETG, ABS and TPU changes the answer the way it does in real life. Both are the file's numbers, not an estimate of them.

Why are some moves shown faintly?

Those are travels — rapids in a machining program, non-printing moves in a slice. They are drawn underneath the work so a dense part does not disappear beneath the lines crossing it, and they can be turned off. Looking at them is how you spot a job spending its time in the air.

What is not simulated?

Motion is drawn from G0 to G3 only. Canned cycles, probing moves, tool-length compensation and subprogram calls are listed by code and line number rather than guessed at, because a viewer that invents a path for a cycle it does not understand is worse than one that says it skipped it. Cutter compensation (G41/G42) is likewise not applied, so what you see is the programmed centreline.

Can I turn the file into a 3D model?

Yes, if it is a sliced print. The G-code to STL converter rebuilds a solid from the beads the printer would lay down, which is useful when the original model is gone and the G-code is all that survived. It shares this page's reader, so anything that opens here converts there.