Club goals, all competitions
40 vs 37 appearances
2019-20 was the season Erling Haaland went from Austrian curiosity to European phenomenon, and the season Kylian Mbappé came within one goal of a Champions League winner's medal. Across all club competitions Haaland scored 44 goals in 40 games for Red Bull Salzburg and Borussia Dortmund, Mbappé 30 in 37 for Paris Saint-Germain, with 14 assists and a domestic clean sweep for the Frenchman. It was also the first season the two shared a pitch: Dortmund against PSG in the Champions League round of 16, two legs that are still the template for how each is talked about. This page puts every number from the campaign side by side.
Club goals, all competitions
40 vs 37 appearances
Goals per game
Club matches only
League goals
Austrian Bundesliga + Bundesliga vs Ligue 1
Champions League goals
Round of 16 vs Final (runner-up)
Hat-tricks
Three or more goals in a match
Team trophies
2 vs 1 individual awards
| Statistic | Haaland | Mbappé |
|---|---|---|
| Club football, all competitions (Red Bull Salzburg / Borussia Dortmund vs Paris Saint-Germain) | ||
| Appearances | 40 | 37 |
| Goals | 44 (better) | 30 |
| Assists | – | 14 |
| Goal involvementsgoals + assists | – | 44 |
| Goals per game | 1.10 (better) | 0.81 |
| Hat-tricksclub and country, three or more goals | 6 (better) | 2 |
| By competition | ||
| League goals29 vs 20 apps | 29 (better) | 18 |
| Domestic cup goals3 vs 6 apps | 5 | 6 (better) |
| Champions League goals8 vs 10 apps | 10 (better) | 5 |
| Champions League assists | 1 | 5 (better) |
| Champions League stage reached | Round of 16 | Final (runner-up) |
| Group-stage goals6 vs 5 apps | 8 (better) | 5 |
| Knockout goals2 vs 5 apps | 2 (better) | 0 |
| Other (super cups, play-offs) | 0 | 1 |
| League shooting, Understat (Borussia Dortmund in the Bundesliga vs Paris Saint-Germain in Ligue 1) | ||
| League minutes | 1,061 | 1,522 |
| Minutes per league goal | 81.6 (better) | 84.6 |
| Non-penalty goals | 13 | 18 (better) |
| Expected goals (xG) | 8.89 | 16.57 |
| Goals minus xG | +4.11 (better) | +1.43 |
| Expected assists (xA) | 1.53 | 10.58 (better) |
| Shots per 90 | 2.80 | 5.20 |
| Key passes per 90 | 0.76 | 2.37 (better) |
| Big chances scored / hadnon-penalty shots with xG ≥ 0.30 | 10/13 | 11/23 |
| Big-chance conversion | 76.9% (better) | 47.8% |
| Honours | ||
| Team trophies | 0 | 4 (better) |
| Individual awards | 2 (better) | 1 |
| International, by calendar year (Norway vs France) | ||
| 2019: caps | 2 | 6 |
| 2020: caps | 5 | 5 |
| 2019: goals | 0 | 3 (better) |
| 2020: goals | 6 (better) | 3 |
Club totals are all competitions for every club each player represented in 2019/20. Assists are shown as – where no verifiable per-season source exists. Understat covers the big five leagues only, so Haaland's Austrian Bundesliga matches are not in the shooting rows. International figures are by calendar year, as the dataset records them.
| Player | Club | Competition | Apps | Goals | Assists | Goals/game |
|---|---|---|---|---|---|---|
| Erling Haaland | Red Bull Salzburg | Austrian Bundesliga | 14 | 16 | – | 1.14 |
| Erling Haaland | Red Bull Salzburg | ÖFB-Cup | 2 | 4 | – | 2.00 |
| Erling Haaland | Red Bull Salzburg | UEFA Champions League | 6 | 8 | 1 | 1.33 |
| Erling Haaland | Borussia Dortmund | Bundesliga | 15 | 13 | – | 0.87 |
| Erling Haaland | Borussia Dortmund | DFB-Pokal | 1 | 1 | – | 1.00 |
| Erling Haaland | Borussia Dortmund | UEFA Champions League | 2 | 2 | – | 1.00 |
| Kylian Mbappé | Paris Saint-Germain | Ligue 1 | 20 | 18 | 5 | 0.90 |
| Kylian Mbappé | Paris Saint-Germain | Coupe de France | 3 | 4 | 1 | 1.33 |
| Kylian Mbappé | Paris Saint-Germain | Coupe de la Ligue | 3 | 2 | 3 | 0.67 |
| Kylian Mbappé | Paris Saint-Germain | UEFA Champions League | 10 | 5 | 5 | 0.50 |
| Kylian Mbappé | Paris Saint-Germain | Trophée des Champions 2019 | 1 | 1 | 0 | 1.00 |
Haaland left Red Bull Salzburg for Borussia Dortmund on 29 December 2019 and was registered from January 2020, so his season splits across two clubs and two leagues. Ligue 1 was stopped after 28 rounds in March 2020 and PSG were declared champions on points per game; the French cup finals and the Champions League final eight were played in July and August.
| Date | Player | Team | Opponent | Competition | Goals |
|---|---|---|---|---|---|
| 19 July 2019 | Haaland | Red Bull Salzburg | SC-ESV Parndorf | Austrian Cup | 3 |
| 10 August 2019 | Haaland | Red Bull Salzburg | Wolfsberger AC | Austrian Bundesliga | 3 |
| 14 September 2019 | Haaland | Red Bull Salzburg | TSV Hartberg | Austrian Bundesliga | 3 |
| 17 September 2019 | Haaland | Red Bull Salzburg | Genk | UEFA Champions League | 3 |
| 22 October 2019 | Mbappé | Paris Saint-Germain | Club Brugge | UEFA Champions League | 3 |
| 10 November 2019 | Haaland | Red Bull Salzburg | Wolfsberger AC | Austrian Bundesliga | 3 |
| 18 January 2020 | Haaland | Borussia Dortmund | Augsburg | Bundesliga | 3 |
| 4 March 2020 | Mbappé | Paris Saint-Germain | Lyon | Coupe de France | 3 |
Haaland struck twice in eight second-half minutes either side of a Neymar goal set up by Mbappé, giving Dortmund a 2-1 first-leg lead. The 19-year-old Norwegian's second, a rocket from outside the box, became one of the goals of the season.
Signal Iduna Park (Westfalenstadion), Dortmund
In an empty Parc des Princes, first-half goals from Neymar (28') and Juan Bernat (45+1') overturned the tie for PSG. Haaland was kept quiet and Mbappé, recovering from illness, came off the bench in the second half as PSG advanced 3-2 on aggregate.
Parc des Princes, Paris (behind closed doors, COVID-19)
Full list of meetings on the head-to-head page.
Team: none
Individual: Golden Boy · Austrian Bundesliga Player of the Season
Team: Ligue 1 (Paris Saint-Germain) · Coupe de France (Paris Saint-Germain) · Coupe de la Ligue (Paris Saint-Germain) · Trophée des Champions (Paris Saint-Germain)
Individual: Ligue 1 top goalscorer 18
Haaland arrived in 2019-20 as a 19-year-old with an Austrian league and cup double already to his name and left it as the most talked-about teenager in the sport. At Salzburg he scored 28 in 22 games before Christmas, 16 of them in 14 Austrian Bundesliga matches, plus 5 hat-tricks. Then came the €20m move to Dortmund and the most famous debut of the modern Bundesliga: a 23-minute hat-trick from the bench at Augsburg on 18 January 2020, followed by two more goals as a substitute at home to Köln a week later. He finished with 13 league goals in 15 appearances for Dortmund, a goal every 81.6 minutes, as the club finished second behind Bayern. Combine the two spells and the raw total, 44 goals in 40 club games, is the highest single-season tally of his career to that point and the one that set the price for everything that followed.
Mbappé, aged 20 when the season kicked off, had a stop-start year: a hamstring injury in August cost him most of the autumn, and an ankle injury in the Coupe de France final in July cost him the Coupe de la Ligue final and most of the Champions League quarter-final. He still finished as Ligue 1's top scorer with 18 goals in 20 matches when the league was halted in March, and he still ended with 4 team trophies: the league, both domestic cups and the Trophée des Champions. The missing piece was the Champions League. PSG reached their first final, in Lisbon, and lost 1-0 to Bayern Munich; Mbappé had a clear chance saved by Manuel Neuer before half-time. His 5 Champions League goals all came in the group stage, including a hat-trick in Bruges; in 5 knockout games he scored none but supplied 2 assists, one of them for the stoppage-time winner against Atalanta that saved PSG's season.
Haaland's 10 Champions League goals in 8 appearances made him the competition's second-highest scorer that season behind Robert Lewandowski, even though his teams went out in the round of 16. He scored 8 in 6 group games for Salzburg, starting with a first-half hat-trick on debut against Genk, becoming the first teenager to score in five consecutive Champions League matches, and then added 2 in 2 for Dortmund, both against PSG. Mbappé played 10 games and reached the final with 5 goals and 5 assists. Measured by goals the gap is 5 in Haaland's favour; measured by what the campaign was for, it belongs to Mbappé.
The two legs in February and March 2020 are the only times the pair met that season and the first two of their career. In Dortmund, Haaland scored twice in eight second-half minutes, the second a rising drive from outside the box, while Mbappé set up Neymar's equaliser. In Paris, in an empty stadium on the eve of Europe's lockdown, PSG won 2-0 and went through 3-2 on aggregate; Haaland was marked out of the game and Mbappé, recovering from illness, came on for the last half hour. The PSG players' imitation of Haaland's meditation celebration became the lasting image. Both meetings are itemised in the cards above and on the head-to-head page.
Understat only covers the big five leagues, so Haaland's shooting rows use his 1,061 Bundesliga minutes alone. Even so the pattern that defines both careers is already there: Haaland scored 13 from 8.89 expected goals, an over-performance of 4.11, and buried 10 of 13 big chances (76.9%). Mbappé, playing wider for a dominant PSG, took more shots (5.20 per 90 to 2.80), created far more (10.58 expected assists to 1.53) and converted 11 of 23 big chances (47.8%). Neither took a league penalty that Understat records in 2019-20: Haaland's 13 and Mbappé's 18 league goals were all from open play or set pieces.
Haaland's senior Norway debut, against Malta on 5 September 2019, falls inside this season; he won 2 caps in 2019 without scoring, and his first international goals came in September 2020, the following season. Mbappé's France played only Euro 2020 qualifiers in the autumn of 2019, and he missed the September and October matches injured; his 3 international goals of 2019 were all scored before this season began. The pandemic then wiped out every international window from March to August 2020 and pushed the Euros back a year. The international page has both careers year by year.
44 club goals in 40 appearances across all competitions: 28 for Red Bull Salzburg before his December move and 16 for Borussia Dortmund after it. He added no international goals that season; his first came in September 2020.
30 goals and 14 assists in 37 appearances for Paris Saint-Germain, including 18 in Ligue 1, which made him the league's top scorer in a season cut to 28 rounds by the pandemic.
Haaland, with 10 goals in 8 games for Salzburg and Dortmund, against 5 in 10 for PSG. Haaland was the competition's second-top scorer behind Robert Lewandowski despite going out in the round of 16; Mbappé reached the final, where PSG lost 1-0 to Bayern Munich.
Yes, twice: the Champions League round of 16 between Borussia Dortmund and Paris Saint-Germain. Haaland scored both goals in Dortmund's 2-1 first-leg win on 18 February 2020 and Mbappé assisted Neymar's goal; PSG won the second leg 2-0 behind closed doors on 11 March 2020 to go through 3-2 on aggregate. They were the first two meetings of their careers.
Mbappé won 4 trophies with PSG: Ligue 1, the Coupe de France, the Coupe de la Ligue and the Trophée des Champions, and was Ligue 1 top scorer. Haaland won no team trophy, having left Salzburg in December before they completed the Austrian double, but was named Austrian Bundesliga Player of the Season and won the 2020 Golden Boy award on the back of this campaign.