Lobby
A lobby is the pre-match gathering space where players are assembled before a game session starts — the state between matchmaking completing and gameplay beginning.
From a player’s perspective, the lobby is where they see who they are about to play with, customise their loadout, and wait for everyone to ready up. From an infrastructure perspective, it is a distinct phase in the session lifecycle with its own resource requirements and coordination complexity.
The lobby lifecycle
A typical match goes through these states:
- Queue — players individually enter matchmaking
- Match found — the matchmaker assembles a group
- Lobby — players are notified and gathered; the lobby server holds state
- Server allocation — a game server is assigned for the match
- Transition — players are sent the game server’s connection address
- Match — active gameplay on the dedicated server
- Post-match — results, ratings update, return to queue
The lobby phase is often handled by a different service than the game server itself — a lightweight lobby service that manages player state, ready checks, and team composition before handing off to the dedicated game server when everyone is ready.
Lobby servers vs. game servers
Lobby servers are cheap. They hold player IDs, team assignments, and some chat state. They do not run physics, game logic, or high-frequency simulation. A single lobby server can handle hundreds of simultaneous lobbies.
Game servers are expensive. They run the full simulation, process inputs at 60–128 ticks per second, and require dedicated CPU and network resources. Allocating a game server before the lobby fills wastes money — every second a game server sits waiting for a lobby to complete is server cost with no active match.
The practical implication: delay game server allocation until the lobby is confirmed and players have accepted. This is why there is sometimes a brief delay between “match found” and players actually loading into the game — the orchestrator is spinning up the game server in the background while the lobby countdown runs.
Lobby abandonment
Not every lobby becomes a match. Players decline, disconnect, or close the game during the lobby phase. Studios track lobby completion rates carefully — a high abandonment rate suggests lobby wait times are too long, the matchmaker is assembling mismatched groups, or the UX of the lobby itself is creating friction.
When a player abandons a lobby, the matchmaker must decide whether to backfill that slot (find a replacement and restart the countdown) or dissolve the lobby and re-queue remaining players. Backfilling a lobby is faster for the players who stayed; re-queuing is fairer to the player who would have joined mid-countdown.
Pre-game lobby vs. in-game lobby
Some games blur the distinction between lobby and match. Battle royale games often drop players into a pre-match zone — a small area or “staging island” within the actual game server — where they can move around, see other players, and warm up before the match formally begins. Technically this is a match in progress; experientially it functions like a lobby.
This design has infrastructure implications: the game server must be running and allocated before any player sees the traditional “waiting for lobby” screen, which shifts the allocation timing earlier and increases the window during which a server sits with partial capacity.
See also: Matchmaker · Server Allocation · Backfill · Session Hosting