All Resources
GuideAutomation2026-03-01

CNC Feeds and Speeds Quick Reference

Essential formulas, material lookup tables, and tool-specific adjustments for calculating CNC feed rates and spindle speeds. Includes a programmatic calculation example.

Core Formulas

Spindle Speed (RPM)

RPM = (SFM × 12) / (π × tool diameter)

Or in metric:

RPM = (cutting speed in m/min × 1000) / (π × tool diameter in mm)

Feed Rate (IPM / mm/min)

Feed Rate = RPM × number of flutes × chip load per tooth

Material Removal Rate (MRR)

MRR = width of cut × depth of cut × feed rate

Surface Speed (SFM) Reference Table

MaterialHSS (SFM)Carbide (SFM)
Aluminum (6061)300-600800-1500
Mild Steel (1018)60-100300-600
Stainless (304)30-60150-350
Tool Steel (D2)20-40100-200
Brass200-400600-1000
Plastics (Acetal)300-500500-1000
Titanium (Ti-6Al-4V)20-40100-200

Chip Load Reference (inches/tooth)

Tool DiameterAluminumSteelStainless
1/8" (3mm)0.0020.0010.0008
1/4" (6mm)0.0040.0020.0015
3/8" (10mm)0.0050.0030.002
1/2" (12mm)0.0060.0040.003
3/4" (20mm)0.0080.0050.004
1" (25mm)0.0100.0060.005

Adjustments

Depth of Cut

  • Roughing: Up to 1x tool diameter depth, 50-70% width
  • Finishing: 0.1-0.5mm depth, full width OK
  • Slotting: Reduce feed by 50% (no chip evacuation advantage)

Tool Type

  • Ball end mill: Calculate SFM using effective diameter at depth of cut, not nominal diameter
  • Face mill: Higher chip loads than end mills — typically 1.5-2x
  • Drill: Use separate drill speed/feed charts — chip load is per revolution, not per tooth

Practical Example

Given: 1/2" 4-flute carbide end mill, cutting 6061 aluminum

  1. SFM: 1000 (carbide in aluminum)
  2. RPM: (1000 × 12) / (3.14159 × 0.5) = 7,639 RPM
  3. Chip load: 0.006 in/tooth
  4. Feed rate: 7,639 × 4 × 0.006 = 183 IPM

Programmatic Calculation

public static (double rpm, double feedRate) CalculateSpeeds(
    double sfm, double toolDiameter, int flutes, double chipLoad)
{
    double rpm = (sfm * 12) / (Math.PI * toolDiameter);
    double feedRate = rpm * flutes * chipLoad;
    return (Math.Round(rpm), Math.Round(feedRate, 1));
}

Tips

  • These are starting points — adjust based on machine rigidity, tool length, and actual cutting conditions
  • Listen to the cut: chatter means too aggressive, squealing means too slow
  • For adaptive/trochoidal milling, increase RPM by 50% and use light radial engagement (10-15% WOC)
  • Always verify maximum RPM of your spindle before calculating — don't exceed machine limits
CNCFeedsSpeedsMachiningManufacturing