Machine Tool Compensation: What It Corrects and What It Cannot
Machine tool compensation is the control's way of hiding repeatable error. This page explains where that error comes from, how the offsets are built and worn, and when compensation is the wrong fix. Written for engineers and buyers who need to judge a tolerance call, not memorize a parameter list.

Where machine tool compensation actually sits in the control
Every CNC control runs two parallel worlds. One is the programmed path: the coordinates your CAM system posted. The other is the physical path the tool tip actually follows. Machine tool compensation is the layer that reconciles them. If you command X100.000 and the machine cuts at X100.030, the control does not know that unless something tells it.
The telling comes from three sources. Geometry offsets describe the tool: length, diameter, corner radius, wear. Setup offsets describe the fixture and work coordinate system. Volumetric or kinematic data describes the machine itself: squareness, straightness, and the small angular errors between axes that no single tool offset can capture.
On a lathe the picture is simpler. Tool nose radius compensation, written as G41 or G42 in most controls, shifts the cutting point around the nose radius so a taper or an arc comes out at the size you drew. Skip it and a 0.8 mm nose radius will leave roughly 0.3 mm of profile error on a 45° chamfer. That is visible on a drawing check.
On a machining center the same logic applies to cutter radius compensation. It lets you hold a wall with a reground end mill that no longer measures the nominal diameter, and it lets the operator nudge size without reposting the program. The control only knows what offset value you give it. Garbage in, garbage out, at 12,000 rpm.
- 1LatheG41/G42 shift the tangent point around the nose radius
- 2MillCutter compensation absorbs regrind and lets size run at the panel
- 3BothNothing compensates for an error no measurement ever fed back
Thermal growth is the error compensation cannot remove
A spindle running at 15,000 rpm for two hours grows. Ballscrews grow. The column on a large machine can move 0.02–0.05 mm from a cold morning to a warm afternoon in a shop without tight climate control. The control can model this if the builder mapped it, and many high-end controls do carry thermal compensation tables.
Those tables are a model, not a measurement. They assume the machine is in the state the builder measured, with the same duty cycle and the same coolant flow. Run a light finishing pass after a heavy roughing cycle and the model is describing a machine you are not standing in front of.
The practical answer is warm-up. A 20–30 minute spindle warm-up program before the first tight cut costs less than any compensation feature. On parts held to ±0.005 mm, we also let the workpiece and the fixture reach room temperature before the final pass rather than measuring a part that is still cooling.
Where thermal compensation earns its place is long unattended runs. If a machine cuts the same family of parts for eight hours, a mapped thermal model keeps size drift inside a tighter band than a fixed offset would. It buys stability, not accuracy.
- 1Warm up first20–30 minutes of spindle run-in before tight work
- 2Let parts settleMeasure at room temperature, not off the machine hot
- 3Model limitsThermal tables assume the duty cycle they were mapped on
Tool wear compensation: the offset is a moving number
A carbide end mill does not fail suddenly. It wears, and the wear shows up as size drift. On a Ø12 mm cutter running 4140 at 180 m/min, you can expect a few microns of diameter loss per hour of cutting, more if the coating is gone. If the operator never touches the wear offset, the part walks out of tolerance in the same direction every time.
Wear compensation is just a number in the offset page that the operator adjusts between parts. The discipline matters more than the feature. Measure the feature, compare to nominal, move the wear offset by the difference, cut again. Do it every few parts on a tight job and the size stays flat. Skip it and you find out at final inspection.
There is a trap. Wear offsets on a roughing tool and a finishing tool are two different numbers. Apply the finishing tool's offset to the rougher and you leave the wrong stock. Keep separate tool numbers for separate operations, even if the physical cutter is the same insert.
Regrinding complicates this further. A resharpened end mill is smaller than nominal, so the radius offset must change with it. Track the regrind history, or a tool that cut perfectly last month will cut undersize this month with no program change at all.
- 1One tool, one numberSeparate offsets for roughing and finishing operations
- 2Adjust on evidenceMove the offset from a measured part, not a feeling
- 3Log regrindsA reground cutter needs a new radius value
What measurement feedback can and cannot fix
Spindle probes and tool setters feed real numbers into the offset table. A tool setter measures length and diameter after a tool change, so a slightly different insert seating does not scrap the part. A spindle probe measures the workpiece, so a fixture that shifted 0.05 mm gets corrected before the first cut. Both are proven shop practice.
What probing cannot fix is a machine that is not straight. If the X and Y axes are not square to 0.01 mm over 300 mm, probing the part will just relocate the error. You will hit the feature you probed and miss the feature 200 mm away. Squareness and straightness belong to the machine builder, not the operator's offset page.
In-process gauging goes further. A touch probe can measure a critical bore mid-cycle and update the offset for the finishing pass. This is common on automotive and medical work where a feature must land inside ±0.01 mm on every part. It reduces scrap, but it adds cycle time and it needs a stable process underneath.
Additional sensors, laser interferometers, and ballbar tests are how you find out what the machine is really doing. Measure the machine twice a year. The numbers do not lie, and they tell you whether the next job belongs on that machine or another one.
- 1Tool setterCorrects length and diameter after every tool change
- 2Spindle probeRelocates the work coordinate system to the actual part
- 3InterferometerFinds squareness and positioning error the control cannot see
Which compensation method fits which problem
Pick the row that matches the symptom you are seeing on the part.
| Symptom | Likely source | Correct fix |
|---|---|---|
| Size drifts one way over a run | Tool wear | Adjust the wear offset between parts |
| Size moves with shop temperature | Thermal growth | Warm-up cycle plus thermal model |
| Taper or arc is out of profile | Nose radius ignored | Turn on G41/G42 nose radius comp |
| Feature near the probe is good, far feature is not | Machine squareness | Remap the machine, not the offset |
| Every part off by the same amount after a tool change | Insert seating | Tool setter measurement into the offset |
| Bore drifts mid-run on a long cycle | Process instability | In-process probing plus a stable process |
When compensation is the right answer, and when it is not
If the error repeats and you can measure it, compensate it and move on. If the error is random, thermal, or geometric, fix the machine or the process instead. Compensation hides a known number. It does not make an unstable machine stable.
Questions engineers ask about machine tool compensation
Does machine tool compensation let a shop hold tighter tolerances than the machine is rated for?
No. Compensation corrects a repeatable, measurable offset. It does not raise the machine's positioning accuracy or reduce its random error.
If a machine is rated at ±0.01 mm and the process is stable, compensation can keep you consistently near the middle of that band. It cannot push you to ±0.002 mm. That takes a different machine, a controlled room, and a process built for it.
Should I turn cutter radius compensation on for every milling job?
Not automatically. For a simple profile cut with a new cutter at nominal size, comp adds a step where the operator can make a mistake.
It earns its place when the cutter is reground, when you need to nudge size at the panel, or when the same program runs on tools of slightly different diameter. Otherwise, program to the tool center and keep the setup simple.
How often should a machine be remapped?
Twice a year is a sensible baseline for machines running tight work. Add a check after any crash, after a spindle or ballscrew replacement, and after the machine is moved.
A ballbar test takes under an hour. A laser interferometer run takes longer. Both give you numbers you can compare against the last run, which is the only way to see slow drift before it shows up in a part.
Why did my part measure good on the machine and bad in the inspection room?
Two common causes. The part was still hot when measured, so it shrank as it cooled. Or the machine's scale reads the slide position, not the actual cut surface, and the difference shows up once the part is off the fixture.
Let the part reach room temperature before final measurement. If the gap persists, you are seeing machine geometry error, and that is a remapping job, not an offset job.
Can compensation replace a warm-up cycle?
No. A thermal model predicts growth from a known starting state. A warm-up cycle puts the machine into that state in the first place.
Run the warm-up, then let the model do its job. Skipping the warm-up means the model is describing a machine that does not exist yet.
What documentation should a shop keep for compensation settings?
Keep the tool offset history, the regrind log, and the machine mapping reports. On regulated work, ISO 9001 and IATF 16949 audits will ask how you know the offset is correct.
A measured part with a date and an operator name answers that question. A memory of adjusting something last week does not.
Send us the drawing and the tolerance call
We machine to ±0.005 mm with 100% inspection before shipment, and we will tell you honestly whether your tolerance needs a compensated process or a different machine.
12-hour quoteFree DFM analysis100% inspection