it has been explained in other threads on this forum, but timers and so on are just not accurate

a simple test would be these two aliases using $ticks and the millisecond timer
run it a few times and watch the decimal difference drift

it is what it is
Code:
timertest {
  set -u30 %starticks $ticks
  timertest -m 5 1000 timertest2 $!ticks 
}
timertest2 {
  echo -a . $calc(($ticks - %starticks) / 1000))
}