· The Trofeo team
How Elo works, explained with office ping pong
The rating system behind chess, and probably your office leaderboard - explained with worked examples, no math degree required.
Every office has a ping pong hierarchy. Everyone knows Sarah is better than Tom, and Tom is better than the new guy. But how much better? And what happens to that hierarchy when the new guy beats Sarah on a Tuesday?
That's the problem Arpad Elo solved for chess in the 1960s, and his system has aged so well that it still runs everything from chess federations to competitive video games - and, yes, office ping pong leaderboards. Here's how it actually works.
One number per player
Every player gets a rating - a single number summarizing their demonstrated skill. New players typically start at 1200. The number itself is arbitrary; what matters is the gap between two players, because the gap predicts results.
The core formula converts a rating gap into an expected score:
Expected score = 1 / (1 + 10^((their rating − your rating) / 400))
You don't need to compute this by hand - the intuition is what matters:
| Rating gap | Stronger player's win chance |
|---|---|
| 0 | 50% |
| 100 | 64% |
| 200 | 76% |
| 400 | 91% |
A 400-point gap means the stronger player should win about nine times out of ten. If the office leaderboard runs from 1100 to 1500, the bottom beating the top should be a genuinely rare event - which is exactly what makes it glorious when it happens.
Points move when results surprise
After each match, ratings update based on how surprising the result was:
Rating change = K × (actual score − expected score)
Actual score is 1 for a win, 0 for a loss, 0.5 for a draw. K is the "K-factor" - the maximum points a single match can move. Trofeo uses K = 32, a common choice for casual leagues: responsive without being chaotic.
Worked examples, office edition:
- Even match. You (1200) beat a colleague (1200). Expected score was 0.5, you scored 1. Change = 32 × (1 − 0.5) = +16. They lose 16. Standard day at the table.
- Expected win. Sarah (1400) beats the new guy (1200). Her expected score was 0.76, so she gains 32 × (1 − 0.76) ≈ +8. Beating people you're supposed to beat pays little - you can't farm beginners to the top.
- The upset. The new guy (1200) beats Sarah (1400). His expected score was 0.24, so he gains 32 × (1 − 0.24) ≈ +24, and Sarah loses 24. One giant-killing Tuesday is worth three routine wins.
This is the asymmetry that makes Elo feel fair: the system pays for evidence, and an upset is strong evidence.
Why it beats win percentage
The whiteboard-and-tally-marks approach ranks whoever plays the most favorable schedule. Win percentage can't tell the difference between 10–0 against beginners and 6–4 against the office elite. Elo can - it's baked into every single update. That's also why playing more doesn't inflate your rating: each match moves you toward the level your results actually support, from above or below.
A few practical properties fall out of the math:
- It's self-correcting. Overrated players lose points fast; underrated ones climb fast. Errors are temporary.
- It's zero-sum. Points flow between players; the office's total rating stays fixed. There's no inflation from grinding.
- It converges. After 10–15 matches, your rating is a meaningfully accurate prediction machine.
Where Elo stops being enough
Elo assumes 1v1 and assumes your rating is equally trustworthy whether you played yesterday or last year. Two successors fix those gaps:
- Glicko-2 adds a reliability measure - a new or returning player's rating moves quickly while uncertain, then stabilizes. Best for chess-style games with draws.
- TrueSkill (built at Microsoft for Xbox matchmaking) rates individuals from team results - which is what you want for foosball, padel, or 2v2 anything - and handles free-for-all races with full finishing orders.
A good leaderboard picks the right system per game rather than forcing Elo everywhere. (Trofeo supports all three, plus plain win/loss and custom points, per game.)
The one-sentence version
Your rating is a promise about your future results; every match settles whether the promise was honest, and the points move accordingly.
That's the whole trick - and it's why a proper rating system turns the office table from "we play sometimes" into a season-long story with stakes, rivals, and the occasional Tuesday upset that everyone hears about on Slack.