Script :

local billboardgui = script.OverheadInfo
local tweenservice = game:GetService("TweenService")
game.Players.PlayerAdded:Connect(function(player) 
player.CharacterAdded:Connect(function(character) 
local rank = player:GetRoleInGroup(5061737)
local rankcheck = player:GetRankInGroup(5061737)
local clonedgui = billboardgui:Clone()
		clonedgui.Frame.DisplayName.Text = player.DisplayName
		clonedgui.Frame.UserName.Text = "@"..player.Name
		clonedgui.Frame.Rank.Text = rank
		clonedgui.Parent = character.Head
		clonedgui.Adornee = character.Head
		character.Humanoid.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
		if game.MarketplaceService:UserOwnsGamePassAsync(player.UserId,18160371) then
while wait(1) do
local color =  Color3.new(math.random(0,1), math.random(0,1), math.random(0,1))
local tweencolor = tweenservice:Create(clonedgui.Frame.Rank, TweenInfo.new(1.5), {TextColor3 = color})
tweencolor:Play()
end
end
end)
end)

I've noticed on apple devices the GUI isin't cloned.