Bundesliga Matchday 34 in pictures
The fate of six Bundesliga teams was decided on the final day. Freiburg and Paderborn have been relegated, whilst Hamburg will play in the relegation play-off. The rest of the league played out a superb final day.
Paderborn goes down fighting
Paderborn has finished bottom of the Bundesliga in their debut season. Facing Stuttgart at home, they knew they needed to win to have any chance of survival. Marc Vucinovic gave the home side an early lead, but goals from Daniel Didavi and Daniel Ginczek turned the game around. Stuttgart's win keeps them safe for another season, while Paderborn return to the second division.
Hamburg lives to fight another day
Hamburg secured a place in the Bundesliga relegation play-off for a second consecutive season with a 2-0 win over Schalke. As goals went in around them, the atmosphere was subdued in the Imtech Arena until the second-half. Ivica Olic and Slobodan Rajkovic scored to give the league's dinosaurs one more chance of survival against a second division club.
Hannover sends Freiburg down
Hannover and Freiburg faced off in the middle of the relegation battle with both clubs' fates in their own hands. Goals from Hiroshi Kiyotake and the retiring Pavel Krmas putting into his own net, were enough to give Hannover the win. Nils Petersen's late strike was not enough, as the loss coupled with the result in Paderborn meant that Freiburg had been relegated.
Hertha lose, but stay up
Coming into the final day, Hertha Berlin was the least likely to get relegated as a superior goal difference gave them a sure advantage. In the end, it counted massively as defeat to Hoffenheim left the capital club level on points with Hamburg in the relegation play-off. Anthony Modeste and Roberto Firmino sealed Hoffenheim's win either side of a Roy Beerens strike.
Dortmund send off Klopp and Kehl in style
It was an emotional day at Signal Iduna Park, as Borussia Dortmund sealed a place in the Europa League next season with a win over Werder Bremen, whilst Sebastian Kehl and Jürgen Klopp waved goodbye. Goals from Shinji Kagawa, Pierre-Emerick Aubameyang and Henrikh Mkhitaryan overcame Werder's goals from Levin Öztunali and Theodore Gebre Selassie.
Bayern cap off title with home win
With the title already sealed, Bayern Munich was merely preparing for the post-game party at home to Mainz. A penalty from Robert Lewandowski and second-half strike from Bastian Schweinsteiger on his 500th Bayern appearance, helped the champions to close the season with victory.
Augsburg seal fifth in Gladbach
Three second-half goals sealed an impressive win for Augsburg away at high-flying Borussia Mönchengladbach. Raffael opened the scoring before half-time. Pierre Hojbjerg, Tim Matavz and Sascha Mölders all scored after the interval to turn the game around.
Frankfurt beats Leverkusen
With nothing to play for at Frankfurt for either side, it was a case of ending the season well. Haris Seferovic was certainly up for the challenge, scoring after just two minutes. Karim Bellarabi matched him, though, equalizing just five minutes later. Alexander Madlung scored the winner, as Frankfurt end the season on a plus point.
Cologne holds Wolfsburg to entertaining draw
Much like in Frankfurt, there was nothing to play for in Cologne as Wolfsburg visited the Billy Goats. Yuya Osako was keen to impress though, and scored inside two minutes. Wolfsburg had the lead themselves before 15 minutes had passed, with Luiz Gustavo and Ivan Perisic the scorers. A second-half own goal from Robin Knoche meant the game ended in a deserved draw.