G94 vs G95: Feedrate Modes Explained – mm/min vs mm/rev in CNC
In CNC machining, feedrate (how fast the tool moves through material) is just as important as spindle speed or depth of cut. But what units is your machine interpreting your feedrate in?
That’s where G94 and G95 come in.
⚙️ What Are G94 and G95?
| G-Code | Mode | Feedrate Unit |
|---|---|---|
| G94 | Feed per Minute | mm/min or in/min |
| G95 | Feed per Revolution | mm/rev or in/rev |
These determine how the controller interprets the F (feedrate) value in your G-code.
📏 G94 – Feed Per Minute (mm/min)
🔹 Used In:
- Milling, drilling, tapping
- When the spindle RPM is stable
🔹 Meaning:
G94
F200 ; Move at 200 mm/min
Regardless of spindle speed, the machine moves at constant linear speed.
✅ Best for consistent chip thickness in milling
🔁 G95 – Feed Per Revolution (mm/rev)
🔸 Used In:
- Turning (lathe) operations
- Where spindle speed varies (e.g., constant surface speed)
🔸 Meaning:
G95
F0.2 ; Move 0.2 mm per spindle revolution
Feedrate synchronizes with spindle RPM.
✅ Best for uniform surface finish in turning
🧪 Example Comparison
Imagine a lathe operation with a spindle running at 1000 RPM.
Using G94:
G94
F200 ; 200 mm/min feedrate
- Linear motion is fixed.
- As spindle speed changes, chip load varies.
Using G95:
G95
F0.2 ; 0.2 mm/rev
- For 1000 RPM → 0.2 × 1000 = 200 mm/min (same)
- But if RPM drops, feedrate drops proportionally — chip load is constant.
🧠 Why It Matters
| Feature | G94 | G95 |
|---|---|---|
| Unit | mm/min | mm/rev |
| Best for | Milling | Turning |
| Surface finish control | ❌ RPM-dependent | ✅ Consistent |
| Chip load control | ❌ Manual compensation | ✅ Automatic via RPM |
| Synchronization | ❌ | ✅ |
🛠️ CAM Software Integration
- Most CAM software automatically selects:
- G94 for milling operations
- G95 for lathe operations
- Some allow manual override in post-processors
- G95 is also used in rigid tapping to sync feed with spindle
🔧 Switching Modes Example
%
O4001 (G94 vs G95)
G21 G17 G90
T1 M6
G0 X0 Y0 Z100
G94
F300 ; Feed at 300 mm/min
G1 Z-5
G95
F0.1 ; Feed 0.1 mm/rev
G1 Z-10 ; Now synchronized with RPM
G94
G0 Z100
M30
%
❗ Common Mistakes
| Mistake | Consequence | Fix |
|---|---|---|
| Using G95 in milling | Tool may move too slowly | Stick to G94 in milling |
| Using G94 in turning with CSS | Inconsistent finish | Use G95 for lathe + CSS |
| Forgetting to declare mode | Unpredictable behavior | Always declare G94/G95 early |
| CAM post uses wrong default | Wrong feed interpretation | Check your post-processor |
📌 Summary Table
| Code | Meaning | Use Case | Feedrate Unit |
|---|---|---|---|
| G94 | Feed per minute | Milling | mm/min |
| G95 | Feed per revolution | Turning | mm/rev |
🔚 Final Thoughts
While both G94 and G95 relate to feedrate, their use in the right context is essential to achieving desired surface finish, tool life, and machining efficiency.
The tool doesn’t care about the number — it cares about chip load. Choose the right mode to keep it consistent.
Leave a comment