GreatLight CNC Machining Factory logo
CNC Machining
Rapid Prototyping
Materials
Industries
News
About GL

Get Instant Quote

CNC setup reference

Three Remuneration Methods Used in CNC Treatment

Compensation is the quiet part of machining. Get it wrong and the part is scrap before the finish pass. This guide covers the three compensation methods used in CNC treatment, with setup steps, parameter ranges, and the errors we see most on the shop floor.

Tool length compensationCutter radius compensationWork offset compensation±0.005 mm capability
Three remuneration methods used in CNC treatment explained with setup details
Quick answers

Key takeaways

Three compensations, three jobsLength sets where the tip sits in Z. Radius sets how the cutter walks around the profile. Work offset sets where the part sits in the machine.
Length first, then radiusTouching off in the wrong order is the most common cause of a crash on the first run.
G41 and G43 are modalThey stay active until cancelled or overwritten. Cancel them at the end of each tool, not at the end of the program.
Radius values come from the tool, not the drawingUse the measured or nominal cutter radius. A wrong value shows up as a size error on every pass, not just one.
Verify with a dry runCheck the offset table and run the first part in single block before cutting at full feed.
Why it matters

What the three remuneration methods actually control

A CNC program describes the path of a theoretical point, not the real cutting edge. Compensation is the offset between that point and the metal. The three remuneration methods used in CNC treatment are tool length compensation, cutter radius compensation, and work offset compensation. Each one corrects a different error, and each one is entered in a different place in the control.

Length compensation answers the question: where is the tip of this tool right now? Every tool has a different stick-out from the spindle gauge line. Without length compensation, Z0 would drift by 50 mm or more between tools. The control reads the offset and shifts the whole coordinate system in Z for that tool only.

Radius compensation answers a second question: how wide is this cutter? A 12 mm end mill cannot follow a 12 mm centerline path and produce a 12 mm slot. The offset shifts the path sideways by the cutter radius so the edge, not the center, lands on the profile. On a curved wall, the same offset also controls how the cutter rolls around the corner.

Work offset compensation answers the third question: where is the part? Fixtures move, vises get re-clamped, and a second operation starts from a different face. Work offsets let one program run on several setups without rewriting the coordinates. The part origin moves in the offset table, not in the code.

  • 1
    Length = Z position of the tipOne value per tool, stored in the tool offset page.
  • 2
    Radius = side shift of the pathOne value per tool, entered as a positive radius.
  • 3
    Work offset = position of the partUsually G54 to G59, one per setup or per vise jaw.
Method 1

Tool length compensation: setting and running it

Tool length compensation is the offset that puts the tip of the tool at the programmed Z height. In most controls it is stored as a negative value in the geometry column, measured from the spindle gauge line down to the tip. On a 40-taper machine, this value commonly runs from -80 mm to -250 mm depending on holder and tool length.

Touch off is the critical step. Bring the tool down to a known surface at low feed, jog in 0.01 mm increments near contact, and record the machine Z position. Do this on the same surface every time, or on a tool presetter if you have one. A 0.02 mm error in touch-off becomes 0.02 mm on every depth in the program.

During the program, G43 activates the offset with an H number. H01 applies the length from tool offset 01. The value stays active in the control until it is cancelled or replaced. Cancel it with G49 before a tool change, or let the next G43 overwrite it. Cancelling too early drops Z by the full offset length, which is a common crash on older controls.

On a 24-tool turning center or a mill-turn machine, length values often run in the X direction instead of Z. The same logic applies, but the axis changes. Read the control manual before mixing tool types, because a length value stored for a lathe tool will not work on a mill tool and the difference is not always obvious in the offset page.

  • 1
    Always touch off at the same referenceA table surface, a fixture pad, or a presetter. Never a random surface.
  • 2
    Watch the signNegative values below the gauge line are standard on many controls; positive values exist on others.
  • 3
    Re-check after every tool changeA partially seated holder moves the tip by 0.05 mm or more.
Method 2

