Matchmaking in Competitive Browser Games: How Skill Rating Finds Your Opponent
Losing four matches in a row to opponents who feel exactly your speed isn't a coincidence. A number you never see is quietly adjusting after every game, trying to find the point where you win about as often as you lose.
Competitive browser games — the .io shooters, the browser-based card battlers, the 1v1 strategy games — need a way to pair you against someone you have a fair shot against. Pair a brand-new player against someone with two thousand matches of experience and the new player quits within a session. The mechanism most of these games use traces back to a rating system originally built for chess.
Elo, Adapted From a Different Game Entirely
The Elo rating system, developed by physicist Arpad Elo for chess ranking, works on a simple premise: every player has a number representing their estimated skill, and after each match, both players' numbers move based on the result and on how surprising that result was. Beating someone rated far above you moves your number up sharply; beating someone rated far below you barely moves it at all, because that outcome was already expected. The system doesn't need to know why one player is better, only that the ratings, over enough matches, should predict win probability accurately.
Video games adapted this directly, and it works reasonably well for simple win/loss competitive formats. But chess assumes something a match-3 minutes browser shooter doesn't: a stable, slowly-changing skill level and a large enough sample of games to converge on an accurate number. A new player's first ten matches carry a lot of uncertainty about their true skill, and pure Elo doesn't represent that uncertainty explicitly — it just uses a bigger adjustment step early on as a rough proxy.
Glicko and the Idea of "Confidence" in a Rating
Mark Glickman's Glicko system, and its refinement Glicko-2, addressed this by tracking not just a skill estimate but a confidence interval around it — how sure the system is that the number is accurate. A brand-new player has a wide interval; a player with five hundred matches has a narrow one. When matching two players, the system can then reason about the combined uncertainty of the pairing, not just the raw numbers, and adjust ratings more aggressively for players whose true skill is still uncertain. The math is laid out in detail in Glickman's own published paper on the system, and it's the rating approach behind a large share of today's competitive matchmaking, browser-based or not.
Why Matches Still Sometimes Feel Unfair
Two forces push against pure skill-based pairing. The first is queue time: if a game only matched players within a narrow rating band, high-skill players during off-peak hours could wait several minutes for an opponent. Most matchmakers widen the acceptable rating gap the longer someone waits, trading match fairness for match speed. That's why a late-night match sometimes feels lopsided in a way an afternoon match on the same account doesn't — the population of available opponents is smaller, and the system compromises on rating gap rather than leaving you in queue.
The second force is that skill in most games isn't one-dimensional. A player might have excellent mechanical reaction time but weak strategic decision-making, or vice versa, and a single rating number necessarily flattens that into one figure. Two players with an identical rating can feel completely mismatched to each other because the number is an average of skills that don't actually average cleanly.
Placement Matches and the Cold Start Problem
Nearly every ranked browser game runs new accounts through a placement sequence, five to ten matches with unusually large rating swings, before settling into normal matchmaking behavior. This exists because a brand-new account has no rating history at all, and the system needs to move quickly toward a plausible estimate rather than starting everyone at the same default number and adjusting slowly. It's also why smurf accounts — experienced players creating new accounts — are disruptive to lower brackets: the placement sequence assumes uncertainty about the player's skill that doesn't actually exist, producing a rating well below their true level for a stretch of matches, during which genuinely new players face someone far stronger than the system believes them to be.
Where This Meets the Rest of the Game
Matchmaking rating and public leaderboard rank are often two separate numbers even in the same game, because they optimize for different things: the leaderboard rewards raw peak performance and volume of wins, while matchmaking rating exists purely to predict a fair fight. A game can have a leaderboard dominated by players who grind constantly while its matchmaking system quietly protects casual players from ever facing them, because the two systems are solving different problems even though they're built from the same underlying match results.