Is the error consistent for all moves? A 2 inch move gives a .0024 error, a 10 inch move gives a .012 error, a 20 inch move gives a .024 error, etc?
If so, it could be several things: a bad encoder, a bad Ball Screw comp table, the wrong PPU parameter, bad motion control, etc.
If not, positioning problems are frequently backlash problems: bad or loose thrust bearings, bad or loose ball screw or mounts, loose or worn drive belt or sheaves, etc.
Good luck finding the problem.