Detecting TimePosition change of an animation track

I’m trying to detect a time position change of an animation track. Annoyingly, GetPropertyChangedSignal() doesn’t detect time position changes.

My current solution is using a heartbeat loop but that’s really inaccurate and tends to skip some positions.

Does anyone have an idea how I can detect every time position change?
(yes I saw the other posts about this topic but none have been solved)

TimePosition probably just triggets some metamethod so its not a real property

Its more of :GetTimePosition() internally if it makes more sense to you.

You should instead use animation events and Markers.

That’s what I’m trying to avoid (I don’t want to re add all anim events when I reimport the animation)

you can use RunService.PreAnimation, it runs right before animations are stepped