Bayern Munich failed to win their final home game of the 2021/22 season, slipping to a shock 2-2 draw against relegation-threatened Stuttgart.
With the Bundesliga title already secured, Die Roten were perhaps understandably sloppy on occasion, though they did still create more than enough chances to win the game.
The result lifts Stuttgart to within three points of Hertha Berlin in 15th, while Bayern extended their lead over Dortmund to 10 points ahead of the final round of fixtures next weekend.
Bayern started poorly with big holes in their defence being repeatedly exploited. The hosts did not heed these warnings, and inside eight minutes Stuttgart took the lead.
Sporting CP loanee Tiago Tomas was the scorer, arriving perfectly in the box to lash home Omar Marmoush's cutback.
Going behind sparked Die Roten into life and Thomas Muller soon struck the bar from close range after some eye-catching build-up play. Leon Goretzka then missed an even better chance, dragging an effort wide of the post from inside the penalty area.
However, Bayern remained remarkably open in transition and in the 23rd minute Marmoush was able to race through on goal before prodding an effort wide.
Just after the half-hour mark, the home side drew level. Gnabry was slipped in behind by Leon Goretzka and the wideman's shot ended up in the back of the net thanks to the help of Stuttgart defender Konstantinos Mavropanos.
On the stroke of half time Bayern took the lead. Dayot Upamecano split the Stuttgart defence with an incisive pass and Muller spun into space before prodding past Florian Muller.
However, Stuttgart came out strong after the break and soon found an equaliser - though they did get an early let-off when Muller failed to convert from inside the six-yard box. After that miss, Borna Sosa swung in a cross from out wide and Sasa Kalajdzic rose high to nod home at the back post.
Second later Kalajdzic should have put his side in front, tamely striking straight at Neuer when one-on-one with Germany's number one.
Stuttgart continued to spurn chances as the second half wore on, with Philipp Forster dashing in behind after an error from Gnabry but failing to take full advantage.
Not long after Robert Lewandowski found himself with the ball at his feet in the box and forced a wonderful save from Muller, who got the slightest of touches to divert his strike onto the bar.
This was the last clear-cut chance either side were able to carve out, ensuring they each took a share of the spoils.
Here are your player ratings from Bavaria...
1. Bayern Munich (4-2-3-1)
GK: Manuel Neuer - 6/10 - Had a far busier afternoon than he was probably expecting. Made a couple of important saves to bail out those in front of him.
RB: Benjamin Pavard - 4/10 - His defensive positioning was questionable and Stuttgart caused him issues one-on-one.
CB: Tanguy Nianzou - 3/10 - Pretty atrocious. Seemingly did not spend a single second in the right position when out of possession.
CB: Dayot Upamecano - 4/10 - Defensively unacceptable. He cost Bayern a lot of money and performances like this do not justify the price tag. Did create Muller's goal, though.
LB: Alphonso Davies - 4/10 - Like his counterparts in the back four, he struggled defensively. Not influential going forward either.
CM: Joshua Kimmich - 6/10 - His passing was eye-catching as ever. Sometimes a bit porous in the middle.
CM: Leon Goretzka - 7/10 - Missed a great chance early on. Fairly creative and good engine. Always looked to break the lines with his passes.
RW: Serge Gnabry - 7/10 - His side's brightest spark. Carved out plenty of chances for his teammates and forced his side's first goal with his directness. Made one heinous defensive error.
AM: Thomas Muller - 6/10 - Took his goal in typically clinical fashion but should have had more. Wasteful.
LW: Kingsley Coman - 6/10 - Not as dangerous as Gnabry but still made things happen at times.
ST: Robert Lewandowski - 5/10 - Strangely out of sorts. The ball did not seem to break to him and when it did, he could not finish.
SUB: Niklas Sule (CB) - 6/10 - Playing his last game at the Allianz Arena as a Bayern player and did not have much to do.
SUB: Corentin Tolisso (CM) - 5/10
SUB: Marc Roca (CB) - 5/10
SUB: Marcel Sabitzer (CM) - N/A
SUB: Eric-Maxim Choupo-Moting (ST) - N/A