The event triggers every time the core calls SaveToDB on the player.
That happens usually on logout and with some interval, like 15 minutes or something - that interval is configurable in the configs of your server.
Additionally some other core code might call the save function.