Bundesliga
Bayern Munich striker Robert Lewandowski wins a fifth Torjägerkanone as the Bundesliga's top scorer for the third season in a row, six goals ahead of Timo Werner of RB Leipzig in second, while Borussia Dortmund's Erling Haaland finished sixth highest despite only joining the club in January.
Club: Bayern Munich
Age: 31
Games: 31 (31 starts)
Goals: 34
Minutes per goal: 81
After becoming the first player in Bundesliga history to score a goal on each of the first 11 matchdays of a season; the first to find the net in 11 successive top-flight matches; and the first to reach 16 goals after 11 matchdays. Lewandowski became the first player since Gerd Müller to score 27 goals in 27 games with a strike against Eintracht Frankfurt on Matchday 27 and by Matchday 32's title-clinching win over Werder Bremen, he'd set a personal best. His brace on Matchday 33 saw him chalk up the most goals in a single season (33) by any non-German player as he moved two clear of what Pierre-Emerick Aubameyang managed in 2016/17 and it was inevitable that Lewandowski would end the season with a goal on the final matchday of the campaign to take his total to 34.
Watch: All of Lewandowski's 2019/20 Hinrunde goals
Club: RB Leipzig
Age: 24
Games: 34 (33 starts)
Goals: 28
Minutes per goal: 100
Werner ended an eight-game lean patch with his third hat-trick of the campaign in Leipzig's 5-0 rout of Mainz on Matchday 27. He extended his career-best single-season return to 26 in the 2-2 draw at home to Fortuna Düsseldorf on Matchday 32 and bowed out of the German top-flight with a goal in his final game for Leipzig that made him the club's record goalscorer as they closed out the season with victory over Augsburg.
Club: Borussia Dortmund
Age: 19
Games: 32 (25 starts)
Goals: 17
Minutes per goal: 135
Jadon Sancho became the youngest player in Bundesliga history to reach 25 goals, when he netted his 12th of the current season in Dortmund's 5-0 win over Union Berlin on Matchday 20. In his first start since the Bundesliga's resumption, Sancho scored his first professional hat-trick in a 6-1 win over Paderborn on Matchday 29 and in doing so, became the youngest player in league history to reach 30 goals. That would be his final goal of the season.
Club: Wolfsburg
Age: 27
Games: 32 (30 starts)
Goals: 16
Minutes per goal: 171
The Dutchman got up and running early in 2019-20, scoring in each of the first two matchdays as Wolfsburg chalked up two wins from two and Weghorst had 11 to his name by the time the league was put on pause. He was then on target for the first time after the restart as he headed in a late winner against Werder Bremen on Matchday 30, before scoring a brace in both the Matchday 31 draw with Freiburg and the 4-1 win over Schalke on Matchday 33 to end the season with 16 goals to his name.
Club: Fortuna Düsseldorf
Age: 32
Games: 32 (27 starts)
Goals: 15
Minutes per goal: 164
Hennings equalled the Fortuna club record for most goals in the first half of a campaign (Klaus Allofs, 11 goals, 1978/79), but subsequently went on a Hinrunde run of 10 games without a goal before he helped the Bundesliga strugglers to three crucial points against Schalke on Matchday 28. He then hit a brace in the 2-2 draw with Hoffenheim and was on target in the 1-1 draw with Augsburg on Matchday 33 to take his tally to 15 for the campaign but Hennings' goals weren't enough for Fortuna to avoid relegation as they were demoted to Bundesliga 2 on the final matchday of the season.
Club: Borussia Dortmund
Age: 19
Games: 15 (11 starts)
Goals: 13
Minutes per goal: 82
Haaland was nothing short of a revelation after joining BVB in January, scoring a hat-trick on his debut against Augsburg before braces in each of the following two matches to take him to seven goals in his first three games. A third brace of the season came as the 19-year-old hit both goals in the 2-0 win at Leipzig that secured second-place for BVB. Haaland eventually closed out the season with a remarkable 13 goals in 15 games.
Club: Cologne
Age: 26
Games: 29 (23 starts)
Goals: 13
Minutes per goal: 154
Cordoba went eight games before scoring his first league goal of the season against Hoffenheim on Matchday 11, which spurred him onto a run of 10 goals in 12 matches. The Cologne talisman scored his 13th - and final - goal of the season in the 2-1 defeat to Union Berlin on Matchday 31, while 11 of the Colombian's tally came on home soil.
Club: Augsburg
Age: 29
Games: 33 (31 starts)
Goals: 13
Minutes per goal: 210
Niederlechner ends the season as Augsburg's top scorer and joint-best assist provider (six) this season. He also set a personal best in the Bundesliga with 13 goals for the season after his strike in the 1-1 draw with Düsseldorf on the penultimate matchday.
Club: Mainz
Age: 26
Games: 32 (31 starts)
Goals: 13
Minutes per goal: 201
Quaison scored seven goals in 28 appearances last season, while his hat-trick against Hertha Berlin on Matchday 21 saw him break double digits in 2019/20. It was the second time this season the Swedish international scored three times in a single game having done so previously against Werder Bremen. He ended a nine-game barren spell with the opener in Mainz's 3-1 win over Bremen in the return fixture that secured the 05ers survival.
Club: Union Berlin
Age: 28
Games: 33 (31 starts)
Goals: 12
Minutes per goal: 224
Seven of Andersson’s 12 2019/20 Bundesliga goals came via his head - a league best achieved in Union's 4-1 loss to Gladbach on Matchday 29. The Swedish striker ends the year having now scored 12 goals in all three of his seasons in Germany.
Club: Bayern Munich
Age: 24
Games: 31 (26 starts)
Goals: 12
Minutes per goal: 184
Bayern's top scorer this season not named Lewandowski made sure he reached double figures for the fourth consecutive year with the opening goal in the 3-2 win over Paderborn on Matchday 23. He ended a run of five games without a goal by hitting the third in Bayern's 4-2 win over Leverkusen on Matchday 30, which was ultimately his final goal in Bayern's title-winning 2019/20 league campaign. Gnabry's return of 12 is the best of his career.
Club: Bayer Leverkusen
Age: 20
Games: 30 (29 starts)
Goals: 12
Minutes per goal: 205
After only finding the target twice before the winter break, Havertz rediscovered his best form in 2020 and scored in victories over Paderborn, Fortuna Düsseldorf, Union Berlin and Eintracht Frankfurt before netting back-to-back braces against Bremen and Gladbach on Matchdays 26 and 27. Against Cologne on Matchday 32, Havertz became the youngest player in league history to reach 36 goals with his 12th of the season.
Club: Hoffenheim
Age: 29
Games: 19 (14 starts)
Goals: 12
Minutes per goal: 119
Despite missing large parts of the season through knee injuries, Kramaric ends the season as Hoffenheim top-scorer. The Croatia international made sure he hit double figures for a fourth year in a row with all four goals as TSG brushed Dortmund aside 4-0 on the final day.
Club: Eintracht Frankfurt
Age: 24
Games: 25 (16 starts)
Goals: 12
Minutes per goal: 132
Silva ends his first season of Bundesliga football with a very helthy 12 goals to his name, largely thanks to an incredible run since the Bundesliga's return from a coronavirus-enforced break. The AC Milan-loanee scored eight goals in nine appearances for the Eagles since the league's restart, more than any other player in the league during that period. He capped his season off nicely with a goal on the final matchday as Frankfurt edged relegated Paderborn 3-2.
Club: Freiburg
Age: 31
Games: 34 (24 starts)
Goals: 11
Minutes per goal: 221
The Bundesliga's ultimate super-sub, Petersen leapt from the bench to net a Bundesliga record 25th career goal coming from a substitute in Freiburg's 2-1 win over Hertha Berlin on Matchday 32, taking him to 11 for the season. It means Petersen has hit double figures in each of his last four Bundesliga campaigns.
Club: Borussia Dortmund
Age: 30
Games: 19 (18 starts)
Goals: 11
Minutes per goal: 136
The Dortmund captain was in fine early season for and scored his 10th of the campaign in his side's thrilling 5-1 win over Cologne on Matchday 19, before converting from the penalty spot in their 5-0 win over Union Berlin a week later. That would be his last goal of the season, however, as injury meant Reus would miss all of Dortmund's final 14 league games.
Alassane Plea, Patrick Schick, Marcus Thuram and Kevin Volland each scored 10 goals and were the only other players to reach double figures.