This is where it gets good … right? This season’s Champions League has been as chalky as it gets. At the time, Newcastle United and Manchester United getting dumped out in the group stages felt shocking. With hindsight, it wasn’t shocking at all! Both sides are upper-mid-table Premier League teams at best this season.

Otherwise, all of the favorites advanced out of the group stages, and then all of the favorites except Inter Milan advanced through the round of 16. Without the likes of Liverpool and Bayer Leverkusen in the competition this year, there isn’t as much competitive depth as there usually is. But the upside of no real upsets — it’s not like Atletico Madrid were heavy underdogs against Inter, Italy’s best team — is a stacked slate of quarterfinal matchups.

We’ve got the defending champs vs. the eternal champs, Manchester City and Real Madrid, for the third year in a row. We’ve got Arsenal flying high atop the Premier League but being forced to conquer the team, Bayern Munich, that last eliminated them from the Champions League … by a 10-2 aggregate scoreline. Then it’s Paris Saint-Germain and Kylian Mbappé against his likely future club’s fiercest rival, Barcelona. Oh and to top it off, it’s Europe’s two most successful upstart clubs of the modern era, Borussia Dortmund and Atletico Madrid, squaring off for a spot in the semifinals.

So, we’ve finally got some competitive matchups worth analyzing for their on-field value. With that, let’s take a look at the most important — but not necessarily “best” — player for each club ahead of its quarterfinal tie.

Unless otherwise noted, all stats come from domestic play only


Manchester City: Rodri

There are two things you need to know about Real Madrid and how they match up with Manchester City: (1) They’ve created the seventh-most expected goals from counterattacking situations of any team in Europe. And (2), they’ve allowed their opponents to complete 84.3% of their passes this season — the worst mark of any remaining team in the field, and the 85th-best rate of any team in Europe’s Big Five leagues.

So, that means we probably won’t see Madrid try to break up City’s measured approach in buildup play, but we should see Madrid draw them into their own half, try to soak up the pressure, and then attempt to break quickly into space. Rodri will be at the center of it all, hopefully making sure that the first part doesn’t work and the second part can’t happen.

How the Haaland-Rudiger battle could define Real Madrid vs. Man City

ESPN FC’s Alex Kirkland looks ahead to the UEFA Champions League quarterfinal match between Real Madrid and Manchester City.

The 27-year-old might actually be the best player in the world right now, and he’s close to the perfect midfielder. At 6-foot-3, he’s fantastic in the air, but he still has the physical range and defensive instincts to snuff out counterattacks before they start. He’s brilliant at breaking through the opposition press, but he’s also vital to City breaking down opponents who sit deep: by picking out tiny little chipped or slipped balls into the box or making a run forward into the box to score himself.

There’s no one else in the world who can do all of those things, and I’m struggling to think of too many other players who have ever been able to do all of those things at the level he does.

The DAVIES model, created by analyst Michael Imburgio, essentially sums up the value of everything a player does on the ball to estimate what he provides to his team. The data goes back to 2017, and since then, no deep-lying midfielder in the Big Five leagues has added at least seven goals of value above the average player. Rodri, this year, is at 7.5 — and there are still two months left to play.

Real Madrid: Toni Kroos

If we take those same DAVIES numbers, though, and convert them to per-90 numbers, there are two seasons better than Rodri’s: Toni Kroos last season and Toni Kroos this season.

Perhaps he’s benefiting from Madrid’s steady acquisition of young, athletic, off-ball movers (Jude Bellingham, Aurélien Tchouaméni, Eduardo Camavinga), but it kind of seems like the 34-year-old Kroos is getting even better as he’s getting older. He can’t move like he used to, but he’s a more prolific and more important passer than ever before.

In each of the past two seasons, he has attempted 100-plus passes per 90 minutes — something he’s never done before. In fact, over his entire Madrid career, he has averaged about 83 passes per 90. And yet, as the number of passes has increased, so has his completion percentage, and so too has the difficulty of his passes. He’s completing around 95% of his passes over the past two seasons, and that’s despite 33% of his passes over the past two years going forward — compared to about 27% over the eight years before that.

