Hamburg and Werder Bremen played to a scoreless draw in the 107th Bundesliga Nordderby while Dortmund earlier edged a 2-1 win at Augsburg. Look back at our live blog.
The top of the Bundesliga table has remained unchanged after Saturday football on Matchday 7. Borussia Dortmund extended their lead at the top to five points, grinding out a 2-1 victory over Bundesliga surprise packages Augsburg in the WWK-Arena.
Eintracht Frankfurt and Borussia Mönchengladbach both used stoppage time magic to solidify their positions in midtable. Sebastien Haller, who joined Frankfurt before the season, was the hero as he volleyed in the winning goal. Gladbach's late goal handed Hannover their first loss of the season as Salif Sane conceded a penalty that Thorgan Hazard converted just before the final whistle.
The Nordderby between Hamburg and Werder Bremen was without a goal, making it the first scoreless draw in the fixture in 17 years. Tatsuya Ito impressed in his first start for Hamburg, and 17-year-old Jann-Fiete Arp made his Bundesliga debut for the Redshorts.
Matchday 7 as it happened...
90' -- Fulltime!
90+2' -- Yellow card for Michael Zetterer on Bremen's bench after he has an exchange with referee Denis Aytekin.
90+1' -- A big collision in Bremen's six-yard box. Lewis Holtby plays a ball for Aaron Hunt. Ulysses Garcia pushes Hunt over and the Hamburg midfielder collides with Jiri Pavlenka.
90' SUB -- Izet Hajrovic replaces Finn Bartels
89' SUB -- Jann-Fiete Arp replaces Bobby Wood.
79' -- Lewis Holtby finds Bobby Wood in the penalty area, but Wood could not put his header on target. Aaron Hunt collects the rebound, crosses it to Dennis Diekmeier, who heads it down for Andre Hahn. Hahn's curling effort is saved after a terrific dive from Jiri Pavlenka.
77' -- Theodor Gebre Selassie, Zlatko Junuzovic and Fin Bartels combine well on the right wing and Bartels finds himself in the penalty area. But Kyriakos Papadopoulos pokes the ball away in the crucial moment.
74' SUB -- Walace replaces Albin Ekdal.
71' -- Cheeky touch! Zlatko Junuzovic back-heels a pass to Fin Bartels in the penalty area. Bartels fires a close-range shot, but Christian Mathenia parries it away. Thomas Delaney jumps on the rebound and leaves it for Theodor Gebre Selassie, but Gebre Selassie's shot hits the side netting.
68' -- Yellow card for Kyriakos Papadopoulos after his foul just outside Hamburg's penalty area. Zlatko Junuzovic hits the ensuing free kick into Hamburg's wall.
65' -- An open-field break for Bremen is cut short as Dennis Diekmeier chases down Fin Bartels before the Bremen forward can take the chance.
63' SUB -- Double change for Werder Bremen as Maximilian Eggestein replaces Philipp Bargfrede and Zlatko Junuzovic replaces Florian Kainz.
62' -- Good free kick position for Hamburg after Philipp Bargfrede knocks down Albin Ekdal. Aaron Hunt's ensuing free kick skips past the right post.
60' -- A quality pass from Lewis Holtby finds the quality run from Bobby Wood, but the American striker does not beat Jiri Pavlenka with his tight-angle shot.
56' -- Two incredible touches! Christian Mathenia picks out Andre Hahn, who lobs a shot towards goal. Jiri Pavlenka has to tip it over the crossbar for a corner.
53' SUB -- Lewis Holtby replaces Tatsuya Ito. Ito appears to have picked up a minor injury, but is walking under his own power. He received a big applause from the Hamburg crowd as he comes off the field.
46' -- Kickoff! Second half underway in Hamburg
45' -- Halftime!
45' -- Christian Mathenia draws a foul from Ishak Belfodil as he wrestles away a corner from the Bremen striker.
38' -- Gideon Jung fouls Fin Bartels after Bobby Wood gives the ball away. Florian Kainz's ensuing free kick is saved by Christian Mathenia after it beats Hamburg's wall.
32' -- Yellow card for Robert Bauer after his foul on Tatsuya Ito. The 20-year-old Hamburg winger is causing Hamburg's defense lots of problems.
28' -- Another tremendous effort from Gotoku Sakai! He receives a short corner and fires from distance, but his shot swerves wide of the far post.
25' -- Andre Hahn connects with a corner and heads it towards goal, but Jiri Pavlenka does well to stop the shot.
23' -- Gotoku Sakai stings Jiri Pavlenka's hands with a long-range effort but the Bremen keeper is equal to it.
22' -- Quiet in the away end of the Volksparkstadion...
19' -- Great run from Tatsuya Ito! He speeds past Robert Bauer and picks out Bobby Wood, but Wood cannot put his effort on target.
16' -- Not far off! Kyriakos Papadopoulos connects on a free kick from Aaron Hunt, but his header skips just wide.
15' -- Tatsuya Ito is taking advantage of his Bundesliga debut! The Hamburg winger already has a tackle and is very physical in winning the ball.
12' -- Ishak Belfodil heads a ball over the top to Fin Bartels, but Kyriakos Papadopoulos clears the ball out for a corner. Belfodil jumps on the ensuing corner from Florian Kainz, but his header misses the target.
8' -- Christian Mathenia spills a header from Thomas Delaney and Ishak Belfodil snatches the ball away from the Hamburg keeper, but Hamburg are able to clear it for a corner.
4' -- Ishak Belfodil is very involved early in the game, holding up the play against Kyriakos Papadopoulos and heading on a ball over the top to Florian Kainz.
1' -- Kickoff!
- Friday was the 130th Birthday of Hamburger SV. It is the only club that has participated in every single Bundesliga season.
Line-ups for the Nordderby!
90' -- Fulltime!
90+6' Gladbach 2-1 Hannover -- Philipp Tschauner comes forward on a free kick and gets his head to a ball at the top of the penalty area, but the Hannover goalkeeper misses the target.
90+4' GOAL! Gladbach 2-1 Hannover -- Thorgan Hazard sinks the penalty for the winning goal.
90+3' PENALTY! Gladbach 1-1 Hannover -- Salif Sane fouls Vincenzo Grifo in the penalty area and referee Christian Dingert points to the spot.
90' Gladbach 1-1 Hannover -- Raul Bobadilla finds Jannik Vestergaard in the penalty area, but his header flies just over the crossbar.
90' SUB Gladbach 1-1 Hannover -- Florian Hübner replaces Ihlas Bebou.
87' Gladbach 1-1 Hannover -- POST! Martin Harnik was close to scoring the winning goal, but his left-footed shot from just outside the six-yard box hits the post.
90' -- Fulltime! Gladbach-Hannover still finishing up after an 11-minute delay.
90+3' GOAL! Frankfurt 2-1 Stuttgart -- Late winner for Frankfurt! Taleb Tawatha's free kick is cleared poorly by Daniel Ginczek, and Sebastien Haller fires a sideways volley into the back of the net.
90+2' Wolfsburg 1-1 Mainz -- Wolfsburg substitute Paul-Georges Ntep gets sent off after two quick yellow cards.
90' Wolfsburg 1-1 Mainz -- Alexandru Maxim's free kick from the right wing deflects off the wall and falls just right of the near post.
89' Wolfsburg 1-1 Mainz -- VAR denies Mainz a penalty after it determines Alexandru Maxim was fouled by Paul Georges Ntep outside the penalty area.
89' Frankfurt 1-1 Stuttgart -- A free kick from Kevin-Prince Boateng sails over the bar.
84' SUB Wolfsburg 1-1 Mainz -- Victor Osimhen replaces Divock Origi
73' SUB Gladbach 1-1 Hannover -- Niclas Füllkrug replaces Marvin Bakalorz
81' SUB Frankfurt 1-1 Stuttgart -- Ebenezer Ofori replaces Chadrac Akolo
71' GOAL! Gladbach 1-1 Hannover -- Martin Harnik finds the equalizer! He scores his fifth goal of the season by heading in a corner.
80' SUB Augsburg 1-2 Dortmund -- Omer Toprak replaces Shinji Kagawa
80' SUB Wolfsburg 1-1 Mainz -- Riechedly Bazoer replaces Joshua Guilavogui
80' SUB Augsburg 1-2 Dortmund -- Erik Thommy replaces Marcel Heller.
79' MISSED! Augsburg 1-2 Dortmund -- Pierre-Emerick Aubameyang shoots a soft penalty right into the arms of Marwin Hitz.
79' SUB Wolfsburg 1-1 Mainz -- Paul-Georges Nteüp replaces Daniel Didavi
78' Frankfurt 1-1 Stuttgart -- Winning goal denied! Ron-Robert Zieler comes up big as he stops a chance from Mijat Gacinovic and Sebastien Haller in its tracks.
76' PENALTY! Augsburg 1-2 Dortmund -- Marco Fritz points to the spot after VAR confirms a foul from Ja-Cheol Koo on Lukasz Piszczek.
67' GOAL! Gladbach 1-0 Hannover -- Michael Cuisance picks out Matthias Ginter on a free kick and the Gladbach defender taps it home.
75' GOAL! Wolfsburg 1-1 Mainz -- A terrific lobbing header from Yoshinori Muto beats Koen Casteels as Mainz finds and equalizer.
63' Gladbach 0-0 Hannover -- Raul Bobadilla replaces Raffael.
62' Gladbach 0-0 Hannover -- A great chance for Lars Stindl after receiving the ball from Michael Cuisance, but he misses the target with his shot.
60' SUB Gladbach 0-0 Hannover -- Basti Maier replaces Felix Klaus
69' SUB Wolfsburg 1-0 Mainz -- Viktor Fischer replaces Pablo De Blasis
68' SUB Frankfurt 1-1 Stuttgart -- Jetro Willems replaces Ante Rebic.
66' SUB Augsburg 1-2 Dortmund -- Sergio Cordova replaces Michael Gregoritsch.
64' Frankfurt 1-1 Stuttgart -- Simon Falette gets sent off for fouling Simon Terodde and denying the Stuttgart a goal scoring opportunity. VAR denies Stuttgart a penalty as referee Felix Brych marks the foul outside the penalty area. Daniel Ginczek fires the free kick way off target.
63' SUB Augsburg 0-1 Dortmund -- Maximilian Philipp replaces Andriy Yarmolenko.
61' SUB Frankfurt 1-1 Stuttgart -- Slobodan Medojevic replaces Marc Stendera
60' GOAL! Frankfurt 1-1 Stuttgart -- Equalizer for Stuttgart! Simon Terodde gets his first career Bundesliga goal from a corner to level the scoreline.
59' SUB Frankfurt 1-0 Stuttgart -- Double change for Stuttgart. Josip Brekalo replaces Andreas Beck and Simon Terodde replaces Santiago Ascacibar
58' Frankfurt 1-0 Stuttgart -- Almost an equalizer! Chadrac Akolo tries to use his right knee to finish off a cross from Anastasios Donis, but misses the target.
57' SUB Augsburg 1-2 Dortmund -- Gonzalo Castro replaces Mahmoud Dahoud
46' Gladbach 0-0 Hannover -- Kickoff! Second half underway in Mönchengladbach.
55' GOAL! Wolfsburg 1-0 Mainz -- Joshua Guilavogui finds the breakthrough for Wolfsburg! Yunus Malli finds the Guilabogui at the start of the six-yard box and the French midfielder heads it in for his first Bundesliga goal of the season.
55' SUB Frankfurt 1-0 Stuttgart -- Marco Russ replaces Jonathan de Guzman.
53' Augsburg 1-2 Dortmund -- Daniel Baier fires a shot from distance after a corner, but his shot sails over the crossbar.
47' Frankfurt 1-0 Stuttgart -- Frankfurt now playing mostly against the ball as Stuttgart try to push forward for an equalizer.
46' -- Kickoff! Second half underway in Augsburg-Dortmund, Frankfurt-Stuttgart and Wolfsburg-Mainz
45' Gladbach 0-0 Hannover -- Halftime!
39' Gladbach 0-0 Hannover -- Thorgan Hazard fires a strong free kick that Hannover goalkeeper Philipp Tschauner almost mishandles.
45' -- Halftime!
42' GOAL Frankfurt 1-0 Stuttgart -- Big error from Holger Badstuber! The Stuttgart defender seemed to have intercepted a pass from Kevin-Prince Boateng, but instead losses the ball in the penalty area. Ante Rebic jumps on it and finishes for Frankfurt's first goal.
39' Wolfsburg 0-0 Mainz -- Over the crossbar! Marcel Tisserand picks out Jakub Blaszczykowski with a ball over the top. Blaszczkowski leaves the ball for an on-coming Yunus Malli, but the attacking midfielder's shot was too high.
38' SUB Augsburg 1-2 Dortmund -- Ja-Cheol Koo comes on as Rani Khedira leaves with an apparent injury.
37' Augsburg 1-2 Dortmund -- Hitz the hero! Pierre-Emerick Aubameyang corrals a lob over the Augsburg defense, but he loses the one-on-one battle with Marwin Hitz as the Augsburg goalkeeper tackles the ball away.
24' Gladbach 0-0 Hannover -- Almost enough! Matthias Ginter beats Hannover's aerial specialist, Salif Sane, in the air from a corner, but his headed effort falls wide of the far post.
22' Gladbach 0-0 Hannover -- Just wide! Michael Cuisance does well to get into the penalty area, but he can't get his left-footed effort on target.
31' Frankfurt 0-0 Stuttgart -- A sluggish tempo in Commerzbank Arena. Stuttgart are playing very physical and letting Frankfurt control the tempo.
27' Wolfsburg 0-0 Mainz -- Still no shot for hosts Wolfsburg as they diligently counter-press against Mainz's three-man defense.
15' Gladbach 0-0 Hannover -- The two sides have not wasted time getting the game going after the delay! Each team has had two shots each in the first quarter of an hour.
23' GOAL! Augsburg 1-2 Dortmund -- Nobody wanted it! Philipp Max and Martin Hinteregger let the ball roll into the penalty area, where Pierre-Emerick Aubameyang jumped onto the ball. The ball then finds Shinji Kagawa, who floats a shot into the top corner.
16' Wolfsburg 0-0 Mainz -- Danny Latza fires a strong effort just over the crossbar after receiving the ball from Fabian Frei.
2' Gladbach 0-0 Hannover -- A quick chance! Martin Harnik lines up a shot outside the penalty area, but he pulls it wide.
1' Gladbach 0-0 Hannover -- Kickoff! An 11-minute delay after Hannover's bus got stuck in traffic.
11' GOAL! Augsburg 1-1 Dortmund -- A fantastic cross from Philipp Max finds Caiuby at the far post, and the Brazilian forward heads it home. That's just the second goal Dortmund have conceded in the Bundesliga this season.
8' Frankfurt 0-0 Stuttgart -- Daniel Ginczek sildes the ball to Anastasios Donis, but Lukas Hradecky comes off his line to block the chance.
4' GOAL! Augsburg 0-1 Dortmund -- Andriy Yarmolenko, who sat in midweek, puts Dortmund in the lead with a back-heel goal from the six-yard box after a corner. That was Yarmolenko's first goal in the Bundesliga.
3' Augsburg 0-0 Dortmund -- Shinji Kagawa draws the first save of the day from Marwin Hitz. Christian Pulisic's follow-up effort is tackled out of play for a corner by Daniel Opare.
1' Augsburg 0-0 Dortmund -- Augsburg switches back to a four-man defense after Manuel Baum experimented with a three-man defense last week.
1' -- Kickoff! Augsburg-Dortmund, Gladbach-Hannover and Wolfsburg-Mainz are now underway!
Delayed kickoff for Gladbach-Hannover...
Here are the line-ups...
Augsburg vs. Borussia Dortmund
Borussia Mönchengladbach vs. Hannover
Wolfsburg vs. Mainz
Eintracht Frankfurt vs. Stuttgart