Thanks for the info. The issue is that the server usually resets the PlayerGui. However, when FilteringEnabled is active, the client enforces this instead. It turns out that ResetPlayerGuiOnSpawn doesn’t replicate (I was wrong), so when the property is set on the server, the client doesn’t know it.
So, when FilteringEnabled is active, the solution is to set ResetPlayerGuiOnSpawn on the client, with a LocalScript. When filtering is disabled, it must be set on the server with a Script.
The bug is that ResetPlayerGuiOnSpawn does not replicate (or serialize, and is hidden).