In 1960, Arpad Elo, a Hungarian-American physics professor and chess enthusiast, published a new rating system designed to solve a specific problem: how do you rank players whose results against different opponents are hard to compare directly?
His solution was elegant. Instead of counting wins, track expected wins versus actual wins. If you were supposed to win and did, small adjustment. If you weren't supposed to win and did, large adjustment. Over time, ratings stabilize at a level that accurately reflects your actual competitive standing.
The core logic
Every team in the ELO system holds a numerical rating. The system calculates, before each match, the expected score for each team, a probability between 0 (certain loss) and 1 (certain win) based on the rating difference between the two teams.
The formula for expected score is:
- E = 1 / (1 + 10^((opponent rating − your rating) / 400))
If your rating is 1000 and your opponent is also 1000, E = 0.5 (a coin flip). If you are rated 1200 and your opponent 800, E is approximately 0.91, meaning you are heavily favoured. After the match, your rating updates by:
- New rating = Old rating + K × (Actual score − Expected score)
Where K is the K-factor: a multiplier controlling how much a single result can move your rating.
The K-factor
The K-factor determines volatility. A high K (32 or above) means ratings move quickly, and a few strong results can dramatically change your standing. A low K (16 or below) means ratings are more stable, and a single result has less impact.
Different competitions use different K-factors. FIFA's ELO-based women's ranking uses K = 40 for major tournaments and K = 15 for friendlies, reflecting the different significance of each match type. Jazba calibrates the K-factor for Pakistan grassroots football, where teams play fewer matches per year than professional clubs, to ensure meaningful movement without excessive volatility on small sample sizes.
How draws are handled
In the ELO system, a draw counts as 0.5 for both teams. This maps perfectly to the expected score formula, which ranges from 0 to 1. A draw between equally matched teams (both expected 0.5) results in almost no rating change for either side. A draw where the underdog was expected to score 0.1 gives the underdog a substantial positive update, as they outperformed expectations.
Why it's right for football
Football has more draws, more upsets, and more variance than chess. A team can lose to a weaker opponent on a bad day. A strong team can be eliminated in a single cup match. ELO's continuous, cumulative nature means these occasional results don't destroy a team's standing, they adjust it proportionally to how unexpected they were.
More importantly for Pakistan's context: ELO doesn't care about reputation, connections, or which city a club comes from. A club from Rawalpindi that has been quietly winning for two seasons will rank above a well-known Karachi club that hasn't played competitive matches. The number reflects results. Nothing else.
Separate rankings by format
Jazba maintains independent ELO rankings for 5-a-side, 7-a-side, and 11-a-side football. A team's rating in one format is completely independent of their rating in another. This matters because the tactical and physical demands of each format are genuinely different: close-quarters technical ability in futsal, spatial organisation in 7-a-side, set-piece complexity in 11-a-side. A dominant futsal team is not necessarily a dominant full-pitch team.
Building the rankings over time
Every ELO ranking system starts with the same problem: early ratings are unstable because they're based on limited data. A team that played only three matches has a rating, but it's less reliable than one based on thirty. As Jazba grows and more match results flow through the platform, the ratings will converge toward genuine accuracy.
This is how every credible ranking system develops: rough in the early stages, increasingly precise as the data accumulates. The Pakistan grassroots ELO ranking is in its early stages. Every match result logged through Jazba is a data point that makes the picture sharper.
