Root motion distance not matching up

Hey all,

I’m currently trying to put together a RM controller and everything seems to be going well, except for the fact that the character doesn’t seem to be moving as far forward as he should be for his walks/runs.
Everything looks fine when I untick EnableRootMotion and turn the bones on. He moves the correct distance, and the Root joint is moving to the correct position. Switching on EnableRootMotion and turning on Process Root Motion shows the character move a fraction of the distance it should.

I feel I must be missing something fairly simple, but for the life of me can’t figure it out. Any help would be appreciated.