I have a light commercial cnc machine for woodworking that has significant +- variance across the x axis, about +-.01". Over the entire length (24") of the axis the error seems to average out enough to end back up where it should be. It uses a sprung rack and pinion system that has been binding recently so the pinion wasn't following properly. I've cleaned the system out and re-greased it, but the error over the x axis is still there. Am I right in assuming this is from the pinion wear?

For example:

If I jog the machine from x0 to x4", I can measure it as actually 3.99" traveled. From x8" to x12" commanded, it will actually move 4.015".

I've adjusted x axis resolution but reverted back since its not the issue.