I've never worked with :clone() before. Unsurprisingly this script below doesn't work. Does anyone know why that is?
game.ReplicatedStorage.StartGUI = startGUI
game.Players.PlayerAdded:connect(function(player)
local startGUICopy = startGUI:Clone()
startGUICopy.Parent = player.PlayerGUI
end)

2 comments
You're totally right, but it still doesn't function.
Are you testing it on PlaySolo? PlayerAdded events don't fire in PlaySolo. Start a server instead.