NameTag gets too big when camera far away from it

Hello, ive been making nametag using script. But can someone help me how to fix this? image

game.Players.PlayerAdded:Connect(function(plr)
	
	
	plr.CharacterAdded:Connect(function(char)
		
		
		local nameGui = Instance.new("BillboardGui")
	
		nameGui.StudsOffset = Vector3.new(0, 2, 0)
		
		nameGui.Size = UDim2.new(0, 200, 0, 50)
		
		nameGui.Name = "NameGui"
		nameGui.Parent = char.Head
		
		
		local nameLabel = Instance.new("TextLabel")
		
		nameLabel.Text = plr.Name
		
		nameLabel.TextScaled = true
		
		nameLabel.Size = UDim2.new(0, 200, 0, 50)
		
		nameLabel.BackgroundTransparency = 1
		
		nameLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
		nameLabel.Font = "Cartoon"
		nameLabel.TextStrokeTransparency = 0
		
		nameLabel.Name = "NameLabel"
		nameLabel.Parent = nameGui
	end)
	
end)

Try switching the label’s size properties over from offset (which you currently have it on) to scale.

Note that if you’re using scale, you’ll have to put in values from 0 to 1. A name tag that is 200 studs long on the X-axis wouldn’t be good.

nameGui.Size = UDim2.new(0.15, 0, 0.04, 0)
nameLabel.Size = UDim2.new(0.15, 0, 0.04, 0)

use DistanceLowerLimit
Determines the distance in studs that a BillboardGui will stop scaling larger in size at