Per Stats Perform’s possession value model, Kroos has played 271 passes this season from his own half that have increased his team’s likelihood of scoring a goal. (I’m defining this as any pass that added a tenth of a percentage point of goal probability — most midfield passes aren’t valuable on their own.) That’s 40 more passes than the next most from a midfielder, who is Rodri. They’re mostly either quick passes out to Vinícius Júnior on the left or sweeping diagonals out to the right:

Among Madrid’s likely starters against City, Kroos is playing an average of 35 more passes per game than any other player. While it’s unlikely that they’ll dominate possession against City, it’s hard to see Madrid generating too many quality chances without Kroos being able to get on the ball, either to spring counterattacks or to break down City in what are likely to be rare moments of settled possession.

Arsenal: Bukayo Saka

I’m just gonna list some names of stats:

– Goals
– Assists
– Shots
– Chances created
– Expected goals
– Expected assists
– Take-ons
– Progressive carries
– Touches inside the opposition penalty area
– Progressive passes received
– Tackles in the attacking third

It might seem somewhat random, that’s actually a list of all the different things that Bukayo Saka has done more often than any other Arsenal player this season. Given how good their defense is — the fewest xG conceded of any team in Europe — it seems like a big-time performance from Saka will all but guarantee that Arsenal advance to the semifinals.

Without one? Well, Arsenal have lost just once in the Premier League when Saka either scores or assists a goal. When he doesn’t do either, though, they’ve won four, lost three and drawn two.

Bayern Munich: Manuel Neuer

If purely measured by expected goals, this is shaping up to be an all-time-great stylistic matchup. We’ve already mentioned Arsenal’s defense; Bayern, meanwhile, have created about 74 non-penalty expected goals this season, nearly 10 more than any other team in Europe — and that’s despite playing fewer games than all of the other leagues.

Harry Kane, Leroy Sané and Jamal Musiala are all among the best players in the world at their positions, and all three of them should stress Arsenal’s defensive solidity over the two legs. The real issue, though, will be at the other end: Can Bayern stop Arsenal from scoring?

Preventing chances hasn’t really even been an issue for Bayern. They’ve allowed the fourth-fewest xG of any team in Europe — it’s just that their opponents have turned 22.6 expected goals into 33 actual goals. Some of that is simply their opponents shooting the ball well, but a sizable chunk comes from one of the greatest goalkeepers of all time struggling to stop shots.

Since 2013, which is as far back as Stats Perform’s shot-stopping data extends, Manuel Neuer has conceded nearly 28 goals fewer than we’d expect the average keeper to based on the shots he’s faced. However, at 38 years old, Neuer has allowed a career-worst 2.73 goals more than expected this season.

Orange are goals, and a bigger circle represents a chance with a higher expected-goal value:

Under Mikel Arteta, Arsenal can get drawn into the occasional conservative, grind-it-out match. If that happens, Bayern won’t be able to afford any low-probability shots sneaking past their keeper. But if Neuer can turn back the clock for a couple of games, Bayern should have a real shot to advance past the Premier League leaders.

Paris Saint-Germain: Gianluigi Donnarumma

Normally, PSG come into this competition with absurd underlying numbers in Ligue 1 and we have to just shrug them off and say, “Welp, we’ll see what happens when they finally play a good team.” The latter part is certainly still true, but their level of overall player is lower than it’s ever been since the Qataris purchased the club.

In Luis Enrique’s first season, PSG’s per-game xG differential is plus-0.7, worse than it has been in any season since 2012. For context, it was plus-1.7, or nearly a full goal better, when they reached the Champions League final in 2020.

Now, they still have a 10-point lead in France, and their goal difference is way better than that of any other team in Ligue 1. Part of that is because none of the other teams in France are very good this year, and part of it is because they’re employing the world’s best goalkeeper this season.

This chart includes every keeper who has played at least 10 games in Europe’s Big Five leagues this season. The horizontal axis is the number of goals we’d expect them to concede based on all the shots they’ve faced, per game. And the vertical axis is how many goals they’ve conceded in relation to that number. The further right, the more shots you’ve faced; the further up, the more shots you’ve saved above average:

See that one, all the way up top? Yeah, that’s Gianluigi Donnarumma. Despite not facing too many shots this season, he’s still saving about a half of a goal per game. If he’s able to keep that up through the Champions League — essentially erasing a full goal’s worth of chances across each tie — then it’s hard to see anyone stopping Kylian Mbappe and co from getting back to the final.

