Turn SVGs into wood inlays.
Without learning CAM.

Drop in artwork. CNC Inlay Studio generates the matched pocket and plug G-code for a clean two-piece wood inlay — with a live 3D preview and built-in machine control over USB.

One-time purchase. Lifetime updates. 10 CNC presets out of the box — Lunyee 3018, Genmitsu, Foxalien, Shapeoko, X-Carve, Onefinity, OpenBuilds — plus custom bed sizes for anything else.

CNC Inlay Studio showing the pocket toolpath for the FSU Seminoles logo in 3D, with the layered wood block visible, multi-bit roughing chains in pink, green, and blue, the new tool-sequence legend on the right, and the bit-coloured scrub bar at the bottom.

From sketch to seated inlay in three steps

1Drop in an SVG

Logos, lettering, line art — anything you'd cut on a vinyl plotter works as inlay artwork. Drag it into the app and CNC Inlay Studio takes care of scaling, centring, and cleaning up the geometry for two-piece inlay cutting.

Black silhouette of the FSU Seminoles head logo — a typical input SVG.

2Pick your woods + bits

Choose pocket and plug stock from a built-in library (walnut, maple, padauk, ash, oak, cherry, and more). Pick roughing and finishing bits from your owned-bit list (50+ in the catalog). The app picks safe feeds and speeds for the wood/bit combo automatically, and you can override anything per-bit on its Speeds tab.

Detailed dragon design loaded in CNC Inlay Studio with a four-bit roughing-and-finishing sequence (1/4 inch down-cut, 3 mm endmill, 1.5 mm endmill, 30 degree V-bit) and the layered wood block visible in 3D.

3Preview in 3D, then cut

Inspect the toolpaths in 3D before you commit any wood — the assembled wood block renders as colour-coded layers (pocket / glue gap / plug) so you can see exactly what cuts where. Plug in your CNC over USB; the app jogs, zeroes, streams, and tracks the live bit cone in 3D. Drag the scrub bar to start (or resume) anywhere in the program.

3D preview of the plug-side toolpath for the twin-dachshunds project, showing the wood block on the bed grid, multi-bit chains colour-coded (pink, green, blue), and the bit-segment scrub bar with the run cursor at the bottom.

And here's what you actually get

The Finished tab renders the assembled inlay with realistic wood-grain textures so you can sanity-check colour pairings before cutting. Maple pocket + padauk plug shown below.

Finished tab showing the FSU Seminoles inlay rendered with maple-and-padauk wood textures, previewed in CNC Inlay Studio before the cut starts.

What's in the box

Paired pocket + plug toolpaths

Pocket and plug toolpaths generated together so the plug always seats flush in the pocket. Adjustable glue gap, XY tolerance, and plug margin so you control the fit.

10 CNC presets + custom

Lunyee 3018 PRO MAX, SainSmart Genmitsu, Foxalien, Shapeoko, X-Carve, Onefinity, OpenBuilds — all built-in. Don't see yours? Punch in any X/Y bed size in cm and the bed envelope and grid resize to match.

Multi-bit roughing & finishing

Stack a 3 mm roughing bit to clear bulk fast, then a 1 mm finishing bit for the corners. The app sorts them, computes per-bit residual coverage, and skips any tool change that wouldn't add new clearing.

V-bit inlay (angled walls)

Pick a 30°/45°/60°/90° V-bit as the wall finisher and the pipeline emits a perimeter pass at the chosen angle. Angled walls wedge tight on assembly — eliminating the visible glue line — with no change to the flip-and-mirror plug workflow.

Spoilboard surfacing

Built-in surfacing planner removes the plug backing after glue-up so the inlay sits flush. Auto-derives depth from your glue gap, includes 21 catalog surfacing bits (12–50 mm + 1/2"–2") and a live 3D preview of the assembled panel as 3 colour-coded layers.

Live 3D preview with bit cone

Rotate, pan, and zoom the toolpaths in 3D over a render of your wood block sitting on the bed. Direction arrows show travel direction; a purple bit cone tracks live machine position during a real cut.

Built-in GRBL streamer

