What is the most efficient way to make a visual rotating animation?

Hello
What is the most efficient way to make an infinite rotating animation of a Model in a given room in the experience?
The rotation has a pure visual purpose.
I can do this in a local script with a Tween by rotating the CFrame. However for performance reasons I do not really want the client to play/simulate the Tween when no one can see it.
I suspect that the Tween will be still played (simulated) no matter that there is no one around?
Are there other ways? Can an Animation be used to rotate a Model?
Or should I try to track players entering/exiting the area and play/pause the Tween?

Thanks in advance

Either tweening locally on the client or relying on a physics constraint also on the client side of ownership ( I prefer letting the physics engine do a lot more work)

Yes, but does this mean that the rotation/tweening will happen no matter that no one is around?
The engine will be busy simulating something which no one can see?
May be this is the usual way to do the things, but I would like to be sure…

Client - siding or vice versa are both susceptible to their own problems, a good logic to let the server tell the client to locally rotate the object is probably the best bet because it singles everyone out with their own data to update but logically you can make it to where it only happens when they need it!

So there are no automatic optimizations in the engine to not play animation (or tween) if no one can see it?
I need to track players position and start/stop the animation/tween manually?

For the most part animations apply, players automatically replicate but it depends on your method of animating whether it be using the R6 or R15 rig or something else