Barcelona: Jules Koundé

Sure, we could’ve just said “Kylian Mbappe” and then just written “Duh” for the entire previous section, but that wouldn’t be any fun. He’s second among all players in Europe, behind just Harry Kane, in total goals and assists this season. And he does most of it from a specific area on the field, as this heat map of his touches for PSG in 2023-24 shows:

Stop Mbappe and you’ll likely stop PSG; the player tasked with doing that for Barcelona is Mbappe’s fellow Frenchman, Jules Kounde. Although Kounde really doesn’t seem to like playing right back, it seems pretty clear that he’s better there than in the center. The 25-year-old is one of the best modern full-backs in the world — and much of Barcelona’s struggles this season occurred when he wasn’t playing there.

What do I mean by “modern full-back”? I mean that he defends the flank without the ball, but then sits in the back line and progresses play from deep when Barcelona win possession. To put some numbers on it, he has received only the 11th-most progressive passes for Barcelona this season, but he’s second on the team in progressive passes completed. Despite playing more minutes than both of them, Kounde has fewer final-third touches than either of Barcelona’s other full-backs, Alejandro Balde and João Cancelo. But he’s taken more touches in the middle third than both of them, combined.

With Mbappe lurking at all times and with a number of injuries to Barcelona’s midfield, Kounde might be their most important player against PSG both with and without the ball.

Atletico Madrid: Antoine Griezmann

Two seasons ago, it really seemed like Griezmann’s time as a top-level soccer player was over. After two subpar seasons at Barcelona, he returned to Atletico Madrid in order to get comfortable … and got even worse, scoring three goals and adding four assists in his age-30 season. This is right when most players begin to decline — if they haven’t already.

But instead of continuing on that trajectory, Griezmann not only spun it around but ended up having the best season of his career. His 31 goals+assists were a career high, and unlike most older players who maintain their attacking production, it wasn’t because he stopped contributing to all other phases of play. If anything, he was more active away from the goal than he’d recently been. In addition to the goals and assists, he also registered more progressive passes, progressive carries, and tackles+interceptions in any season since 2017-18.

The magnitude of his impact has declined a bit this season — down to about 0.63 goals+assists per 90 minutes, after being close to 1.0 last season — but the scope has remained the same. He’s still scoring and creating goals, while also dictating play in the attacking third and putting in a ton of defensive work, compared to the other players at his position.

Unlike some of the other attacking players mentioned so far, I don’t really think Borussia Dortmund will be able to shut Griezmann down. Were he just scoring goals or creating chances of just aiding buildup, then sure, you might be able to take him out of the match. But cut out one part of his play, and he’s just going to pop up somewhere else, influencing the game in some other way.

Borussia Dortmund: Jadon Sancho

Dortmund are the worst team left in the field. Don’t believe me? They’re playing the second-worst team left in the field — and they’re still bigger underdogs to advance than anyone other than Real Madrid. They have a plus-0.41 xG differential in the Bundesliga this season, which is right around what Athletic Bilbao and Girona are doing in La Liga this season. Plus, the team doesn’t really have the youth-driven upside of seasons past; with an average age of 27.7 (weighted by minutes played), Dortmund are older than all but five other teams in the Bundesliga.

So where is the upside, then? In January, Dortmund added Chelsea’s Ian Maatsen on loan and, of course, former club superstar Jadon Sancho from Manchester United. Maatsen has been fantastic, but full-back excellence doesn’t really scream “X factor” for this exercise.

Instead, Sancho is the one who really raises Dortmund’s ceiling, compared to where it’s been for the season as a whole. With the 23-year-old in the lineup, Dortmund’s xG differential rises to plus-0.63.

As was the case at United, he’s still just not generating any shots for himself. He’s averaging fewer than one shot per 90 over the past calendar year, and this is a player who scored 37 goals in his final three seasons in the Bundesliga. But he’s doing just about everything else he can to make up for the goals he can’t score for himself. Among Dortmund players with at least five starts this season, he leads the team in attacking-third touches, progressive carries, progressive passes received, expected assists and passes into the penalty area per 90 minutes.

At some point against Atletico, it’s likely that Dortmund will have to try to break down the kind of compact, organized, deeper defense that you don’t usually see in the Bundesliga. If they’re able to do it, Sancho is the most likely candidate to find a way through.