Multiple Spawns

Script (ServerScriptService)

Create a Folder in Workspace called Spawns

Insert Spawn Objects into Spawns folder

Rename Spawn Objects to Spawn1, Spawn2, ...

Insert a Bool Value under each Spawn Object, rename it to Free, select Value box

local function onPlayerJoin(player)
    for _, spwn in pairs(game.Workspace.Spawns:GetChildren()) do
        if spwn.Free.Value then
            player.RespawnLocation = spwn
            spwn.Free.Value = false
   
            local spawnTag = Instance.new('StringValue')
            spawnTag.Name = 'SpawnTag'
            spawnTag.Value = spwn.Name
            spawnTag.Parent = player
            break
        end
    end
end

local function onPlayerExit(player)
    local spawnTag = player.SpawnTag.Value
    print(spawnTag)
    local spwn = game.Workspace.Spawns[spawnTag]
    spwn.Free.Value = true
end

game.Players.PlayerAdded:Connect(onPlayerJoin)
game.Players.PlayerRemoving:Connect(onPlayerExit)