CutStock

Cut optimization for the workshop

Less waste. Every board, every bar.

Enter parts, choose material, optimize – CutStock calculates the best cutting plan in seconds. For panels and bars, with grain direction and saw blade width. As a desktop app and a self-hosted web app – no internet needed.

macOSWindowsDocker · amd64 + arm64offlineDE · EN · FR · IT
Panel cutting with cutting plan and cut sequence
up to 95 %material yield
1D + 2Dbars and panels
3 algorithmsFast, Nested, Thorough
100 % localno cloud, no account
REST APIevery function controllable
How it works

From scribbled note to cutting plan in three steps

No spreadsheets, no paper chaos at the saw.

1

Enter parts

Create a project and add parts with size, quantity and grain – or import them as CSV from Excel.

2

Optimize

Choose material and saw blade. CutStock calculates the plan and shows waste, offcuts and what you need to buy.

3

Print or tick off

Print the plan as a colored PDF with cut sequence and pin it to the saw – or take the tablet along and tick off part by part. While you tick off, CutStock books stock and offcuts automatically.

Panel cutting
Panels

Cutting panels

26 parts for a wardrobe, spread over 2800 × 2070 mm chipboard panels? CutStock calculates the cutting plan in seconds – color-coded, with a numbered cut sequence to follow at the saw.

  • Saw blade width, edge trim and grain taken into account
  • Guillotine cuts: every cut runs from edge to edge
  • Offcuts stay clean rectangles
Bar cutting
Bars

Cutting bars to length

Battens, beams, tubes, aluminium profiles: CutStock solves the split exactly as an integer optimization problem – so as few bars as possible get cut into.

  • Up to 99 % yield per bar
  • Every offcut is marked: back to stock, into the offcut bin or discard
  • Plans stay saved, even when you switch projects
Stock tab: locations and their contents
New: Stock tab

Always know what is where

Every piece carries a code like AP40-07, every material has its location. The plan says “Take AP40-07 · wall rack”; while you cut, CutStock books the piece out and the offcuts back in.

  • Manage locations and see what is stored there
  • Offcut bin for small pieces – for an overview
  • Labels per piece or for a whole rack
Workshop mode
Workshop

Tablet at the saw, start cutting

Workshop mode: full screen, large touch targets, tick off one part after another. Every tick updates progress and stock – new offcuts can be printed as a label right away.

Filling offcuts
Less waste

Filling offcuts

If a bar or panel leaves waste, CutStock fills it with parts from other projects – for example stool legs you will need soon anyway. It never uses more material.

Combined plan
Several projects

Several projects, one plan

If two projects need the same battens, CutStock plans them together. “Compare” shows beforehand how much that saves; each project gets its own color.

Features

Everything a workshop needs

🧬

Up to 95 % yield

Fast, Nested Guillotine or Thorough (genetic algorithm). Bars solved exactly via ILP.

📊

Grain direction

Per material and part – lengthwise, crosswise or any.

🔍

Avoid defects

Record knots and cracks – the optimizer plans around them.

📋

Cut sequence

Numbered steps per panel, exact to the saw blade width.

📄

PDF export

Parts list, cut sequence and material requirements – print it and pin it to the saw.

🏷️

Labels

A4 sheets (Avery 3475/L7160) or Dymo/Brother label printers.

🛒

Shopping list

Not enough stock? CutStock shows what is missing – one click books it into stock.

🔁

Build several

10 shelves instead of one: set the quantity on the project, everything is optimized together.

🧾

Cut lists

Combine parts from any projects and cut them as a list of their own.

📥

CSV import

Parts lists from Excel & co. – separators and columns are detected.

⌨️

Keyboard shortcuts

Fully usable by keyboard, keys freely assignable.

🔌

REST API

Every function via API – for scripts, scanners and machines.

Web app via Docker

Everywhere in the workshop

Install it on a NAS, home server or Raspberry Pi – then CutStock is reachable from every device on your home network: tablet at the saw, laptop for planning, all in sync. All assets are bundled in the image, no internet is needed at runtime.

docker compose up -d – then CutStock runs at http://localhost:8420.

services:
  cutstock:
    image: ghcr.io/orohde/cutstock:latest
    container_name: cutstock
    restart: unless-stopped
    ports:
      - "8420:8000"
    volumes:
      - ./data:/data
    environment:
      - CUTSTOCK_DB=/data/cutstock.db
Why guillotine cuts?

Cuttable with any saw

Every cut runs completely from edge to edge. That works with a table saw or circular saw, and the offcuts stay clean rectangles you can store and reuse.

MethodYieldOffcutsTool
Guillotine (CutStock)~85–95 %always rectangulartable saw, circular saw
Free cut~93–98 %L- and T-shapedCNC router required
Download & license

Free for personal use. Fair for businesses.

Source code openly available, licensed under PolyForm Noncommercial 1.0.0.

Desktop app

€0 personal
  • macOS and Windows
  • Double-click – opens in your browser, but runs completely locally on your computer
  • No internet, no cloud, your data stays with you (sync between Macs via iCloud)
Version 2026.10.68 · all versions

Business

License on request
  • Cabinetmakers, joiners, workshops
  • Commercial use permitted
  • Quote by e-mail
Request a license

Why in the browser? The desktop app starts CutStock on your own computer and shows the interface in your default browser – like a web page that only exists on your computer. Nothing goes to the internet, the data stays local.

Note: the desktop builds are not code-signed. macOS: right-click → Open. Windows: “More info” → “Run anyway”.

Ready for less waste?

Download CutStock, enter parts, optimize. Your first cutting plan in five minutes.