ive been having some scripting issues lately with some scripts not working so when do i know its ok to add a loadiing screen so scripts can load faster etc
Put this code at the beginning of your script:
game:GetService("ReplicatedFirst"):RemoveDefaultLoadingScreen
So that'll load quickly and replace the regular loading screen with that. Also add as little wait()
s as possible unless it's necessary or for stylistic effect.
Usually people make it pop up at the beginning, So that every things loads so my answer to your question is: You should start your GUI at the start of the game and make it long depending on how big your game is