Breaking Down Champions League Performances: How Teams Fare Against xG Expectations
Judging Teams Over the International Break – Who's Overperforming, Who's Falling Short?
Introduction
We’re halfway through the Champions League group stages, and the action has been nothing short of dramatic. From thrilling goals to unexpected surprises, the competition has already delivered plenty of talking points. With the international break offering a brief respite, now is the perfect time to take a deeper dive into how teams are performing—not just in terms of points but also against their expected goals (xG) and expected points (xPts).
Using xG as a lens, we can identify the teams living up to the hype, those underwhelming relative to their chances, and the few punching above their weight. Based on what we’ve seen so far, let’s break down the actual Champions League standings, the "Justice Table" built from xG data, and which teams are overperforming or underperforming based on the metrics.
Methodology: How We Evaluated Performance
To dig into these insights, we applied a systematic approach to calculate team performances using the following steps:
Standardizing Team Names: Since datasets often have inconsistencies in team naming conventions (e.g., prefixes or abbreviations), we cleaned and standardized team names to ensure accuracy across the analysis.
Extracting Goals and Expected Goals: For each game, we recorded:
Actual goals scored and conceded
xG for and against, which provides a statistical measure of the quality of chances created and allowed.
Calculating Points:
Actual Points: Determined by match outcomes (3 points for a win, 1 for a draw, 0 for a loss).
Expected Points (xPts): Derived using a sigmoid probability model based on xG differences between the two teams. This approach estimates the likelihood of a win, draw, or loss and converts those probabilities into expected points.
The sigmoid function for the probability of home team win is used as follows:
\(P(\text{Home_win}) = \frac{1}{1 + e^{-(\text{xG}_{\text{home}} - \text{xG}_{\text{away}})}} \)Where
\( \begin{aligned} &\text{P(Home_win): Probability of the home team winning.} \\ &\text{xG}_{\text{home}}: \text{Expected goals for the home team.} \\ &\text{xG}_{\text{away}}: \text{Expected goals for the away team.} \end{aligned} \)The sigmoid function for the probability of both teams drawing is used as follows:
\(P(\text{draw}) =1 - P(homeWin) -( \frac{1}{1 + e^{-(\text{xG}_{\text{away}} - \text{xG}_{\text{home}}))}} \)The sigmoid function for the probability of the away team winning is used as follows:
\(P(\text{Away_Win}) =1 - P(homeWin) - P(Draw) \)Using this, we calculate the probabilities for a win, draw, or loss and derive the expected points:
\( \text{Expected Points (Team)} = 3 \cdot P(\text{win}) + 1 \cdot P(\text{draw}) + 0 \cdot P(\text{lose})\\ \)Aggregating Data for Teams:
Metrics were summed up for each team across home and away games, giving us cumulative values for actual points, expected points, goals for/against, xG for/against, and more.
Key Metrics Derived:
Goal Difference: Goals scored minus goals conceded.
xG Difference: xG for minus xG against.
xPts Over/Under Performance: The gap between actual points and expected points, highlighting whether a team is outperforming or underperforming relative to its xG.
By comparing these metrics, we constructed three key tables:
The Real Table: Based on actual points and goal difference.
The Justice Table: Based on expected points and xG differences.
Over/Underperformance Table: Identifying teams exceeding or falling short of expectations.
This methodology ensures an objective and data-driven evaluation of Champions League performances, shedding light on both results and the processes behind them.
The Real Table vs. The Justice Table
Looking at the actual group stage standings gives us one perspective. Liverpool, Sporting CP, and Inter lead the way in terms of actual points, delivering strong performances. But when we shift our focus to the "Justice Table"—sorted by xPts—some interesting patterns emerge:
Liverpool, Barcelona, and Atalanta dominate the Justice Table, showing their strong performances align with the underlying metrics.
Meanwhile, Paris Saint-Germain and RB Leipzig lag far behind their expected points, raising questions about inefficiency or simply bad luck.
Key Takeaways:
Some teams, like Liverpool and Inter, are performing well both in terms of actual points and expected points.
Others, like PSG and Leipzig, are falling significantly short of what their xG suggests they should be achieving.
Top Overperformers: Who’s Beating the Metrics?
To measure how much a team is overperforming or underperforming, we subtract Expected Points from Actual Points:
Analyzing the overperformance table reveals some teams are exceeding expectations.
Here are the standouts:
Aston Villa (+3.31 xPts): Delivering results well above what their xG suggests.
Sporting CP (+2.98 xPts): Efficiently converting chances and keeping opponents in check.
Inter (+3.00 xPts): Strong defensively and clinically taking their chances.
These teams are combining good finishing, defensive solidity, and perhaps a bit of luck to outpace their expected points.
Biggest Underperformers: Who’s Falling Short?
On the other end of the spectrum, some teams are underperforming their xG and xPts expectations:
RB Leipzig (-5.16 xPts): A disappointing campaign so far, failing to turn chances into points.
Paris Saint-Germain (-5.02 xPts): Despite a high xG of 7.1, they’ve only scored three goals, leaving them with significant room for improvement.
Bologna and Sturm Graz: Struggling to make any meaningful impact, falling far short of their expected metrics.
For these teams, the numbers suggest inefficiency in front of goal or defensive lapses that need addressing before it’s too late.
What the Data Says About Champions League Trends
Using the Champions League as a case study, xG and xPts help us better understand not just what’s happening on the pitch but why. They highlight:
Efficiency vs. Luck: Teams like Lille and Aston Villa are making the most of their opportunities, while Leipzig and PSG might be feeling the effects of poor finishing or unlucky outcomes.
Defensive Stability Matters: Clubs like Inter and Barcelona, who outperform xG while keeping xG against low, underline the importance of a strong defensive setup.
Potential for Turnarounds: Underperformers like PSG and Leipzig still have time to reverse their fortunes—if they can convert their xG into actual goals.
Conclusion
The international break provides a perfect opportunity to dig deeper into how teams are performing in the Champions League. By analyzing xG, xPts, and actual results, we gain a clearer picture of which teams are exceeding expectations, who’s falling short, and where improvements might come.
Who’s your biggest surprise so far in the Champions League? Are you Team Overperformer or Team Underperformer? Let me know your thoughts and favorite data-driven insights as we prepare for the knockout stages!
As the competition heats up, will overperformers like Aston Villa and Inter maintain their momentum? Can underperformers like PSG and Leipzig course-correct? Only time will tell, but one thing is certain: xG never lies.
Call to Action: Create Your Own Justice Table!
Now that you've seen how we analyzed the Champions League performances using Expected Goals (xG) and Expected Points (xPts), why not try it yourself? With the same methodology outlined in the notebook, you can apply this approach to your favorite league or another competition.
Here’s how you can get started:
Download the notebook and adapt it to the competition of your choice.
Gather the required data for matches, including scores and xG values.
Follow the steps to calculate Expected Points, and generate your own Justice Table.
Compare the real standings with your Justice Table to uncover overachievers, underperformers, and the true "justice" of the competition!
For example, how do the current Premier League standings look when viewed through the lens of xG? Which teams are overperforming or underperforming? The insights might surprise you!
Start exploring, and feel free to share your findings! Let’s see which teams truly dominate, and which might be living on borrowed time.
Enjoy diving into the numbers, and I’ll see you on the dugout! ⚽📊