· The Trofeo team
How TrueSkill rates team games
Foosball and padel have a problem Elo can't solve: who's actually carrying? Here's how TrueSkill pulls individual skill out of team results - even with rotating partners.
Here's the argument every foosball office eventually has. You and the new hire just beat the two best players in the building. You're certain it was you. The new hire is certain it was them. The scoreboard says "2–0" and settles nothing.
This is the problem with team games: the result belongs to the team, but the rating needs to belong to the player. Win percentage can't help - it rewards whoever keeps getting paired with strong partners. Elo can't help either; it was built for 1v1. The system that does solve it is TrueSkill, and it's worth understanding how.
A skill range, not a single number
Elo gives you one number. TrueSkill gives you two: an estimate of your skill, and how uncertain it is about that estimate. Think of your rating as a range - "probably around here, give or take this much" - rather than a fixed point.
New players start with a wide range, because the system genuinely doesn't know yet. As you play, the range narrows and homes in on your real level. This is why a newcomer can shoot up or down quickly in their first handful of games, then settle: early on, the system is willing to be wrong by a lot, so it moves fast; later, it's confident, so it moves carefully.
TrueSkill was built at Microsoft to matchmake Xbox Live - millions of players, mostly in teams, needing fair games against strangers. Office foosball is the same shape of problem, just smaller.
Spreading credit across a result
When a 2v2 match ends, TrueSkill updates all four players at once. It already had an expectation for the match - derived from the four skill ranges - and the result either confirmed or surprised it. The more surprising the outcome, the bigger the shift, and crucially, the shift is shared out according to who was on each side and how good they were supposed to be.
Two consequences fall out of this:
- Beating strong opponents pays more than beating weak ones - same as Elo, and for the same reason: it's better evidence.
- Your partner's strength is priced in. If you win alongside a much stronger player, the system reasons that the win was partly expected because of them, so you gain less. Win in spite of a weaker partner, and more of the credit is yours.
A worked example
Say four players, on a TrueSkill scale where higher is better and a typical office spread runs from the low 20s to the high 30s:
| Player | Skill estimate |
|---|---|
| Marta (office champion) | 36 |
| Dev | 31 |
| You | 27 |
| Sam (still learning) | 23 |
Two scenarios, same opponents on the other side of the table:
- You + Marta beat Dev + Sam. Expected. You gain a little - the system suspected Marta carried it, and it's not going to hand you much for a result it already predicted.
- You + Sam beat Marta + Dev. A genuine upset: the weaker pair won. You gain a lot, Sam gains a lot, and Marta and Dev both drop - the result was strong evidence that you two are better than the ranges said.
Play enough of these mixed matchups and the truth emerges. That's the whole point: you don't need to control who you're paired with for the ratings to come out right.
Rotating partners is a feature, not a bug
This is the part people don't expect. You might assume you need fixed teams for ratings to mean anything. The opposite is true - TrueSkill is better the more partners rotate, because every new pairing is another data point triangulating individual skill. Fixed duos who only ever play together are the hard case (more on that below); a league where everyone partners everyone is exactly where TrueSkill shines.
So run your foosball or padel sessions however they naturally happen - shuffle partners, let people grab whoever's free, mix singles and doubles in the same game. The ratings keep up.
Same engine, free-for-all version
A team match is just a ranked result with groups. Remove the groups and you've got a free-for-all - which is why the same TrueSkill engine rates a Mario Kart race. Record the full finishing order and everyone updates based on who they finished ahead of and behind, weighted by ratings. Finishing 2nd of 8 is a strong result against a strong field, and the math knows it.
The honest caveats
- It needs a few games to settle. Those wide early ranges mean a first-week rating is provisional. Give it a handful of matches before reading too much into anyone's exact number.
- A permanent duo is genuinely ambiguous. If two players only ever play together and always win, TrueSkill can't fully say which one is the engine - there's no match where they're apart to tell them apart. Mix them up occasionally and the picture sharpens.
- Doubles skill isn't singles skill. A brilliant defender in 2v2 may not be the same player one-on-one. If your game allows both, the rating blends them; if that bothers you, run singles and doubles as separate games.
The one-sentence version
TrueSkill watches who you win with and who you win against, and over enough mixed matchups it pulls your individual skill out of the team result - no fixed teams, no spreadsheet, no more arguing about who carried.
Let the partners rotate and the foosball table finally settles the argument it's been having for years.
Not sure TrueSkill is the right fit? Compare it with Elo and Glicko-2 in which rating system fits your game.