Bayer Leverkusen halted a two-game losing run after they came from behind to rescue a 1-1 draw against Werder Bremen at Bay Arena.
After a goalless first stanza, Omer Toprak broke the deadlock for Werder seven minutes inside the second stanza but Patrik Schick got the equaliser for Leverkusen 20 minutes before time.
In-form Freiburg won their fifth consecutive game after hammering FC Koln 5-0 at Schwarzwald-Stadion.
Ermedin Demirovic and Nicolas Hofler gave the hosts a two-goal lead heading to the break while Roland Sallai, Philipp Lienhart and Lucas Holer got three goals in the second stanza as Freiburg ran riot.
Eintracht Frankfurt won their third game in a row after beating local rivals and bottom side Mainz 2-0 at Opel Arena.
Andre Silva broke the deadlock for Eintracht in the 24th minute from the penalty spot.
Silva eventually sealed the three points for Eintrach with another spot-kick in the last 18 minutes and got his brace in the process.
Ten-man Wolfsburg extended their unbeaten to five matches after playing to a 2-2 draw with Union Berlin at Stadion An der Alten.
Renato Steffen got an early opener for the visitors but his goal was cancelled out by Sheraldo Becker on the half-hour mark.
Wolfsburg were down to ten men five minutes from the break after Maximilian Arnold was red-carded and Robert Andrich gave Union a 2-1 lead from the resultant free-kick, that was initially given as a penalty but corrected by the Video Assistant Referee (VAR).
Andres Luthe snatched the equaliser for the visiots in the 66th minute from the spot-kick.
Schalke won their first game of the season after thrashing Hoffenheim 4-0 courtesy of a hat-trick by Matthew Hoppe at Veltins Arena.
Hoppe broke the deadlock for Schalke three minutes before the break and got two goals in the second stanza while Amine Harit put the icing on the cake with the fourth goal in the last 11 minutes.