CNC Feed Rate Explained: Why F1000 Doesn't Always Mean the Same Thing
This article is part of my CNC & Manufacturing Engineering knowledge base — a growing collection of practical CNC machining guides, engineering tools, and programming resources.
Imagine you open a CNC program and see:
S5000 M03
G01 X100.0 F1000
It seems easy to understand:
- S5000 = 5,000 RPM
- F1000 = 1,000 mm/min
So we know the machining parameters, right?
Not quite.
Now imagine another program:
S10000 M03
G01 X100.0 F1000
The feed rate is still:
- 1,000 mm/min
But is the cutting condition the same?
No.
Now let's make it even more interesting. What if the first tool has 2 cutting edges, while the second has 4?
Both programs still say:
F1000
But what each cutting edge experiences can be completely different.
This is why understanding CNC feed rate requires more than simply reading the F value.
In this article, we will connect:
Cutting Speed → Spindle Speed → Feed per Tooth → Number of Teeth → Feed Rate
By the end, you should be able to look at an F value in a milling program and understand what is actually happening behind that number.
1. What Is Feed Rate?
Let's begin with the simplest definition.
Feed rate describes how fast the cutting tool moves relative to the workpiece along the programmed toolpath.
In metric milling applications, it is commonly expressed as:
mm/min
For example:
F500
may represent a programmed feed of:
- 500 mm/min
depending on the CNC control and active feed mode.
If the machine maintains that feed rate, the controlled point advances approximately 500 mm along the programmed path in one minute.
So far, simple.
But here is the important part:
Feed rate tells us how fast the machine is moving. It does not, by itself, tell us how heavily each cutting edge is being fed.
For that, we need feed per tooth.
2. The Pizza Cutter Example
Let's temporarily forget CNC machines.
Imagine a rotating wheel with one cutting edge. Every revolution, one edge passes through the material.
Now imagine another wheel with four equally spaced cutting edges.
During one revolution:
- The first tool creates: 1 cutting event
- The second tool can create: 4 cutting events
If both tools rotate at the same RPM and you want each cutting edge to receive the same amount of feed, should the machine move at the same feed rate?
No.
The four-edge tool has four cutting opportunities every revolution. So the machine must advance farther per minute to maintain the same feed per tooth.
That is the basic idea behind the feed-rate formula.
3. The Feed Rate Formula
For a typical milling calculation:
Vf = fz × z × n
Where:
| Symbol | Meaning | Typical Unit |
|---|---|---|
| Vf | Feed Rate | mm/min |
| fz | Feed per Tooth | mm/tooth |
| z | Number of effective cutting teeth | teeth |
| n | Spindle Speed | RPM |
The logic is easier than the formula looks. Think of it as:
Feed per Tooth × Teeth per Revolution × Revolutions per Minute = Feed per Minute
Or simply:
mm/tooth × teeth/rev × rev/min = mm/min
The units cancel naturally. That is one of the easiest ways to understand and remember the equation.
4. Our First Calculation
Suppose we have:
- Spindle Speed = 3,000 RPM
- Number of Teeth = 4
- Feed per Tooth = 0.05 mm/tooth
Then:
Vf = 0.05 × 4 × 3000
Vf = 600 mm/min
Our programmed feed rate is:
- 600 mm/min
A simplified CNC command might therefore contain:
F600
But now we understand what is hiding behind that number:
0.05 mm/tooth × 4 teeth × 3,000 RPM
That is much more useful than simply knowing:
F600 means the machine moves at 600 mm/min.
5. Why F1000 Doesn't Always Mean the Same Thing
Now let's return to the question from the beginning.
Consider two machining processes.
Process A
- Feed Rate = 1,000 mm/min
- Spindle Speed = 5,000 RPM
- Number of Teeth = 4
Feed per tooth:
fz = 1000 / (4 × 5000)
fz = 0.05 mm/tooth
Process B
- Feed Rate = 1,000 mm/min
- Spindle Speed = 10,000 RPM
- Number of Teeth = 4
Feed per tooth:
fz = 1000 / (4 × 10000)
fz = 0.025 mm/tooth
Both CNC programs contain:
F1000
But Process B gives each tooth only half the programmed feed per tooth.
So:
Same feed rate does not mean same cutting condition.
This is one of the most important ideas for a CNC beginner to understand.
6. Now Change the Number of Teeth
Let's keep:
- Feed Rate = 1,000 mm/min
- Spindle Speed = 5,000 RPM
But change the cutter.
Tool A — 2 Teeth
fz = 1000 / (2 × 5000)
fz = 0.10 mm/tooth
Tool B — 4 Teeth
fz = 1000 / (4 × 5000)
fz = 0.05 mm/tooth
Tool C — 5 Teeth
fz = 1000 / (5 × 5000)
fz = 0.04 mm/tooth
Again:
- Same F1000.
- Same S5000.
- But a different cutting condition at each tooth.
This is why changing from a 2-flute tool to a 4-flute tool without reviewing the feed rate can completely change the process.
7. The Three Questions Behind Every Milling Feed Rate
Whenever I see a feed rate in a milling program, three questions immediately make the number more meaningful:
- What is the spindle speed? n = ?
- How many effective cutting teeth are involved? z = ?
- What feed per tooth does that produce? fz = ?
Only then does:
F1000
begin to describe a real cutting condition.
This is a useful habit when:
- Reviewing an unfamiliar CNC program
- Troubleshooting machining problems
- Changing cutting tools
- Changing RPM
- Comparing two processes
- Optimizing an existing operation
8. What Happens When RPM Changes?
Suppose a milling process is running at:
n = 3,000 RPM
z = 4
fz = 0.05 mm/tooth
The feed rate is:
Vf = 0.05 × 4 × 3000
Vf = 600 mm/min
Now we increase spindle speed to:
- 6,000 RPM
What feed rate should we use if we want to maintain the same programmed feed per tooth?
Vf = 0.05 × 4 × 6000
Vf = 1,200 mm/min
RPM doubled. Feed rate also doubled.
So:
- 3,000 RPM → 600 mm/min
- 6,000 RPM → 1,200 mm/min
The ratio is maintained.
This gives us an important rule:
If spindle speed changes and you want to maintain the same fz, feed rate must change proportionally.
9. A Common Beginner Mistake
Imagine the original process is:
S3000
F600
Then someone says:
"Let's increase RPM to make the process faster."
They change:
S3000
to:
S6000
but leave:
F600
unchanged.
What happened?
Originally:
fz = 600 / (4 × 3000)
fz = 0.05 mm/tooth
After changing RPM:
fz = 600 / (4 × 6000)
fz = 0.025 mm/tooth
The spindle is rotating twice as fast. But each cutting edge now receives only half the programmed feed per tooth.
So simply increasing RPM did not preserve the original cutting condition.
This is why changing one CNC parameter often requires reviewing another.
10. Feed Rate Is the Result of Other Decisions
This is a useful change in mindset.
Beginners often think:
"What feed rate should I use?"
But a better sequence is often:
What material am I machining?
↓
What cutting tool am I using?
↓
What cutting speed is appropriate?
↓
What RPM does that produce?
↓
What feed per tooth is appropriate?
↓
How many effective cutting teeth do I have?
↓
What feed rate does that produce?
In other words:
Feed rate is often the output of several earlier engineering decisions. It is not always the first number we should choose.
11. Connecting All the Formulas
We can now connect everything from the previous articles.
Suppose:
- Tool Diameter = 10 mm
- Cutting Speed = 120 m/min
- Feed per Tooth = 0.05 mm/tooth
- Number of Teeth = 4
Step 1 — Calculate Spindle Speed
n = (1000 × Vc) / (π × D)
n = (1000 × 120) / (π × 10)
n ≈ 3,820 RPM
Step 2 — Calculate Feed Rate
Vf = fz × z × n
Vf = 0.05 × 4 × 3820
Vf ≈ 764 mm/min
So our starting parameters become approximately:
- Spindle Speed = 3,820 RPM
- Feed Rate = 764 mm/min
Now the chain is complete:
Vc = 120 m/min
↓
D = 10 mm
↓
n ≈ 3,820 RPM
↓
fz = 0.05 mm/tooth
↓
z = 4
↓
Vf ≈ 764 mm/min
This is much more powerful than memorizing two independent numbers:
S3820
F764
Now we understand where both values came from.
12. What Does "F" Actually Mean in a CNC Program?
This needs a little care.
It is tempting to say:
F always means mm/min.
But that is not universally true.
The meaning of the F command depends on:
- CNC control
- Machine type
- Active feed mode
- Programming configuration
For example, CNC systems may support feed modes such as:
- Feed per Minute
- Feed per Revolution
On many controls, commands such as G94 and G95 are associated with these modes, although exact implementation should always be confirmed in the machine/control documentation.
So when reviewing an unfamiliar program, don't automatically assume:
F0.2
and:
F200
represent the same type of feed command.
Always understand the active feed mode.
13. Milling vs. Turning
This is another important distinction.
In milling, feed calculations commonly use:
- Feed per Tooth — fz
because the rotating cutter may have multiple cutting edges.
Therefore:
Vf = fz × z × n
In turning, it is very common to think in terms of:
- Feed per Revolution — fn
For example:
- 0.20 mm/rev
This describes how far the tool advances during one spindle revolution.
So although both milling and turning use the word feed, the most useful way to express feed can differ depending on the process.
This is why understanding the unit is just as important as understanding the number.
14. Why Not Just Increase Feed Rate to Save Time?
Now we reach an interesting production question.
Suppose:
F600 works.
Why not use:
F1200?
After all, the machine will move twice as fast. Wouldn't that cut machining time in half?
Not necessarily.
Increasing feed rate also changes the load on the cutting process if RPM and other parameters remain unchanged.
If:
- n = constant
- z = constant
then increasing Vf means increasing fz.
For example:
At:
3,000 RPM
4 teeth
600 mm/min
we have:
fz = 0.05 mm/tooth
Increase feed to:
1,200 mm/min
and now:
fz = 0.10 mm/tooth
Each cutting edge is being fed twice as much.
That can increase:
- Cutting forces
- Tool deflection
- Spindle load
- Workpiece load
- Fixture load
and may affect:
- Tool life
- Surface finish
- Vibration
- Process stability
So:
Higher feed rate is not free productivity. The cutting system has to support it.
15. But Lower Feed Is Not Automatically Better Either
The opposite mistake is also common.
When a process feels unsafe, the instinct may be:
"Reduce the feed."
Sometimes that is the correct response.
But simply reducing feed without understanding the cutting condition is not always beneficial.
If the feed per tooth becomes too low, the cutting edge may not form the intended chip efficiently. Depending on the application, this can increase rubbing and friction rather than improving the process.
So the goal is not:
- Highest possible feed
or:
- Lowest possible feed
The goal is:
Appropriate feed for the tool, material, engagement, machine, and process.
16. Feed Rate Does Not Tell the Whole Story
Imagine these two operations:
Operation A
S5000
F1000
Operation B
S5000
F1000
Exactly the same RPM. Exactly the same feed rate.
Are they necessarily the same cutting condition?
Still no.
Maybe Operation A uses:
- Ø10 mm, 2-flute cutter
while Operation B uses:
- Ø20 mm, 5-flute cutter
Maybe one operation is:
- Full slotting
while the other uses:
- 10% radial engagement
Maybe one tool has:
- 20 mm overhang
while another has:
- 80 mm overhang
Maybe one is machining:
- Aluminum
and the other:
- Stainless Steel
The numbers on the CNC screen are only part of the story. The cutting system provides the context.
17. Programmed Feed per Tooth vs. Actual Chip Thickness
In the previous article, we introduced an important distinction:
fz is not always identical to actual chip thickness.
The feed-rate equation:
Vf = fz × z × n
gives us the programmed feed relationship.
But actual chip formation can also depend on cutter engagement and geometry.
For example, with very small radial engagement, the maximum chip thickness may be lower than the programmed feed per tooth.
This is known as:
Radial Chip Thinning
In some machining strategies, feed may need to be adjusted to achieve the desired chip thickness.
This becomes particularly relevant in:
- High-efficiency milling
- Light radial engagement
- Trochoidal milling
- Certain finishing strategies
We will cover chip thinning separately because it deserves a full article of its own.
For now, remember:
Programmed feed rate tells the machine how fast to move. The resulting chip depends on how the tool actually engages the material.
18. Another Hidden Variable: Toolpath
This is where modern CNC machining becomes especially interesting.
Imagine a cutter programmed at:
- 1,000 mm/min
In one toolpath, it cuts a straight line with stable engagement. In another, it enters a tight internal corner.
The programmed feed might still be:
1,000 mm/min
but the cutting condition can change significantly because tool engagement changes.
Modern CAM strategies attempt to manage these situations by controlling:
- Engagement angle
- Toolpath curvature
- Radial depth
- Entry motion
- Corner behavior
- Feed optimization
So feed rate is not just a calculator problem. It is also a:
Toolpath problem.
This is one of the bridges between basic CNC calculations and advanced CAM/process engineering.
19. Feed Rate and Machine Limits
Even if the cutting calculation gives a suitable feed rate, the machine still has physical limits.
Consider:
- Maximum feed rate
- Axis acceleration
- Servo capability
- Spindle power
- Machine rigidity
- Toolholder rigidity
- Workholding
- Machine dynamics
A programmed:
F10000
does not guarantee the machine will maintain 10,000 mm/min through every feature.
For example, short moves and tight direction changes may not allow the axes to reach the programmed feed before they must decelerate again.
This becomes increasingly important in:
- High-speed machining
- Small features
- Complex contours
- 3D surface machining
The programmed feed and the actual instantaneous machine feed are not always identical throughout the entire toolpath.
20. A Practical Feed-Rate Workflow
For a new milling operation, a simplified workflow can look like this:
Step 1 — Identify the Workpiece Material
Know the material and condition as accurately as practical.
↓
Step 2 — Select the Cutting Tool
Consider: diameter, tool material, coating, geometry, number of effective cutting teeth.
↓
Step 3 — Obtain Starting Cutting Data
Determine appropriate starting values for Vc and fz using reliable tool-manufacturer data or validated process knowledge.
↓
Step 4 — Calculate RPM
n = (1000 × Vc) / (π × D)
↓
Step 5 — Calculate Feed Rate
Vf = fz × z × n
↓
Step 6 — Review Engagement
Consider: axial depth of cut, radial engagement, slotting vs. side milling, entry conditions, toolpath.
↓
Step 7 — Check Machine and Setup
Consider: machine limits, toolholder, tool overhang, fixture rigidity, workpiece stability.
↓
Step 8 — Run and Observe
Look and listen for: chip formation, cutting sound, vibration, tool wear, surface finish, spindle load, process stability.
↓
Step 9 — Optimize
Adjust the process based on real machining behavior and engineering requirements.
21. Engineer's Note — Read the Relationship, Not Just the Number
When reviewing a CNC program, it is easy to focus on:
S5000
and:
F1000
But those numbers become much more useful when you translate them into machining relationships.
Ask:
- What cutting speed does S5000 represent at this diameter?
- What feed per tooth does F1000 represent with this tool?
- How many cutting edges are actually engaged?
- What happens if I change RPM?
- What happens if I change the tool?
- What happens when the cutter enters a corner?
This way of thinking turns CNC programming from:
Entering numbers
into:
Understanding a machining process.
That difference becomes increasingly important when troubleshooting, developing new processes, transferring programs between machines, or optimizing cycle time.
22. Try the CNC Feed Rate Calculator
I built a free online CNC Machining Calculator that includes a Feed Rate calculator:
👉 https://lilu1626.github.io/cnc-machining-calculator/
For example, enter:
- Feed per Tooth = 0.05 mm/tooth
- Number of Teeth = 4
- Spindle Speed = 3,000 RPM
The result is:
- Feed Rate = 600 mm/min
You can also use the Feed per Tooth calculator in reverse when you already know the feed rate and want to understand the cutting condition behind an existing CNC program.
The current calculator includes:
- Spindle Speed
- Feed Rate
- Feed per Tooth
- Drilling Parameters
- Cutting Speed
- Material Removal Rate (MRR)
23. A Quick Test
Before finishing, try this without using a calculator.
A cutter has:
- 4 teeth
- runs at: 5,000 RPM
- The recommended feed per tooth is: 0.04 mm/tooth
What feed rate should you program?
Use:
Vf = fz × z × n
Vf = 0.04 × 4 × 5000
The answer is:
- 800 mm/min
Now imagine the RPM increases to:
- 10,000 RPM
while you want to maintain:
- 0.04 mm/tooth
What should the new feed rate be?
- 1,600 mm/min
If that relationship now feels intuitive rather than memorized, you understand the most important part of feed-rate calculation.
24. Five Things to Remember
If you are new to CNC machining, remember these five ideas:
- Feed rate is not an isolated number. It is connected to RPM, feed per tooth, and the number of cutting edges.
- Same F value does not mean same cutting condition. F1000 can represent very different fz values.
- If RPM changes, review feed rate. Maintaining the same fz requires feed rate to change proportionally with RPM.
- More teeth change the required feed rate. Flute count matters.
- The calculated feed is a starting point. Tooling recommendations, engagement, machine capability, rigidity, workholding, and actual cutting behavior still matter.
25. Final Takeaway
The feed-rate formula is simple:
Vf = fz × z × n
But the real lesson is not the equation.
The important lesson is understanding what sits behind the F value in a CNC program.
A feed rate is the result of a relationship between:
How fast the spindle rotates × How many cutting edges are working × How much feed each tooth receives
Once you understand that relationship, CNC parameters stop looking like random numbers.
They begin to tell a story about the cutting process.
What's Next?
We now have a connected machining chain:
Cutting Speed (Vc)
↓
Spindle Speed (n)
↓
Feed per Tooth (fz)
↓
Feed Rate (Vf)
But there is another question:
How much material are we actually removing every minute?
Two machining processes can use similar RPM and feed rates but have completely different productivity because their:
- Depth of Cut
- Width of Cut
are different.
That brings us to the next parameter:
Material Removal Rate — MRR
In the next article:
Material Removal Rate (MRR) Explained: Why Faster Feed Doesn't Always Mean Higher Productivity
we will connect:
Depth of Cut × Width of Cut × Feed Rate
and begin moving from basic CNC calculations into:
Machining Productivity and Process Optimization
Free CNC Machining Calculator
👉 https://lilu1626.github.io/cnc-machining-calculator/
About Li Lu | CNC & Manufacturing Engineering
Li Lu is a Machining Development Engineer at GE Vernova Advanced Manufacturing & Repair Technology (AMRT) in Singapore, with 10+ years in CNC machining, process development, and machine tool integration.
- Engineering Knowledge Base: https://lilu1626.github.io/cnc-manufacturing-engineering/
- CNC Machining Calculator: https://lilu1626.github.io/cnc-machining-calculator/
- GitHub: https://github.com/LiLu1626
- LinkedIn: https://www.linkedin.com/in/lu-li-29b464163/
Top comments (1)