Cutter radius compensation: G41 and G42 in practice

Cutter radius compensation shifts the programmed path sideways by the radius of the tool. G41 offsets the cutter to the left of the direction of travel; G42 offsets it to the right. The value comes from the tool radius column in the offset table, not from the part drawing. For a 10 mm end mill, the radius is 5 mm.

Lead-in and lead-out moves matter. The control needs a straight move at least as long as the cutter radius to ramp the offset in. A typical lead-in is 5 mm to 10 mm at a 45 degree angle or along a tangent. If the lead-in is too short, the control alarms out or cuts a gouge at the entry point. This is the most common radius compensation error on first runs.

Use G41 and G42 for walls, pockets, and profiles. For a roughing pass that leaves 0.3 mm of stock, program the centerline path and use a radius offset of the cutter radius plus the finish allowance. Then run a separate finish pass with the true radius. Mixing the two in one pass is how walls come out undersized.

On inside corners, a cutter larger than the corner radius cannot clear the corner. The control has no way to remove material the tool cannot reach. Check the smallest inside radius on the part against the tool radius before you program the path. If the corner is 4 mm and the tool is 10 mm, the corner needs a smaller tool or a different geometry.

  • 1
    Left vs rightG41 for climb milling on an outside profile travelling clockwise; G42 for the opposite direction.
  • 2
    Lead-in lengthAt least one cutter radius, 5 mm to 10 mm is a safe starting range.
  • 3
    Cancel with G40Cancel at the end of the profile, on a straight move, not on an arc.
Method 3

Work offset compensation: G54 to G59 and beyond

Work offset compensation sets the origin of the part inside the machine envelope. The standard offsets are G54 through G59, with additional extended offsets on most modern controls. Each offset stores an X, Y, and Z value that shifts the program zero to a new position. A second vise jaw, a second fixture, or a flipped part gets its own offset.

Setting a work offset starts with an edge finder or a probe. Find the X and Y edges of the part or fixture, then find the Z reference surface. Enter the values into the offset page and verify by moving to X0 Y0 in rapid at a safe Z height. Watch the position display: it should read zero at the edge you touched. A 0.01 mm probe error is a 0.01 mm shift on every feature.

On a 5-axis machine, the work offset is not the whole story. The rotary centerline and the trunnion position also affect the part origin. The control combines the work offset with the rotary transformation. If the rotary centerline is off by 0.1 mm, features cut at different angles will be off in different directions. This is why 5-axis setups need a probe and a known centerline, not just a touched-off corner.

For a second operation on a flipped part, use a separate offset and a known datum from the first operation. A common mistake is to re-use G54 for both sides. The program runs, but the second side is off by the amount the part moved in the vise. On parts held to ±0.005 mm, that shift is enough to fail inspection.

  • 1
    One offset per setupG54 for the first vise, G55 for the second, G56 for the flip.
  • 2
    Probe if you have oneA probe removes the operator's touch-off error, which is often 0.02 mm to 0.05 mm.
  • 3
    Record the valuesWrite the offset numbers on the setup sheet so the next run starts from the same place.
Setup order

Step by step: setting all three compensations on a new job

  • 1
    Load the tools and record the assembly lengthsMeasure each tool in its holder with a presetter or on the machine. Note the stick-out. Keep the same holder and collet for the whole run; swapping a collet nut changes the tip position.
  • 2
    Touch off each tool for lengthUse the same reference surface for every tool. Jog down at 0.01 mm steps near contact. Enter the value into the length column. Double-check the sign against the control manual.
  • 3
    Enter the cutter radius for each toolUse the measured or nominal radius, for example 5.0 mm for a 10 mm end mill. If you plan a roughing pass with stock left, add the finish allowance in the program, not in the radius column.
  • 4
    Set the work offset with an edge finder or probeFind X, Y, and Z for the first setup. Verify by moving to X0 Y0 at a safe Z. The position display should read zero at the reference edge.
  • 5
    Dry run the first part in single blockWatch the distance-to-go display at each G43, G41, and G42. Confirm the tool moves where you expect before it reaches the material.
  • 6
    Cut the first part and measure itCheck a known feature against the drawing. If the size is off by a consistent amount, correct the radius offset. If the position is off, correct the work offset.
  • 7
    Document the offsets on the setup sheetRecord the tool numbers, length values, radius values, and work offset numbers. The next run starts from the same numbers instead of from scratch.
