GUI flashes in wrong position when parenting screengui its in to playergui

The pattern I use is the following:

  1. I take a clone of a screengui that contains some GUI element, with the GUI element positioned lets say at the middle of the screen
  2. I modify the position of the GUI element in the clone such that its not visible on screen
  3. I parent the screengui to playergui and tween the gui element to its proper position

Now, the problem is that when I parent the screengui, the GUI element momentarily flashes in some random position of the screen before being moved to its proper place (which is outside the screen in this case), which doesnt look too clean when it happens all the time.

I think it happens anytime you parent a screengui to playergui, it doesnt set the GUI position correctly…

I’ve dealt with this before. I used to have Gui elements I needed to clone into the player gui stored in lighting (oldschool) but now I have all the Guis stored in the main ScreenGui of the game, and clone it from there. Don’t clone screenguis, clone the buttons, image buttons, labels, etc. And clone them from the screengui to the screengui. So much smoother.