M08 is the CNC M-code that turns on flood coolant. It tells the machine to open the coolant valve and flood the cutting area with liquid coolant. You’ll see it in nearly every real-world CNC program that involves cutting metal.
Key Takeaways
- M08 turns on flood coolant — the most common coolant type used in CNC machining
- It’s a modal command, meaning it stays on until you cancel it with M09
- Flood coolant lubricates the cutter, clears chips, and reduces heat buildup
- M07 turns on mist coolant — a lighter alternative that uses less fluid
- Always cancel coolant with M09 before the program ends or before a tool change on machines that require it
| M08 – At A Glance | |
|---|---|
| Function | Turn on flood coolant |
| Type | Modal |
| Cancelled by | M09 |
| Related codes | M07 (mist coolant) |
What Does M08 Do?
M08 opens the flood coolant valve on your CNC machine. Coolant flows out through nozzles directed at the cutting tool and workpiece. It keeps running until you turn it off with M09.
The word “flood” is pretty literal — you’re washing the cutting zone with a steady stream of liquid. That liquid is typically a water-based coolant mixture, though some machines use oil-based coolant depending on the material.

Why Use Flood Coolant?
There are three main reasons machinists use coolant:
Lubrication — Coolant reduces friction between the cutting tool and the workpiece. Less friction means less heat generated at the cut.
Chip clearing — Coolant washes chips away from the cutting zone. If chips pile up, they get recut. Recutting chips causes heat buildup and can damage or dull your tool faster.
Heat reduction — Cutting metal generates a lot of heat. Excess heat shortens tool life, can cause workpiece distortion on tight-tolerance parts, and may affect the surface finish.
All three work together. A cooler, cleaner cut means longer tool life and better part quality.
M08 vs M07: Flood Coolant vs Mist Coolant
The two most common coolant M-codes are M08 and M07.
M08 — Flood coolant sends a continuous stream of liquid coolant to the cutting zone. It’s the standard choice for most metal cutting operations.
M07 — Mist coolant mixes coolant with compressed air and sprays a fine mist. It uses less coolant fluid and makes less of a mess, but it’s not as effective at pulling heat out of the cut. Mist is more common with materials that don’t tolerate flooding well, or in shops trying to reduce coolant consumption.

When in doubt, flood coolant is the safer default for most CNC milling and turning applications.
Other Coolant Options
Beyond flood and mist, you’ll run into a few other coolant delivery methods on industrial machines:
Air blast — Uses compressed air only, no fluid. It clears chips and reduces some heat but doesn’t lubricate. Common with materials like aluminum in certain setups, or with materials that react poorly to liquid coolant.
High-pressure coolant — Same idea as flood coolant, but the coolant hits the workpiece at over 1,000 PSI. The higher pressure and volume helps with aggressive chip evacuation — especially useful in deep pocketing, threading, and difficult materials like titanium or Inconel.
Through-spindle coolant — Coolant flows through the center of the spindle and exits right at the cutting edge. This is especially effective for drilling deep holes because it pushes chips back up and out of the hole rather than relying on the coolant to reach the bottom from outside.
M08 in a Program Example
M08 is typically placed at the start of a cutting sequence, right after you position the tool and before the first cut. It stays on throughout the operation. M09 turns it off.
Here’s a simple milling example:
G90 G54 G00 X0. Y0. (Absolute mode, work offset, rapid to start)
G43 H01 Z1.0 M03 S3000 (Tool length comp, spindle on at 3000 RPM)
M08 (Flood coolant ON)
G01 Z-0.25 F20.0 (Feed down to depth)
X5.0 (Mill across the part)
G00 Z1.0 (Rapid up)
M09 (Flood coolant OFF)
M05 (Spindle off)
M30 (Program end)
You can also put M08 on the same line as a motion command — the machine will turn on the coolant as it starts that move. Both formats are valid; putting it on its own line is just easier to read.
COMMON MISTAKE – Leaving M08 active during a tool change
Why it matters: On most machines, coolant should be off during a tool change (M09 before T__ M06). Coolant running during a tool change can flood the spindle taper or make the tool change unreliable.
Some machines handle this automatically; others don’t. When in doubt, always program M09 before M06.
How to Turn Off Flood Coolant
Use M09 to turn off all coolant — flood, mist, or otherwise.
Several other M-codes also cancel coolant as part of their function:
Even though these commands typically cancel coolant, it’s good practice to include an explicit M09 in your program before program end. That way the behavior is predictable regardless of which control you’re running.
COMMON MISTAKE – Forgetting M09 before M30 (program end)
Why it matters: On some controls, M30 will shut off coolant as part of the end-of-program sequence. On others, it won’t. If you forget M09 and the machine doesn’t cancel it automatically, coolant keeps running after the program ends.
Always program M09 explicitly — don’t rely on M30 to do it for you.
FAQS
Does every CNC machine have flood coolant?
Industrial CNC mills and lathes almost always include a coolant system. Hobbyist machines — like desktop CNC routers — usually don’t come with coolant as standard, though it can often be added. If you’re programming for a machine without coolant, simply leave M08 out of your program.
Is M08 the same on every CNC control?
M08 is the standard code for flood coolant on most Fanuc-based and Fanuc-compatible controls. Most machines follow this convention. However, some manufacturers use custom M-codes, so always check your machine’s programming manual if M08 doesn’t behave as expected.
Can I use M07 and M08 at the same time?
On most machines, no — they operate the same valve system. Using both at once typically just activates whichever was called last. Some machines with separate mist and flood systems can run them together, but this is uncommon. Check your machine documentation.
Where in the program should I put M08?
Put it after the spindle starts (M03 or M04) and before the first cut. You want the spindle up to speed before coolant comes on. Turning on coolant before the spindle is spinning doesn’t cause a crash, but you end up flooding the part for no reason while the spindle ramps up.