Export SketchUp to CNC Router — Full DXF to G-code Workflow

Nesting ABF Plugin

Exporting SketchUp to a CNC router is not simple — it requires multiple steps through DXF and CAM software. This is a comprehensive guide to the full SketchUp-to-CNC workflow for woodworking and advertising. All CNC machines read data via G-code file so the article guides the steps to create a G-code file for a CNC machine from SketchUp.

What This Workflow Is For

  • Producing wooden furniture panels and cabinet parts
  • Making billboards and cutting letters from sheet material
  • Scale model making and prototyping
  • Sign-making, interior panels, decorative relief cutting

This procedure is not suitable for sculpture, organic 3D carving, or 3D printing. It is a flat-nesting, 2D/2.5D CNC routing workflow only.

How to Export SketchUp to CNC Router: Full DXF to G-code Workflow

The SketchUp-to-CNC pipeline has four stages:

  1. SketchUp — accurate 3D modeling of your parts as solid groups at real thickness
  2. ABF Plugin — nests parts on a sheet and exports a layered DXF file
  3. CAM Software — imports the DXF, sets toolpaths, and outputs a G-code file
  4. CNC Controller — reads the G-code and runs the machine

SketchUp is classified as CAD software (Computer-Aided Design). DXF export is a Pro-only feature — SketchUp for Web (free browser version) cannot export DXF. The workflow below requires SketchUp Pro on the desktop.

Step 1: Model in SketchUp

This step takes the most time. Accurate geometry here saves rework in every step after.

  • Use Groups for every part you intend to cut. ABF reads groups as individual parts for nesting. Loose geometry will be ignored or mis-nested.
  • Model each part at its real thickness — 18 mm, 12 mm, 9 mm, etc. ABF flattens the group to extract the face profile; a flat face with no thickness gives the nesting step nothing reliable to orient.
  • Draw faces perpendicular to their cutting plane. A panel that will lie flat on the CNC bed should be modeled with its face facing up in SketchUp.
  • Avoid stray edges, internal geometry, or reversed faces. These cause ABF to mis-detect the outline and produce corrupt DXF loops.

If you want pre-built, production-ready furniture parts that work directly with ABF, see Parashape Dynamic Components for SketchUp.

Shoe Cabinet Design Sketchup
Shoe Cabinet Design SketchUp Example

Step 2: Export DXF from SketchUp Using the ABF Plugin

The ABF plugin is the best free SketchUp DXF export tool for the wood industry. It handles nesting (arranging parts on a sheet to minimize waste) and exports a layered DXF that CAM software can read directly.

What ABF does in this SketchUp DXF export step:

  • Detects each solid Group as an individual cut part
  • Nests parts onto sheets at the material dimensions you set
  • Adds cutting strokes (through-cuts), milling strokes (dados, pockets), and drill points on separate DXF layers
  • Exports a single DXF file with all nested sheets

Keep ABF layer names consistent across projects. In Aspire or VCarve you select toolpath geometry by layer name — if every project uses the same scheme (e.g., CUT for through-cuts, POCKET for dados, DRILL for holes) you can save a CAM template once and reuse it on every job without re-picking vectors by hand.

ABF nesting is strictly flat (2D/2.5D). It does not export 3D surface data, so it is not suitable for sculpture or 3D-relief carving.

Download the ABF SketchUp plugin and read the full guide here.

Nesting ABF Plugin
Nesting ABF Plugin

Step 3: Generate G-code in CAM Software

CAM software (Computer-Aided Manufacturing) takes the DXF file from ABF, lets you define toolpaths, and outputs a G-code file for the CNC machine.

What Is a G-code File?

A G-code file is a plain-text file containing coordinates, feed rates, spindle speeds, and move commands the CNC controller executes line by line. Common file extensions: .nc, .tap, .gcode, .txt. The file itself is human-readable — you can open it in any text editor to verify coordinates before running.

Importing the DXF and Setting Toolpaths

  1. Open the DXF exported from ABF in your CAM software.
  2. Assign toolpaths by layer: select the CUT layer → Profile toolpath (outside, climb milling); select POCKET layer → Pocket toolpath; select DRILL layer → Drilling toolpath.
  3. Set tool parameters: bit diameter, cutting depth per pass, feed rate, spindle RPM.
  4. Add tabs on through-cuts to keep parts from shifting before the last pass.
  5. Simulate the toolpath in 3D view to check for gouges or missed geometry.
  6. Export the G-code using the correct post-processor for your controller (see below).

Choosing the Right Post-Processor

The post-processor is the most critical CAM setting. It converts the toolpath into the exact G-code dialect your machine controller understands. The same toolpath posted for Mach3, GRBL, NCStudio, or LinuxCNC produces different G/M code syntax. Choosing the wrong post is the primary reason a file that looks correct in simulation crashes or ignores the spindle on the real machine.

Common post-processors by controller:

  • NCStudio — use the NCStudio post in Aspire/VCarve; outputs .nc
  • Mach3/Mach4 — use the Mach3 Arcs post; outputs .tap
  • GRBL — use a GRBL post; no arc moves unless your firmware supports G2/G3
  • LinuxCNC — use the LinuxCNC (EMC2) post

CAM Software Options

Paid (most capable for furniture production):

  • Vectric Aspire — best for combined 2D cutting and 3D relief, templates reusable per machine
  • Vectric VCarve Pro — simpler than Aspire, sufficient for flat sheet furniture
  • Mastercam, Alphacam — industrial-grade, common in large factories

Free options:

  • FreeCAD CAM workbench (formerly “Path”) — fully free, supports 2.5D profiles and pockets from DXF
  • Blender CAM add-on — actively maintained for Blender 4.x, viable for 2.5D routing
  • LinuxCNC — runs the machine directly, includes a CAM layer for simple jobs
Import DXF to Aspire
Import DXF to Aspire
Toolpaths Aspire
Toolpaths Aspire
Toolpaths Aspire 3D View
Toolpaths Aspire 3D View
Gcode file
G-code file

Step 4: Run the CNC Machine

Load the G-code file into your CNC controller software (NCStudio, Mach3, GRBL Panel, etc.). The machine vendor provides detailed operational training for their specific controller, so this step is covered briefly here.

Critical checks before the first cut:

  • Set work zero (X/Y origin) to match your material placement. G-code coordinates are relative to this point — a wrong origin shifts every cut.
  • Set Z zero on the material surface, not the spoilboard. Z-zero error is the most common cause of plunging through the spoilboard or cutting too shallow to sever the part.
  • Preview the toolpath in the controller software before pressing Start. NCStudio and Mach3 both have a 3D preview mode.
  • Run the first job at reduced feed rate (60–70%) and observe the first few cuts before increasing speed.
Ncstudio preview gcode file
NCStudio preview G-code file

Common Issues & FAQ

For a deeper look at the SketchUp plugin used in Step 2, see the ABF Plugin guide. For dynamic parametric furniture components that speed up Step 1, see Parashape for SketchUp.

Nguyen Huu Khanh

Architect turned developer