Connect over USB. Jog, set work zero, dry-run, stream — all without a third-party sender. Crash recovery, pause/resume, abort, character-counted streaming for fast cuts. M3 + 3-second spindle dwell prevents bit breakage on plunge.

Scrub bar & run from cursor

Coloured-segment timeline shows every bit in the program. Drag the handle to any line and click Run from Cursor to start (or resume) from there — perfect when a roughing pass is fine and you only want to redo the finishing.

My Bits catalog

50+ pre-populated bits — 1/8" and 1/4" shanks, flat endmills (metric and imperial), down-cut, compression, V-bits, engraving, surfacing. Tick the ones you own; the project dropdowns only show those.

AI design generation

Optional ✨ Generate from prompt — describe a design in plain English and get a fresh inlay-ready SVG. Bring your own Google Gemini API key.

Realistic time estimates

Per-bit run-time estimates use a trapezoidal acceleration model tuned to hobby CNCs, plus tool-change and spindle-ramp overhead. The numbers actually match your wall clock — not the optimistic length÷feed math most CAM tools use.

Mac-native, fast

Built with PySide6 + OpenGL for snappy panning and instant toolpath updates. No Java, no Electron, no servers, no subscription.

Simple pricing

$29.95 one-time
  • Full app, no feature gates
  • Lifetime updates
  • Use on as many of your own Macs as you like
  • 7-day free trial — no card required
Buy on Gumroad …or start the free trial first

System requirements

  • macOS 12 (Monterey) or later on Apple Silicon
  • A GRBL-based CNC over USB-serial — 10 presets built in (Lunyee 3018 PRO MAX, SainSmart Genmitsu 3018-PROVer V2 + 4030 PRO, Foxalien Vasto, Shapeoko 3 + 5 Pro, X-Carve 1000, Onefinity Woodworker + Journeyman, OpenBuilds LEAD 1010) plus a custom-bed option for anything else
  • At least one flat endmill — typically a 1/8" or 3 mm bit. The bit catalog has 50+ entries to pick from.
  • Optional: a V-bit (any of 30°/45°/60°/90°) for glue-line-free angled-wall inlay, and a surfacing/spoilboard bit (12–50 mm or 1/2"–2") for planing the assembled panel flush.

Frequently asked

Does this work with my CNC?

If your machine speaks GRBL over USB-serial — yes. There are 10 presets built in (Lunyee, Genmitsu, Foxalien, Shapeoko, X-Carve, Onefinity, OpenBuilds), so the bed envelope shown in the 3D preview matches your machine's actual work area. If your CNC isn't on the list, pick "Custom" and enter your X/Y in cm. Any GRBL-firmware machine over USB-serial — including DIY Arduino + grblShield builds — works as long as you can specify its bed size.

What's V-bit inlay and do I need it?

For most projects, no — flat-endmill inlay (the default) works great. V-bit inlay is for fine detail (tight script, sharp serifs, small logos) where bit-radius corner limits matter. It produces angled walls that wedge tight on assembly, eliminating the visible glue line. The plug workflow is the same flip-and-mirror you already do; the V-bit just runs an extra perimeter pass at the chosen angle. Pick a V-bit (30°/45°/60°/90°) in the Wall finish dropdown to enable it.

Can it surface my panel after glue-up?

Yes. Settings → Surface plug backing… opens a planner dialog: pick your surfacing bit (or a flat endmill ≥6 mm), and the depth-to-remove auto-calculates from the project's glue gap + a safety margin. The Surfacing tab shows a live 3D preview of the assembled panel as 3 colour-coded layers (pocket, glue, plug backing). Click Run on Machine to stream it directly.

What happens after the 7-day trial?

You can still open and edit projects, but the "Run on Machine" and "AI Generate" features unlock only with a license. No nag-screens, no time bombs.

Will there be a Windows or Linux version?

Not currently. The app is built on cross-platform tooling (Python + Qt) so it's not impossible — but I only ship what I can test, and I only have a Mac.

How do I report a bug or request a feature?

Email ross.malcolm@gmail.com with screenshots and what your CNC model is. I read everything.