How to Create Tool Paths for a CNC Machine
This guide walks through the full workflow: reading the CAD model, choosing tools and parameters, generating roughing and finishing passes, simulating, and posting code for a specific machine. It is written for engineers and CAM programmers who need parts that hold tolerance on the first run, not just in simulation.

In this article
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Key takeaways
What a Tool Path Actually Controls
A tool path is the ordered list of moves a cutting tool makes through the stock. Each move carries a feed rate, a spindle speed, a depth of cut, and a direction. The CAM software decides these values from the geometry, the tool you selected, and the material you told it about. Get any one of those wrong and the part either misses tolerance or the tool breaks.
The four outcomes that matter on the shop floor are dimensional accuracy, surface finish, cycle time, and tool life. A path that holds ±0.005 mm on a 6061 aluminum bracket may scrap a 17-4PH stainless part because the same parameters overload the cutter. Material behavior drives the numbers, not the other way around.
For an engineer reviewing a quote or a first article report, the tool path is the part of the process you cannot see in the drawing. It is also the part most likely to explain why a feature came out 0.03 mm undersize or why a corner has chatter marks. When you know how to create tool paths, you can ask the right questions about a supplier's process.
- 1Feed rateHow fast the tool advances, in mm/min or in/min. Too high overloads the edge; too low rubs and work-hardens.
- 2Spindle speedRPM of the tool. Surface speed (m/min) depends on tool diameter and material.
- 3Depth of cutAxial and radial engagement. This sets the load on the cutter and the machine.
- 4StepoverRadial overlap between passes. Controls scallop height on curved surfaces.
Prepare the CAD Model Before CAM
CAM software will happily generate a tool path on bad geometry. That is the trap. Import a STEP or IGES file rather than an STL when accuracy matters, because tessellated formats approximate curves and can shift a Ø10 mm bore by a few hundredths. STL is fine for a visual prototype, not for a mating feature.
Before you import, check three things: units, tolerances, and datum. A model built in inches and imported into a millimeter CAM session will produce a part 25.4 times too large. Confirm the drawing calls out the tolerance class for each critical feature, then set the CAM tolerance to one tenth of the tightest requirement.
Repair open surfaces, duplicate faces, and zero-thickness walls. A single gap in a cavity floor can make the roughing path plunge into thin air or leave a wall of stock that no finishing pass removes. Most CAM packages have a geometry check tool; run it and fix every error before you build a single operation.
For parts headed to 5-axis work, check that the model includes the fixturing clearance you need. A feature that is easy to reach on a 3-axis vise may sit behind a clamp once the part is rotated. Moving the setup in CAD is far cheaper than discovering the collision on the machine.
- 1UnitsConfirm mm or inch on both the model and the CAM session.
- 2ToleranceSet CAM chord tolerance to about one tenth of the drawing tolerance.
- 3DatumAgree on the zero point with the drawing and the fixture.
- 4StockModel the actual blank, including saw cut and any pre-machined faces.
Select Tools and Cutting Parameters by Material
Pick the largest tool that reaches every feature, then step down in size only where geometry forces it. A 12 mm end mill removes stock far faster than a 6 mm tool, but it cannot enter a 4 mm slot. Find the smallest internal radius in the part first; that radius plus the tool radius sets your minimum cutter diameter.
For aluminum such as 6061-T6, a 3-flute carbide end mill runs well at a surface speed of 300–500 m/min with a 0.5–1.0 × D axial depth of cut and 0.4–0.6 × D radial engagement in a high-efficiency path. For 304 stainless, drop surface speed to 80–150 m/min, use a 4-flute tool with a coating, and keep radial engagement around 0.3 × D to control heat and work hardening.
Titanium and Inconel need conservative numbers. On Ti-6Al-4V, surface speed of 40–80 m/min with flood coolant and a sharp uncoated or AlTiN-coated tool keeps the heat in the chip. Running too slow is also a mistake: rubbing dulls the edge faster than a proper chip load does.
Roughing leaves stock for finishing. On a milled pocket, 0.3–0.5 mm radial and 0.1–0.2 mm axial stock is a common allowance for a finishing pass that will hold Ra 0.8–1.6 μm. If the drawing calls for Ra 0.2–0.8 μm, plan a separate semi-finish and finish operation, and expect to use a smaller stepover.
- 1Smallest radiusInternal corner radius sets the smallest tool you need.
- 2Flute countMore flutes for harder materials, fewer for aluminum chip clearance.
- 3Stock onLeave 0.3–0.5 mm radial for the finish pass.
- 4CoolantFlood for stainless and titanium; air blast often enough for aluminum.
Roughing and Finishing Strategy That Holds Tolerance
Roughing removes the bulk of the material and is judged on speed and tool life, not on finish. Use adaptive or trochoidal paths where the CAM package supports them; they keep radial engagement constant and let you push axial depth without stalling the spindle. For a deep pocket in 6061, a 2–3 × D axial depth with 0.1 × D radial engagement is realistic on a rigid machine.
Finishing is judged on the drawing. A parallel or constant-stepover path over a curved surface leaves scallops whose height depends on tool radius and stepover. For a Ø6 mm ball nose tool and a target scallop of 0.005 mm, stepover falls in the 0.2–0.3 mm range. That is slow. If the surface is cosmetic only, loosen the scallop target and save cycle time.
Corners are where finishing paths fail. A sharp internal corner cut by a round tool leaves an uncut radius equal to the tool radius. If the drawing shows a true sharp corner, the designer needs to know the tool cannot produce it, or a smaller tool and a rest-machining pass are required. Rest machining re-cuts only the stock left by the larger tool, which is faster than running the whole cavity with the small one.
Watch the entry and exit. Helical or ramp entries load the cutter gradually; a straight plunge in hard material can chip the edge or push the part out of the vise. Lead-in and lead-out arcs also avoid witness marks where the tool changes direction on the finished surface.
- 1Adaptive roughingConstant engagement allows deeper axial cuts and better tool life.
- 2Scallop controlStepover and tool radius set the surface scallop height.
- 3Rest machiningSmall tool only where the large tool could not reach.
- 4Entry typeHelix or ramp in; avoid straight plunges in hard materials.
Simulate, Post-Process, and Prove Out
Simulation catches collisions between the holder, the fixture, and the part. Run it in material-removal mode, not just tool-path view, so you can see remaining stock and verify that no feature is left oversize. Check rapid moves at full machine feed; a rapid that passes through a clamp is a crash, and no amount of feed-rate reduction will save it.
The post-processor converts the internal path into G-code for your control. A post written for a Fanuc control will not run correctly on a Siemens or Heidenhain machine without changes. Verify the output for correct work offsets, tool length compensation, and coolant commands. If the machine has a rotary table, confirm the post handles the fourth axis direction and any unwind moves.
Prove out on the machine with a dry run or a single-block first cut. Use a first-article inspection on the critical features: bore diameters, flatness, and any position callout. If a feature is out of tolerance, check the tool offset and the setup before you blame the path. On a 100% inspected job, a first article is the cheapest place to find a 0.02 mm error.
Once the path is proven, save the setup sheet with tool numbers, offsets, and program revision. The next run of the same part should not require re-solving the same problems.
- 1Material removalSimulate stock removal, not just the tool line.
- 2Post checkConfirm control type, offsets, and rotary direction.
- 3First articleInspect critical features against the drawing before full production.
- 4Setup sheetRecord tools, offsets, and program revision for repeat runs.
Step by Step: How to Create Tool Paths for a CNC Machine
Eight steps from CAD file to proven program.
- 1Validate the design dataImport STEP or IGES, confirm units, and set CAM tolerance to one tenth of the tightest drawing tolerance. Repair gaps and duplicate faces. Do not start CAM on a model with open surfaces.
- 2Choose CAM software that matches your work2.5-axis for plates and brackets, 3-axis for contoured molds, 5-axis for impellers and medical parts. Pick a package with a proven post for your machine control, not the one with the best demo.
- 3Set up the model and stock in CAMDefine the work coordinate system to match the drawing datum. Model the actual blank including saw cut. Set the zero point where the operator can touch off without removing the part.
- 4Select tools and parametersChoose the largest tool that reaches the smallest internal radius. For 6061, run 300–500 m/min surface speed; for 304 stainless, 80–150 m/min with 0.3 × D radial engagement. Leave 0.3–0.5 mm radial stock for finishing.
- 5Generate roughing passesUse adaptive or trochoidal paths where possible. Keep entry as a helix or ramp, never a straight plunge in hard material. Check remaining stock in simulation after each operation.
- 6Generate finishing passesSet stepover from the required scallop height. Add rest machining for corners the large tool cannot reach. Use lead-in and lead-out arcs to avoid witness marks on the finished surface.
- 7Simulate and optimize the pathRun material-removal simulation with the holder and fixture modeled. Check rapid moves at full feed. Look for air cutting and reduce it; air cutting is cycle time you cannot bill.
- 8Post-process and prove outPost to the correct control, verify offsets and compensation, then run a dry run or single-block first cut. Inspect the first article before releasing the job to production.
Tool Path Parameters by Material and Feature
Starting points for common materials. Adjust for machine rigidity and tool coating.
| Material | Surface speed | Radial engagement | Finish stock |
|---|---|---|---|
| 6061-T6 aluminum | 300–500 m/min | 0.4–0.6 × D | 0.3–0.5 mm |
| 7075 aluminum | 200–400 m/min | 0.4–0.6 × D | 0.3–0.5 mm |
| 304 stainless | 80–150 m/min | 0.3 × D | 0.2–0.3 mm |
| 17-4PH stainless | 60–120 m/min | 0.3 × D | 0.2–0.3 mm |
| Ti-6Al-4V titanium | 40–80 m/min | 0.2–0.3 × D | 0.2–0.3 mm |
| Inconel | 25–50 m/min | 0.2 × D | 0.2 mm |
| POM / PEEK plastic | 200–400 m/min | 0.5 × D | 0.3–0.5 mm |
Create the path, then prove it
A tool path is a hypothesis until the first article passes inspection. Simulate, post, and cut a test part before releasing the job to production.
Frequently Asked Questions
Can I create a tool path directly from an STL file?
Yes, but the result depends on the mesh density. An STL approximates curves with flat triangles, so a Ø10 mm bore may come out undersize or faceted. Use STL for visual prototypes and STEP or IGES when a mating feature or a tolerance callout is involved.
If STL is the only format available, ask for a finer mesh and check the critical dimensions in the CAM model before generating the path.
How much stock should I leave for the finishing pass?
On a milled pocket, 0.3–0.5 mm radial and 0.1–0.2 mm axial is a practical allowance. It is enough to clean up the roughing marks without loading the finishing tool.
For a tight finish such as Ra 0.2–0.8 μm, plan a semi-finish pass first, then finish with a small stepover. Trying to remove 1 mm in one finishing pass usually costs more in tool life than it saves in cycle time.
Why does my finishing pass leave chatter marks in the corners?
Corner engagement spikes when the tool wraps more of its diameter into the material. The radial engagement can jump from 0.3 × D to nearly 1.0 × D in a single move, which deflects the tool and leaves chatter.
Reduce feed in corners, use a trochoidal corner path, or switch to a smaller tool with rest machining. A rigid setup and a shorter tool holder also help.
Does the post-processor really matter if the G-code looks correct?
It matters more than most programmers expect. A post written for one control can produce valid-looking code that runs the rotary axis the wrong way or omits a required compensation call.
Verify the post against the machine manual for work offsets, tool length compensation, and coolant commands. Run a dry run before the first cut on any new post.
How do I handle a feature that is too deep for my tool?
Check the tool's length-to-diameter ratio. Beyond about 4 × D, deflection grows and chatter becomes likely. Options include a larger diameter tool with a relieved neck, a shorter holder, or splitting the depth into multiple setups.
On a 5-axis machine, tilting the tool can sometimes reach a deep wall that a 3-axis setup cannot. The trade-off is setup complexity and cycle time.
What should be on the setup sheet after the path is proven?
Tool numbers, offsets, program revision, work offset values, and any special notes about clamping or coolant. Include the inspection results for the critical features.
A setup sheet turns a one-off success into a repeatable process. Without it, the next run starts from scratch.
Send Us Your CAD File
Upload a STEP file and we will return a quotation with free DFM analysis within 12 hours. Production can start within 24 hours.
12-hour quoteFree DFM analysisNo minimum order quantity100% inspection before shipment