How Recommendations Are Calculated
CNC ToolKit uses deterministic math — no black box, no AI guesswork. Every number traces back to a formula you can verify yourself. Below is a plain-English walkthrough of what goes into each output.
Data & Library
The chipload library, machine specs, and router data were last reviewed in June 2026. The bit library contains 290 built-in entries from 11 brands. Source data is cited inline — every chipload row links to the reference it was derived from.
Each data source carries a confidence tier: manufacturer (spec sheets and official tool databases), community (forum guides and community-maintained charts), and estimated (derived from general endmill theory when no direct data exists). Estimated rows automatically receive a 15% conservative bias on the max chipload — the slider stays safely below an uncertain ceiling.
The full dataset and calculation logic are open source. Pull requests to add machines, correct chipload data, or improve tier assignments are welcome.
The Core Formula
Everything starts with chipload — the thickness of material each cutting edge removes per revolution. The relationship between chipload, RPM, flutes, and feed rate is fixed physics:
The engine works in both directions. Given a target chipload from the bit's data, it selects an appropriate RPM for your router or spindle, then solves for feed rate. You can verify any result by hand.
Plunge rate is calculated separately as a fraction of the lateral feed rate. The fraction depends on the entry strategy selected in Cut Setup:
| Entry strategy | Plunge rate range | Notes |
|---|---|---|
| Plunge (vertical) | 25–50% of feed | Conservative to aggressive end of slider. Puts full axial load on bit tip. |
| Ramp (angled) | 70–95% of feed | Distributes axial load across the flute — significantly easier on the bit. |
| Helical (arc) | 60–85% of feed | Best chip evacuation during entry; preferred for pocketing. |
Within each range the rate scales linearly with the Approach slider — a more aggressive stance produces a proportionally higher plunge rate.
Where Chipload Numbers Come From
Each bit in the library carries a per-material chipload range: minimum, typical, and maximum. The range reflects real-world variation — bit quality, workholding, material moisture content, and machine condition all affect what works in practice.
Primary sources for the built-in library:
- Carbide 3D community spreadsheet— the most widely-referenced hobbyist feeds & speeds chart, covering common bit sizes and materials on Shapeoko-class machines
- Amana Tool and Whiteside Vectric databases — manufacturer-published chipload data in Vectric
.toolformat, normalized to the same schema - AS&T chip load charts — spiral router bit data organized by bit diameter and material category
- Freud CNC feed & speed chart — solid carbide and carbide-tipped router bit data
- IDC Woodcraft community database — community-curated hobbyist-targeted speeds reference
Every chipload row cites its source. When data wasn't available for a specific bit/material combination, a general endmill theory baseline was used (roughly 0.005 × diameter for hardwood, scaled by material category) and tagged as estimated. The engine applies a 15% conservative bias to the max of those rows — real-world test cuts are recommended before pushing toward aggressive.
The Cutting Approach
The Approach slider controls where within the chipload range the calculator targets. It's a 0–1 continuous value:
| Position | Chipload target | Use case |
|---|---|---|
| 0.0 — Conservative | Minimum (lower bound) | New setup, unknown material, first job on this machine |
| 0.5 — Balanced | Typical (center of range) | Everyday production cutting, known good setup |
| 1.0 — Aggressive | Maximum (upper bound) | Dial-in mode, chasing cycle time, rigid machine required |
The interpolation is piecewise linear: 0→0.5 scales between minimum and typical, 0.5→1.0 scales between typical and maximum. This intentionally weights the conservative side — it takes more slider movement to reach max than to reach typical.
RPM selection also scales with approach. Higher approach targets higher RPM within the router's range, which aids chip evacuation at higher feed rates.
Finishing mode is available alongside the slider. In finishing mode:
- Depth of cut is limited to 4–10% of bit diameter (2–6% for metals), regardless of stance.
- The effective chipload stance is halved — the slider controls only the conservative half of the chipload range.
- Use finishing mode for final surface passes after roughing. Plan roughing passes first, leaving 0.01–0.03" of stock.
Machine Rigidity Tiers
Machine rigidity affects both depth of cut (DOC) and chipload — through two separate mechanisms described below.
| Tier | DOC factor | Typical machines |
|---|---|---|
| 1 — Light hobby | 55% | X-Carve, LongMill, FoxAlien Masuter, BobsCNC, Maslow (V-wheel / belt drive) |
| 2 — Stiff hobby | 70% | Shapeoko 3 & 4, Onefinity Woodworker & Journeyman, OpenBuilds WorkBee, FoxAlien XE-Ultra |
| 3 — Pro hobby | 85% | Shapeoko 5 Pro, Onefinity Elite series, AltMill, Nomad 3 |
| 4 — Industrial | 100% | Shapeoko HDM, Avid Pro, X-Carve Pro |
Chipload derating — stance-weighted machine factor. In addition to DOC, machine tier scales the target chipload (and therefore feed rate) through a stance-weighted factor. The key insight: conservative cuts are just as valid on a light machine as on a heavy one — the penalty only grows as you push toward aggressive stance, where rigidity, damping, and drive-system velocity limits become the binding constraint.
| Tier | tierFactor | At stance 0.0 | At stance 0.5 | At stance 1.0 |
|---|---|---|---|---|
| 1 — Light hobby | 0.55 | 1.00 (no penalty) | 0.775× | 0.55× |
| 2 — Stiff hobby | 0.65 | 1.00 (no penalty) | 0.825× | 0.65× |
| 3 — Pro hobby | 0.80 | 1.00 (no penalty) | 0.90× | 0.80× |
| 4 — Industrial | 1.00 | 1.00 (no penalty) | 1.00× | 1.00× |
Drive-system sub-tier bonus. Two machines can share a rigidity tier but differ in drive hardware. A small adjustment to the effective tierFactor (capped at 1.0) accounts for this — so a ball-screw machine is not penalized as hard as a belt peer in the same tier:
- ballscrew-linear (Onefinity Elite, AltMill, X-Carve Pro) — +0.07
- ballscrew-vwheel (Onefinity Standard) — +0.03
- strap-retractable (Maslow 4 — uniquely compliant frame) — −0.10
For example: a Shapeoko 3 (tier 2, belt drive, no sub-tier bonus) at maximum aggressive stance applies a 0.65× factor to the base chipload, yielding ~173–181 IPM on pine rather than the ~266–278 IPM a raw chipload formula would suggest. An Onefinity Elite (tier 3, ballscrew-linear) runs an effective factor of 0.80 + 0.07 = 0.87 at full stance. Tier-4 machines carry a factor of 1.0, so their chipload is never reduced. These values are calibrated against community-reported cutting ceilings and will be refined as more data is collected.
A separate hard cap also applies: when a machine publishes a maximum cutting feed (maxCuttingFeedIpm — a GRBL firmware or community-observed ceiling), the engine clamps the final feed to that number after all chip-thinning math, and warns. This is why a fast chipload calculation never produces an IPM the machine physically cannot run.
Three additional derating factors are applied on top of the machine tier (DOC only):
- Large bit on low-rigidity machine— bits ≥ 1/2" on tier 1–2 machines receive an additional 20% DOC reduction. The leverage a half-inch bit creates on a V-wheel gantry causes deflection even at moderate feeds.
- Router / spindle derating — each router and spindle carries an individual factor (0.55–1.0) based on wattage, torque curve, and bearing quality. The Sienci AutoSpin T1 (350W) and Nomad 3 built-in spindle (130W) sit at 0.55 — the lowest tier. Common trim routers (Makita RT0701C, DeWalt DWP611) are rated 0.65. A 1.5 kW 65mm VFD spindle earns 0.85; the Carbide 3D HDM spindle reaches 0.90; a 4 kW industrial 80mm spindle runs at the full 1.0.
- Flute length-to-diameter (L:D) ratio— long flutes deflect under cutting forces. When a bit's flute length is known: L:D ≤ 4 incurs no penalty; L:D 4–6 scales from 0% to 15% DOC reduction; L:D 6–8 scales from 15% to 30%; L:D > 8 is capped at 35% reduction.
The machine and material factors are combined as a 60/40 weighted blend (60% machine rigidity, 40% material hardness) rather than multiplied together. The router and L:D factors are then applied multiplicatively on top of that blend. The blend prevents the machine/material side from compounding too aggressively; the multiplicative router and L:D factors preserve their physical meaning as true capability ceilings.
Router vs. Spindle: What Actually Changes
Your router or spindle determines the achievable RPM range, and RPM directly scales feed rate through the core formula. Higher RPM at the same chipload means higher feed rate — so a spindle capable of 24,000 RPM produces different outputs than a trim router capped at 30,000 with only six steps.
Trim routers (Makita RT0701C, DeWalt DWP611, Carbide Compact, Bosch Colt) have no electronic RPM feedback to the controller. The GRBL S-word in your G-code specifies a target, but the router ignores it — speed is set physically by the dial. When a trim router is selected, the calculator converts the target RPM to the nearest dial position and shows it next to the RPM output. The dial position and its nominal RPM are displayed so you can set the dial before starting a job.
VFD spindles (Onefinity, generic 65mm / 80mm, Nomad 3 built-in) accept the S-word and maintain RPM continuously. This means CAM output is what the machine actually runs, and RPM can be tuned precisely without stopping to adjust a dial.
Spindles also have useful low-end torque. A 2.2 kW spindle at 8,000 RPM can hog material that would stall a trim router at the same setting. This matters most for aluminum and slow-speed toolpaths. The per-router derating factor in the machine data reflects this real difference in achievable depth — each model is rated individually rather than bucketed by type.
Bit Geometry Adjustments
Beyond diameter and flute count in the core formula, several geometry factors scale chipload or feed before the final number is shown:
- Flute count scaling — the chipload tables are calibrated for a reference flute count (default 2). When the actual bit differs, per-tooth chipload is scaled by
(refFlutes ÷ flutes)0.9. More flutes → each tooth takes a thinner chip so total feed stays physically correct. The exponent is slightly sub-linear (0.9) because higher flute counts share heat more evenly. A 1-flute bit gets ~1.87×; a 4-flute gets ~0.54×. - Helix angle feed factor — higher helix shears more axially, improving chip evacuation. Feed is scaled by
1 + (helix − 30°) ÷ 300, clamped to 0.97–1.05. Straight-flute bits get 1.0. - V-bit / engraving tip-strength derate — V-bits cut with a tip-dominated geometry. Effective diameter is
2 × DOC × tan(angle ÷ 2), far smaller than the body. Feed is scaled by√(D_eff ÷ D_body), matching the tip-strength-dominated regime where failure scales with √(load). - Downcut DOC reduction — downcut bits pack chips into closed slots. DOC is held to 60% of the equivalent upcut value (community consensus: 0.5–0.7×). Feed rate is unchanged — chipload physics are direction-independent.
- Compression DOC auto-bump— when the default DOC lands below a compression bit's upcut-flute length (and the transition is within the safe max), DOC is raised to engage both spirals so the compression action actually works.
RPM Behavior Under Load
Brushed trim routers have no closed-loop speed control — they slow down under cutting load. The dial sets a target, but the spindle actually turns at RPM × loadSpeedRetention while cutting. All feed, SFM, and chipload math downstream uses this effective RPM so the chip thickness the bit achieves matches the recommendation. Your dial setting stays at the nominal RPM.
- VFD spindles: ~98% retention (closed-loop, ≤1–3% droop) — no correction.
- Palm/compact routers: ~87% default retention when not individually specified.
- Full-size brushed routers: ~82% default retention.
A per-router loadSpeedRetention value overrides these defaults when community data exists. Correction only applies below 95% retention.
Material Hardness
Material selection affects recommendations through three independent mechanisms, applied in order:
1. Chipload row lookup— the most significant effect. Each bit carries per-material chipload tables with different min/typical/max values for each material category (softwood, hardwood, MDF, acrylic, aluminum, and so on). When you select a material, the engine finds the best matching chipload row for that bit: it tries an exact material match first, falls back to the material's category (e.g. “hardwood”), then falls back to a conservative general-endmill baseline if no data exists. The selected row determines the entire chipload range — switching from MDF to 6061 aluminum can change the recommended feed rate by 5–10× through this mechanism alone.
2. Hardness multiplier— a per-species scalar applied on top of the category chipload row. This lets species-level materials (hard maple, cherry, white oak) share a single “hardwood” table without duplicating data everywhere. The multiplier is derived from Janka hardness data (USDA Forest Products Lab FPL-RP-643) and empirical hobbyist community data for sheet goods, plastics, and metals. Softer materials allow higher chiploads; harder materials require lighter passes. Plastics and metals use separately validated values — aluminum and brass run at a fraction of wood chipload regardless of Janka equivalence.
3. DOC contribution — material hardness contributes 40% of the depth-of-cut derating, blended with machine rigidity (60%). Very hard exotic hardwoods will produce smaller DOC recommendations even on a tier-4 machine.
4. Surface speed (SFM) validation — metals have minimum and maximum surface speed bounds. SFM = π × D × RPM / 12. Below the minimum the cutter rubs rather than shears, accelerating wear. Above the maximum, heat builds faster than chips can carry it away — chip welding and premature edge failure. When RPM pushes outside these bounds for a metal material, the calculator fires a warning with the RPM correction needed.
5. Tool-wear (abrasion) factor — some materials are far more abrasive than their Janka hardness predicts: silica in teak and ipe, resin binders in MDF/OSB. Materials with a wear factor ≥ 1.4 receive a max-chipload reduction (down to 70% at the extreme) so each tooth takes a lighter cut and edge life is preserved. A warning recommends solid-carbide or ZrN-coated tooling.
6. Plastic melt-point / thermal check — for plastics with a known melt point, the engine computes a dimensionless heat proxy (SFM ÷ melt point). Above ~10 it warns to watch for gummy chips; above ~15 it strongly recommends an O-flute and aggressive chip evacuation; above ~25 it fires a danger warning and gives the RPM needed to bring thermal risk back into range.
Width of Cut & Chip Thinning
Full-slot engagement (bit cutting its full diameter at once) is the default assumption. For profile passes, pocket finishing, and adaptive toolpaths at partial stepover, chip thinning reduces the effective chipload at the tool.
You can enter a width of cut in the Cut Setup panel. Chip thinning only kicks in below 50% radial engagement. At 50% engagement (WOC = half the bit diameter) the maximum chip thickness already equals the programmed chipload, so no boost is needed. Below 50%, the engine computes a chip thinning factor (CTF) and scales the programmed feed rate up so the bit actually achieves the target chip thickness per tooth:
Programmed Feed = Chipload × Flutes × RPM ÷ CTF
This is the standard radial chip thinning relationship (DAPRA “Radial Chip Thinning” technical guide). The chipload displayed in the results always reflects the actual chip thickness target — what the bit physically removes per tooth. The feed rate shown is the CAM value after the CTF adjustment. As a practical guide:
| Radial engagement (e) | CTF | Feed increase |
|---|---|---|
| ≥ 50% (incl. full slot) | 1.00 | 0% (no boost applied) |
| 40% | 0.98 | +2% |
| 25% | 0.87 | +15% |
| 10% | 0.60 | +67% |
The Cut Setup panel also shows the recommended WOC range for the selected material and mode. Standard cuts in wood/plastics target 30–50% (up to 100% for through-cuts/dadoes); metals target 20–35% (60% max). Finishing passes use much lighter engagement: 5–15% for wood/plastics, 3–10% for metals. Surfacing bits override this entirely — the engine recommends 40–60% of bit diameter (typical 50%), reflecting the wide face-milling passes those bits are designed for.
Output Locking & DOC–Feed Coupling
Any output value can be locked by clicking it. Locked values are held fixed while the engine re-solves the remaining free outputs around the constraint. The coupling between chipload, feed rate, and depth of cut follows a physics-based power law:
The exponent k is resolved per material — row-level override first, then a material default, then 0.5 as a final fallback. Representative defaults: softwood k ≈ 0.38, hardwood ≈ 0.48, dense exotics ≈ 0.50, MDF/particleboard ≈ 0.35, acrylic/plastics ≈ 0.28, and metals ≈ 0.30. A lower k means a shallower coupling — DOC and chipload trade off less steeply. Plastics and metals sit low because radial chip thinning dominates more than axial DOC in those materials. Practical implications:
- Lock DOC deeper than baseline — chipload decreases to compensate; feed rate drops accordingly.
- Lock DOC shallower than baseline — chipload increases; the engine warns if it exits the safe range.
- Lock feed rate — chipload is back-calculated as FR ÷ (Flutes × RPM); DOC is solved from the inverse power law.
- Lock chipload — feed rate is FR = CL × Flutes × RPM; DOC is back-solved from the power law.
Out-of-range overrides trigger field-level warnings directly on the affected metric. Multiple locks interact — chipload takes priority over feed over DOC when more than one is set.
Warnings
The calculator generates warnings when inputs combine in ways that commonly cause problems. These are practical guardrails, not hard limits:
Machine & setup
- Aggressive approach on low-rigidity machine — approach ≥ 0.75 on a tier 1 or 2 machine. The calculated feed and DOC may push the frame into chatter territory even if the chipload is technically correct.
- Large bit on a light machine— a 1/2" or larger bit on a tier 1–2 machine. Moment arm from the bit tip amplifies frame flex.
- Long-flute deflection— fired when L:D > 4 and the flute-length data is available. Severity escalates to warnat L:D > 6 on a tier 1–2 machine, or at L:D > 8 on any machine.
Material
- Metals require lubrication — aluminum and brass need a WD-40 mist or cutting oil, plus a rigid machine (tier 3+). Dry cutting aluminum on a hobby machine causes built-up edge and bit failure.
- Surface speed out of range (SFM)— fires on metals when RPM drives SFM above or below the material's rated range. Includes the corrected RPM target needed to bring SFM back into range.
Bit geometry
- Collet mismatch— danger. The selected bit's shank diameter is not compatible with the router's collet system. Do not run this combination — the bit will not seat properly and will be ejected at speed. Select a router that accepts the bit's shank, or choose a bit with a compatible shank size.
- Fragile small bits— 1/16" and smaller bits break easily. Conservative stance, zero runout, and a quality collet are critical. DOC is held to 65% of published max.
- V-bit geometry — effective cutting diameter varies with DOC. Parameters are valid at full V-engagement depth; for lettering and 3D V-carving let CAM drive the depth.
- Drill bit semantics — chipload applies to plunge/peck operations only, not lateral milling. The result panel shows a feed per revolution value (in/rev) alongside the standard outputs — this is the more practical number for peck-drilling cycle setup in CAM.
- Surfacing bit— large diameter produces high SFM at normal router RPM. DOC is hard-capped at 0.030" regardless of stance or machine tier. The recommended stepover range is 40–60% of bit diameter (typ 50%); this overrides the standard WOC fractions shown in the Cut Setup panel.
- Engraving bit— values are for the shank diameter; the actual cutting tip may be 0.01–0.03" wide. Any lateral force risks breakage.
- Tapered ball-end — effective diameter varies along the taper. For 3D finishing use CAM step-over control rather than the DOC field.
- Compression bit: DOC too shallow — fires when the recommended DOC is below the upcut flute length. Below that threshold only the upcut section contacts the material, losing the top-surface tearout protection the compression geometry provides.
Entry strategy
- Downcut bit + plunge entry — downcut bits push chips into the cut on a vertical plunge. Chips pack and can break the bit. Use ramp or helical entry.
- Compression bit + plunge entry — vertical plunge risks top-surface tearout during entry. Ramp or helical entry is preferred.
Width of cut
- WOC exceeds bit diameter — physically impossible; value is clamped and the override is rejected.
- Chip thinning active — informational. Shows the CTF, actual chip thickness, and the feed rate increase applied.
- WOC outside recommended range — advisory when the entered WOC is above the recommended max (chip evacuation risk) or below the recommended min (very high chip-thinning compensation — verify your CAM path).
Locked overrides
- RPM out of router range — danger. Locked RPM is outside the physical capability of the selected router.
- RPM outside recommended range— warn. Locked RPM is within the router's limits but outside the chipload row's suggested range.
- Feed rate / DOC out of range — warn. Locked values are outside the calculated safe operating window.
- Chipload out of range — warn or danger depending on how far outside the recommended range the value falls. Below min = rubbing/burning risk. Above max = deflection and breakage risk.
Data quality
- Estimated data — informational. The chipload for this bit/material combination was derived from general theory rather than a manufacturer or community source. Max chipload is reduced 15%. Real-world test cuts are recommended.
- No chipload data found — danger. No data exists for this combination; a hardcoded conservative fallback is used.
Additional Outputs & Advisories
Beyond RPM, feed, and DOC, the engine computes several secondary outputs and context-aware advisories:
- Material removal rate (MRR) —
feed × DOC × WOCin³/min (full-width assumed when no WOC is set). Advisory ceilings scale with machine tier (~1.5/3/5/8 in³/min for tiers 1–4 in wood; ~0.15 in³/min for hobby aluminum/brass). Exceeding the ceiling fires an info or warning prompt to check for chatter — not a hard stop. - Feed per revolution (drill bits) —
feed ÷ RPM. For plunge/peck drilling this is more practical than per-tooth chipload, so it's surfaced alongside the standard outputs. - Climb vs. conventional advisory— tier 1–2 machines and all metal cuts are steered to conventional milling (grab risk / built-up edge); tier 3–4 finishing passes in wood/plastic are steered to climb for a cleaner wall; otherwise it's the user's choice.
- Stock-thickness warnings — when stock thickness is entered, DOC exceeding 40% / 60% / 100% of it escalates from info to warning to danger (workpiece flex, tab/hold-down advice, cut-through alert).
Two hard safety guards run regardless of UI filtering, because persisted state, shared URLs, or imports can bypass the pickers:
- Router/machine compatibility— a router not in the machine's supported set produces a blocking danger warning.
- Collet compatibility— a bit shank that doesn't match any of the router's collet sizes is blocked. Running it would eject the bit at speed.
What the Calculator Doesn't Know
These recommendations are a starting point, not a final answer. Several real-world factors are outside the model:
- Workholding quality — a poorly-clamped part will chatter at any feed rate. Workholding is often the binding constraint, not the machine.
- Bit wear — a dull bit requires lower chiploads to produce clean results. All recommendations assume sharp tooling.
- Chip evacuation — in MDF, plastics, and pockets, recutting chips is a bigger failure mode than any feed setting. Dust collection and toolpath strategy matter.
- Material variation — wood moisture content, grain direction, knots, and inconsistent density across a sheet all affect real-world performance.
- Climb vs. conventional— on a hobby machine, conventional milling is generally safer at higher feeds. The recommendations don't specify cut direction.
- Width of cut / stepover (when not entered)— when no WOC is set in Cut Setup, the engine assumes full-slot engagement. If you're running a profile or adaptive toolpath at partial stepover, enter the WOC to get the chip-thinning-adjusted feed rate rather than treating the full-slot result as a conservative baseline.
The right workflow: start at conservative or balanced approach, listen to the machine, and move the slider up if cuts are leaving burn marks or the feeds feel timid. Move it down if you hear chatter or the machine deflects.