CNC Router Speeds and Feeds Calculator
A CNC router speeds and feeds calculator turns bit diameter and material into spindle RPM and feed rate, the two numbers a Shapeoko, Onefinity, X-Carve, ShopBot, or Avid CNC control actually programs. This calculator handles hardwood, softwood, plywood, MDF, plastic, acrylic, foam, and aluminum on a router; it uses the same SFM and chip load equations that Onsrud Cutter, Amana Tool, and Whiteside publish in their router bit data sheets. Output is capped at your router's max RPM so you get a number you can actually run.
CNC router speeds and feeds formulas
The formulas are the same as for milling; the difference is material SFM and chip load values.
- Spindle RPM = (SFM x 12) / (pi x D) where D is the bit diameter in inches.
- Feed rate (IPM) = RPM x chip load per tooth x flute count.
- mm/min = IPM x 25.4.
Example: 1/4 inch 2 flute compression bit in hardwood at 2,200 SFM, 0.008 IPT baseline. Formula RPM = (2200 x 12) / (pi x 0.25) = 33,614 RPM. Most routers cap at 18,000-24,000 RPM; at 18,000 RPM and 0.008 IPT with 2 flutes, feed = 18,000 x 0.008 x 2 = 288 IPM (7,315 mm/min). That is a realistic CNC router speeds and feeds calculator output for a 1/4 inch bit cutting oak or maple.
CNC router speeds and feeds chart
| Material | Carbide SFM | Chip load (IPT) | Typical feed (1/4" bit, 18k RPM, 2 flutes) |
|---|---|---|---|
| Hardwood (oak, maple, walnut) | 2200 | 0.008 | 288 IPM |
| Softwood (pine, cedar) | 2800 | 0.012 | 432 IPM |
| Plywood (Baltic birch) | 2300 | 0.009 | 324 IPM |
| MDF | 2500 | 0.010 | 360 IPM |
| OSB | 2200 | 0.010 | 360 IPM |
| Particleboard / melamine | 2400 | 0.011 | 396 IPM |
| Acrylic (cast) | 2400 | 0.006 | 216 IPM |
| Plastic (Delrin, HDPE) | 2000 | 0.005 | 180 IPM |
| Foam (polyurethane) | 3000 | 0.015 | 540 IPM |
| Aluminum 6061 | 1500 | 0.004 | 144 IPM |
CNC router speeds and feeds calculator for Shapeoko, Onefinity, X-Carve
Hobby routers have three constraints that a shop VMC does not: spindle torque is limited, machine rigidity is limited, and dust collection is usually non-optional. Plug your router max RPM into this CNC router speeds and feeds calculator (18,000 for most trim routers, 24,000 for HF spindles, 27,000 for Dewalt 611, 30,000 for Makita RT0701) and the calculator caps the output. For a Shapeoko or X-Carve with a Dewalt 611 at 16,500 RPM (dial 1), a 1/4 inch carbide bit in hardwood wants 132 IPM; at dial 6 (27,000 RPM) it wants 216 IPM. A Shapeoko XL or Pro that is rigid enough can push those numbers; a stock X-Carve might bog past 100 IPM.
Chip load and bit life
CNC router chip load is the feed per flute per revolution. Too low (below 0.003 IPT on a 1/4 inch router bit) and the bit rubs instead of cutting, which generates heat, glazes the bit, and burns the wood. Too high (above 0.015 IPT on a 1/4 inch in hardwood) and the bit chatters, chips, or breaks. The CNC router speeds and feeds chart above hits the middle of each range. For a new bit, start at the chart value; if chips come out as dust, bump feed 10 percent; if the router bogs, drop feed 10 percent.
Compression, upcut, downcut, straight
Bit geometry changes the optimum chip load. Compression bits (upcut at tip, downcut at shank) handle plywood and veneered panels best at 0.006-0.010 IPT. Upcut spirals cut the fastest in solid wood at 0.008-0.012 IPT but tear the top face. Downcut spirals leave a clean top face but trap chips; run 0.005-0.008 IPT and ramp cautiously. Straight flutes are rare on modern CNC routers; use spirals unless working very thin stock. This CNC router speeds and feeds calculator uses a balanced chip load that works for any bit style at the chart SFM.
Spindle vs trim router
A variable-frequency spindle (Mechatron, HSD, 2.2 kW Chinese) holds rated RPM under load. A trim router (Makita RT0701, Dewalt 611) drops RPM 20-30 percent under heavy cut. If you run a trim router, aim for the lower chip load and accept slower feed, or upgrade to a spindle for serious work. The CNC router speeds and feeds calculator numbers assume rated RPM at the bit; the cap feature lets you enter the real value.