No, this seems to occur either once the player has joined or once the player has left.
I have a save() and load() function, load() fires when the player joins the game and the save() function fires when the player is leaving.
For load(), it has Player.CharacterAdded:Wait() as the first line, so I don’t know why it doesn’t think the Character exists, if that is the case at all.