Help!How to address the deviation between theoretical displacement and actual displacement?

When using the same TCP with no change in pose, and executing a 400mm move in the X direction using the movel command, the actual measured distance is approximately 401mm. What are the main reasons for this issue and how can it be resolved? Thank you!