Does animation state machine check the condition every frame?

I usually delete the event updated blueprint animation node and and add a custom event to change the variable which is used by animation state machine for efficiency. But I guess this is useless because the conditions to change the state is rely on variable, and I guess the state machine will check the boolean variable every frame to figure out if the state needs change(even I put a print string node in state machine, the node will not be executed because there’s no entry, so I can’t do a test to prove my guess).

If so, is there a way to change the state by using event for a better performance?