About Tennis AIQ
The story behind Tennis AIQ
About us
We are passionate tennis enthusiasts who love watching the game. With a background in engineering and a master’s degree in the field, we also share a fascination with data, numbers and the insights they can reveal.
Tennis AIQ brings these interests together: our love for tennis and our curiosity about what the data can tell us.
Why we built Tennis AIQ
When we watch professional tennis, we want to understand more than just who wins. We want to explore why a player wins.
A match result tells us who came out on top, but it does not tell the whole story of how the players performed. That curiosity inspired us to build Tennis AIQ: a place where we use data-driven analysis to look beyond the scoreline and explore the performances behind the results.
Explore our website
Surface Rankings
Explore our hard, clay and grass rankings to see how players compare across different playing surfaces.
Prediction Engine
Select two players, a surface and a competition to explore their estimated chances of winning.
Player Database
Dive deeper into individual players with surface-specific rankings, performance statistics and career skill-rating trends.
Blog
Discover tennis stories, notable matches and interesting developments through a data-driven lens.
Contact
Get in touch with us through email or on Instagram.
How the model works
Beyond the match result
Looking only at who wins a tennis match can give a distorted picture of what happened on court. A 6–0, 6–0 victory tells a very different story from a 7–6, 7–6 win.
But which statistics give us a better understanding of the players’ performances? Games won do not tell the whole story: winning a game at 40–0 is different from winning one after several deuces. Total points won can also be misleading, because players do not necessarily serve the same number of points.
This led us to focus on a statistic that accounts for those differences: SPW!
Understanding SPW
SPW stands for service points won. It is expressed as the number of points won on serve divided by the total number of service points played by a player. For example, a player who wins 60 out of 100 service points has an SPW of 0.60.
We also use a measure we call the SPW score: the ratio between a player’s SPW and their opponent’s SPW.
SPW score is calculated through the following formula:
For example, if Player A has an SPW of 0.8 and Player B has an SPW of 0.5:
- Player A’s SPW score = (1+0.8-0.5)/2 = 0.65
- Player B’s SPW score = (1+0.5-0.8)/2 = 0.35
The cumulative SPW score of Player A and Player B always adds up to 1.0. An SPW score of 0.5 means both players won the same percentage of points on serve, suggesting they played at an equal level in the match. A score between 0.5 and 1.0 means the player won a higher percentage of service points than their opponent, and therefore was the better player. a score below 0.5 means the exact opposite.
Understanding Elo
An Elo rating system, developed by Arpad Elo, expresses differences in player strength through numerical ratings. Those ratings can also be used to estimate the expected outcome when two players meet.
A standard Elo system starts by calculating Player A’s expected score:
Here, \(R_A\) and \(R_B\) are the players’ ratings before the match. \(E_A\) is a value between 0 and 1. Player B’s expected score is simply \(E_B = 1-E_A\).
After the match, Player A’s rating is updated:
In a standard win/loss-based system, \(S_A\) is 1 for a win and 0 for a loss. The \(K\)-factor controls how strongly the result changes the rating.
Our model adapts both of these elements. We use a variable \(K\)-factor, optimized using machine learning. It is generally larger for players who have played relatively few matches and smaller for players who have played many matches recently.
We also incorporate the SPW score into \(S_A\). Instead of relying exclusively on winning or losing, our match score combines the win/loss result with SPW-score. As a result, \(S_A\) can take a value anywhere between 0 and 1.
From ratings to predictions
To turn rating differences into win probabilities, we use an adapted prediction formula:
Here, \(P(A)\) is Player A’s estimated probability of winning, \(R_A-R_B\) is the difference between the players’ ratings, and \(b\) is a parameter that determines how rating differences translate into probabilities.
We optimize \(b\) separately for nine match categories, combining three competition levels with three playing surfaces:
| Competition | Surfaces |
|---|---|
| Grand Slam | Hard, Clay, Grass |
| ATP | Hard, Clay, Grass |
| Challenger | Hard, Clay, Grass |
This means that the same rating difference can produce different estimated win probabilities depending on the competition and surface selected in our prediction engine.
Disclaimer
Tennis AIQ’s ratings and win probabilities are estimates produced by our model, not certainties or guarantees. They reflect our interpretation of the available data and should not be treated as advice. Actual match outcomes can differ from our predictions.