Side by side

The three compensation methods compared

Use this table to pick the right offset when a feature is off

CompensationWhat it correctsTypical codeWhere it is stored
Tool lengthZ position of the tool tipG43 H01, cancel G49Tool offset length column
Cutter radiusSide shift of the tool pathG41 left, G42 right, cancel G40Tool offset radius column
Work offsetPosition of the part originG54 to G59, G54.1 P1 and upWork offset page
Length error symptomEvery depth is off by the same amountCheck H number and touch-offCompare value with presetter
Radius error symptomWalls and profiles are off by a constant shiftCheck radius column and lead-inRe-measure the cutter
Work offset symptomAll features shift together in one axisCheck the active G offsetRe-probe the part edge

Set the three offsets in order, every time

Length, then radius, then work offset. Verify with a dry run and measure the first part before running the batch. That order prevents most first-run crashes and size errors.

FAQs

Common questions about compensation in CNC treatment

Do I need cutter radius compensation if I program the tool centerline?

No, if the CAM system already outputs the centerline path with the correct tool radius. In that case the control does not need G41 or G42, and the radius column can stay at zero.

The trade-off is flexibility. With G41 and G42, the operator can adjust the radius offset at the machine to bring a wall into tolerance without re-posting the program. That is useful on small runs and on parts with tight size tolerances.

What happens if I cancel G43 too early?

The control drops the Z axis by the full length offset value. On a tool with 150 mm of stick-out, that is a 150 mm plunge at the next Z move. The usual result is a broken tool, a gouged part, or both.

Cancel length compensation only after the tool is clear of the part and at a safe Z height, or let the next G43 overwrite it at the tool change.

How do I know whether the error is a radius problem or a work offset problem?

Look at the pattern. A radius error shifts every wall of a profile by the same amount relative to the programmed path, so opposite walls move toward or away from each other. A work offset error shifts all features by the same amount in the same direction.

Measure two features that should be a known distance apart. If the distance is wrong, check the radius. If the distance is right but the position is wrong, check the work offset.

Can I run one program with several work offsets?

Yes. Program the part once and use a subprogram or a fixture offset macro to repeat it at G54, G55, G56, and so on. This is common on vises with several stations or on pallets.

Keep the offsets documented. If one station is set 0.1 mm off, only that part is out of tolerance, and finding it after the run is expensive.

Does 5-axis machining change how I set compensation?

The three methods still apply, but the control also transforms the path for the rotary axes. The work offset and the rotary centerline combine, so an error in the centerline shows up as a position error that changes with the tool angle.

Use a probe to find the rotary center, and verify with a test cut on a known feature at two different angles before running the full part.

How often should I re-check tool length on a long run?

Check the first part, then again after the first hour of cutting, then at regular intervals based on tool wear. On long runs with carbide tools in aluminium, thermal growth in the spindle and holder can move the tip by 0.01 mm to 0.03 mm over a few hours.

If the part tolerance is ±0.005 mm, plan a mid-run check. Catching a drift at 0.01 mm is cheap; catching it after 200 parts is not.

Send us your drawings and get a quote in 12 hours

We machine prototypes and production runs from one part to 10,000+, with 100% inspection before shipment and reports on request.

12-hour quote100% inspectionNo minimum order quantityNDA on request

Follow our work

More CNC setup notes

We publish setup notes, tooling trials and inspection data from the factory floor.

FacebookTikTokYouTubeLinkedInInstagramThreadsPinterest

Trusted by engineers and manufacturers worldwide

Tesla Ford Motor Company BYD Auto Denso Magna International Boeing Airbus Medtronic KUKA FANUC