Champions Bayern Munich crashed 5-1 at Eintracht Frankfurt, their first Bundesliga defeat of the season, while Union Berlin ended a winless run spanning three-and-a-half months with a 3-1 victory against Borussia Monchengladbach.
Bayern would have gone top for at least a day with victory in Frankfurt on Saturday but were 3-0 down after 36 minutes through goals from Omar Marmoush, Eric Dina Ebimbe and Hugo Larsson.
Star Bayern striker Harry Kane failed to score for just the third time in the league this season and though Joshua Kimmich pulled one back, Dina Ebimbe scored again in the 50th minute and Ansgar Knauff got the fifth 10 minutes later.
Statisticians Opta said that Bayern conceded five goals in the first 60 minutes of a Bundesliga match for the first time since losing 6-0 in Frankfurt in 1975.
"It was a deserved defeat. Our performance was insufficient and that includes me. Frankfurt made the most of it. We were punished for our mistakes," Bayern coach Thomas Tuchel told Sky TV.
Bayern appeared rusty after last weekend's game against Union was called off due to winter weather while the postponement of the game to January seemed to help Union and their new coach Nenad Bjelica.
Kevin Volland converted a penalty midway through the first half, Benedict Hollerback netted in the 50th minute and Mikkel Kaufmann wrapped up matters in the 75th.
The win ended a run of 16 games without success in all competitions and lifted Union off the bottom of the table.
Bayern remain second, three points behind leaders Bayer Leverkusen who visit third-placed VfB Stuttgart on Sunday.
Ten-man Borussia Dortmund lost 3-2 at home against RB Leipzig in the evening match.
Germany defender Mats Hummels was sent off in the 15th minute for a last-man foul against Lois Openda after a lengthy video review.
Yussuf Poulsen made it 3-1 to Leipzig at the start of stoppage time but they had to sweat it out after Niclas Fullkrug headed Dortmund's second two minutes later.
Leipzig, in fourth, moved four points clear of fifth-placed Dortmund.
Elsewhere, Freiburg won 1-0 at Wolfsburg, Werder Bremen beat Augsburg 2-0, and Heidenheim triumphed 3-2 in a duel of promoted teams against Darmstadt.
Australian Associated Press