- Raphaël Guerreiro (69')
- Niklas Süle (90'+6')
- Andreas Hanche-Olsen (15')
- Karim Onisiwo (24')
Borussia Dortmund's dream of their first Bundesliga title in 11 years turned into a nightmare on Saturday after a shock 2-2 home draw to Mainz dropped them to second place on goal difference in the season finale, handed the title to rivals Bayern Munich.
With a sea of tens of thousands of yellow and black-clad fans outside the stadium and a sold-out 81,000 crowd inside ready to pop the champagne for their first league crown since 2012, Dortmund went into the game in top spot.
The club had ordered more than 120,000 litres of beer according to club bosses but fans had nothing to celebrate at the start with Mainz snatching the lead through Andreas Hanche-Olsen's header at the near post in the 15th minute.
Dortmund's Sebastien Haller had a golden chance to level and lift some of the mounting the pressure on his team just four minutes later but he saw his weak penalty saved.
It got even worse in the 24th when Karim Onisiwo was left with far too much space in the box to drill in his header, shocking the hosts and silencing the stadium.
Mainz, playing without any pressure, made it hard for Dortmund who needed to up the tempo further and cut the deficit with Raphael Guerreiro's shot in the 69th.
With the fans growing louder again the hosts poured forward with substitute teenager Julien Duranville injecting new life into Dortmund's game.
They levelled deep in stoppage time with Niklas Suele but ran out of time for a winner, with the players left lying on the grass, their heads in their hands and tears in their eyes for the missed title shot.
- Marco Fritz
|1. FC Heidenheim 1846||12||3||2||7||-9||11|
|SV Darmstadt 98||13||2||3||8||-19||9|
|1. FC Union Berlin||12||2||1||9||-15||7|