Cut list optimizer

Enter the sheet size and every rectangular part in the project; get per-sheet cutting diagrams with kerf, edge trim and grain direction accounted. The list is saved in this browser and restored on your next visit. Solid-wood parts in the same project? Price them with the board foot calculator.

Parts to cut — dimensions in inches
LabelWidthHeightQtyGrainRemove

Recalculates live as you type — Optimize re-runs the packer on demand.

enter parts to see the packing summary

Overall waste
Parts placed
Usable area per sheet (after trim)

Cutting layouts

Dashed inset = trim zone, rip it off first · dashed part border = rotated 90° · dimensions in inches, kerf already reserved between parts.

How the optimizer packs your parts

Packing uses the maximal-rectangles heuristic with best-short-side-fit placement (Jylänki, “A Thousand Ways to Pack the Bin”, 2010). Parts are sorted largest-first; each part claims the free rectangle that leaves the least short-side waste, and the leftovers split back into new free rectangles. The same input always produces the same layout — fully deterministic, but a heuristic: it is not guaranteed to find the mathematically optimal packing, and a hand-moved part occasionally wins.

Kerf is handled by inflating every part by half the kerf on each side, so a cut shared by two parts consumes exactly one blade width; the diagrams report real part sizes. Trim is removed from all four edges before packing, and the trim zone is drawn dashed. Grain-locked parts keep their long dimension parallel to the sheet’s long axis; with rotation disabled, parts that only fit rotated are reported as unpacked instead.

From cabinet plan to cutting list

A worked example: one 30 in base cabinet from 3/4 in birch plywood. Two sides at 24×34.5, top and bottom at 23.25×30, a 30×34.5 back, two 4×28.5 stretchers and two 21×22 shelves — nine parts. With a 1/8 in kerf and 1/4 in trimmed off every edge, the optimizer packs them onto two 48×96 sheets: sheet one at 85.7% used, sheet two at 28.0%, overall waste 43.2%. That second sheet is not waste, it is the offcut rack for the next cabinet.

Break the design into rectangles before you touch the saw. Dadoes and rabbets do not change the blank size, so enter the full footprint of each part. Lock grain on anything whose face veneer must run vertically — sides and stretchers — and leave hidden parts free to rotate; rotation is usually what squeezes the last shelf onto a busy sheet. The kerf is already reserved between parts, so cut right on the shared line. Rip the dashed trim zone off first and you have a square, clean-edged sheet to measure from.

Expect the last sheet to run light. The packer is deterministic, not mathematically optimal, so if a rearranged row would beat it, split that part onto its own line and compare. Hardwood edging or face frames in the same project? Price them with the board foot calculator. Shelves that must stay flat under load? Run the span through the shelf sag calculator before committing to 3/4 in. Pouring a river top to go with the cabinets? The epoxy calculator sizes the resin and the mix.

Frequently asked questions

What is kerf, and what value should I enter?
Kerf is the width of material the blade turns into sawdust. A full-kerf table-saw blade removes about 1/8 in (0.125), thin-kerf about 3/32 in, and most track-saw blades about 2.2 mm (0.087 in). The optimizer adds half the kerf to every side of each part, so two parts sharing one cut lose exactly one blade width — enter your blade’s actual kerf and cut on the shared line.

Why trim the factory edges of a plywood sheet?
Factory edges get dented in transport and are not guaranteed square. Trimming 1/4 in off every side gives you four clean, square reference edges before any layout starts. The optimizer removes the trim from the usable area first and counts it as waste, so the cutting diagrams always start from the squared sheet.

What does grain direction mean for plywood parts?
The face veneer of a plywood sheet runs along its long axis, and the panel is stiffest in that direction. Grain-locked parts keep their long dimension parallel to it — important for sides, shelves and stretchers that carry load across a span, and for visible panels where the figure should run vertically. Leave hidden parts unlocked so they can rotate and pack tighter.

How does the packing algorithm work?
It uses maximal-rectangles bin packing with best-short-side-fit placement (Jylänki, 2010): parts go in largest-first, each one claims the free rectangle that wastes the least short-side space, and the leftovers split into new free rectangles. It is fully deterministic — the same list always yields the same layout — and it is a strong heuristic, not a guarantee of the mathematically optimal packing.

Why is this free with no signup, when cutlistoptimizer.com charges?
The whole calculation runs in your browser in plain JavaScript — there is no server, no account database and no per-user cost to recover. Your part list is stored in this browser’s local storage only. Free tools stay free when they cost nothing per use.