How to replicate gameInstance variable?

Have playerName variable in gameInstance, in BeginPlay event in character, load variable at gameInstance, set in character, set replication (playerName (in character)) to replicated, call event Run on Server (in character bluprint) to set playerName at server copy character.
When connect 1 player at dedicated server = all good
when connect 2 (on 1 client 1 and 2 player have name first player; on 2 client 1 and 2 player have name second player)
when login any client, at server console (at server player copy) ,i see real name
Why, where my problem?


I found a solution, but I don’t think it’s correct, it works…:

shouldn’t it work simply in an event run on a server setting a variable (replication setted to replicated)?
likeThis: