Altitude consistency changes with sleep

I’m running Arduplane 3.6 with a MAVProxy SITL running dronekit scripts. I have a leader plane in auto mode on a mission of all 100 m altitudes but the leaders likes to stay right around 97.3 m very consistently. The follower plane in guided mode has a while loop constantly running that is calling simple_goto and adjusting airspeed. There is a sleep in this while loop, and the greater it is (around 0.75s) the altitude is held well with the leaders but the lower I make the sleep, say 0.25s, there is a greater error of altitude. Is there a better way to control how fast commands are sent to the plane?