Simple example: Works correctly: - User clicks, agent.SetDestination(somePosition) is called. - Agent navigates to destination, and stoppingDistance is used. Does not work correctly: - on Update(), agent.SetDestination(somePosition) is called. - Agent navigates to destination, stoppingDistance is disregarded. Is this in fact the correct behaviour, or should I file a bug report? If it's the correct behaviour, I think it should be noted in the docs. It's sort of mentioned here, and AngryAnt responds with: FWIW, I'll do some variation of this. I was aware what I was doing was inefficient, but intended to deal with that later.