Borussia Dortmund slipped to their first defeat of the Bundesliga season after a shock 2-1 loss to Freiburg at Dreisamstadion.
Vincenzo Grifo opened the scoring for Freiburg in the sixth minute and Roland Sallai doubled their lead eight minutes from the half-time break.
An own goal by Yannik Keitel on the hour-mark gave Dortmund a lifeline but Freiburg held on to a famous win.
Bayer Leverkusen got their first victory of the season after drubbing Borussia Monchengladbach 3-0 at BayArena.
An own goal by goalkeeper Yann Sommer gave Bayer a head start before Patrik Schick doubled their lead five minutes later.
Monchengladbach were offered a lifeline after getting a penalty just before the break but Lars Stindl's spot-kick was saved by shot-stopper Lukas Hradecky.
Moussa Diaby eventually killed off the game for the hosts ten minutes from the half-time break with the third goal while Nadiem Amiri completed the rout in the last four minutes.
Wolfsburg maintained their perfect start to the season after coming from behind to beat Hertha Berlin 2-1 at Olympiastadion.
After a goalless first stanza, Dodi Lukebakio eventually broke the deadlock for Hertha on the hour-mark from the penalty spot but Ridle Baku levelled matters for the visitors 13 minutes later.
Lukas Nmecha snatched the winner for Wolfsburg two minutes before time.
Newly-promoted side VfL Bochum got their first points on the board after beating Mainz 2-0 at Ruhrstadion.
Gerrit Holtmann broke the deadlock for the hosts in the 21st minute and Simon Zoller thought he had made it 2-0 ten minutes later after scoring with a thumping effort but the goal was disallowed by the Video Assistant Referee (VAR) for a handball in the build-up.
Sebastian Polter eventually sealed the deal for Bochum four minutes before the hour-mark.
Greuther Furth missed the chance to bag their first victory of the season after they were held to a 1-1 draw by ten-man Arminia Bielefield at Sportpark Ronhof Thomas Sommer.
Fabian Klos broke the deadlock for Arminia on the stroke of half-time but the lead was short-lived, as Branimir Hrgota levelled matters for Furth five minutes into the second stanza from the penalty spot.
The visitors were reduced to ten men in the last 22 minutes after Alessandro Schopf got a second booking and was sent off but Furth could not use the numerical advantage in the closing phase.
Both Eintracht Frankfurt and Augsburg stopped the rot from their opening defeats after playing to a goalless draw at Deutsche Bank Park.
Both sides would have been encouraged by a keeping a clean sheet, after Eintracht were hammered 5-2 by Borussia Dortmund in their opening match while Augsburg suffered a 4-0 defeat last weekend.