Hertha Berlin 0 – 2 Mainz
(Quaison 40′, 65′)
Mainz continue to pull away from the drop zone, with a Robin Quaison brace helping them to a win. Quaison beat Rune Jarstein with a shot from distance, which found its way in at the near post. He nutmegged Jarstein for his second, timing his run well to come out best against the offside trap. Mainz win their first in three and open up six points between them and Hamburg.
Hamburg 1 – 2 Bayer Leverkusen
(Hahn 70′ – Bailey 40′, Havertz 50′)
Hamburg came to life late but Leverkusen held on to win. Leon Bailey scored the first after winning the ball from Douglas Santos, who had made a horrible error in holding onto the ball too long in his own box. Kai Havertz scored the second five minutes after the restart, slotting away Benjamin Henrichs’s cut-back to double Leverkusen’s lead. Andre Hahn scored a late goal and Bobby Wood missed a chance late on to equalise.
Cologne 1 – 1 Hannover
(Osako 29′ – Fullkrug 37′)
Cologne were denied all three points as Claudio Pizarro’s 94th minute goal was ruled out by VAR. The Billy Goats had initially went in front when Jonas Hector’s delivery found Yuya Osako who smashed his shot past Philipp Tschauner for the opener. Niklas Fullkrug scored a deserved equaliser for Hannover, finishing off a well-crafted move. Simon Terodde was stretchered off after Salif Sane unintentionally caught him in the face.
Wolfsburg 1 – 2 Bayern Munich
(Didavi 8′ – Wagner 64′, Lewandowski pen 90’+2)
Bayern managed to win at the death, with Lewandowski coming off the bench to score the winner. Wolfsburg went ahead early, perhaps too early, through Daniel Didavi, who met Yunus Malli’s cross and headed home. Franck Ribery stayed on the pitch, despite VAR reviewing an elbow he committed. Wolfsburg continued to hold firm until Bayern were awarded a somewhat dubious penalty, which Koen Casteels parried away. Robben made up for his miss by assisting Sandro Wagner’s header to level with Wolfsburg. Robben, involved again, won the penalty for the second goal and Lewandowski put it away for a Bayern win.
Freiburg 1 – 0 Werder Bremen
(Petersen pen 24′)
Freiburg went 50% on penalties against Bremen but managed to weather the storm and pick up all three points at home. Aron Johannsson gave away the penalty for the first, which former Bremen man Nils Petersen tucked away. Bremen tried to get back on level terms but the final ball was lacking from the northern giants. Petersen won the second penalty, but Janik Haberer took (and missed) it instead of Petersen.
Schalke 2 – 1 Hoffenheim
(Kehrer 11′, Embolo 28′ – Kramaric 78′)
Schalke saw off an ultimately poor Hoffenheim with two first half goals. Thilo Kehrer had headed in the first before Schalke thought they had a second goal through Breel Embolo, only to be ruled out for offside by VAR. Alas, Embolo was not to be stopped, as he scored minutes later, capitalising on an error from Kevin Vogt. Andrej Kramaric gave Hoffenheim hope that they could salvage one point, but Schalke came away with all three points.
Augsburg 0 – 1 Stuttgart
Stuttgart won back-to-back for the first time this season after Mario Gomez scored the lone goal to win it for them. Gomez latched on to a free-kick which hit the wall and finished into the corner for his third goal of the season. Augsburg had a goal ruled out by VAR, and never managed to put the ball in the back of the net for the elusive equaliser.
Borussia Mönchengladbach 0 – 1 Borussia Dortmund
Marco Reus scored a goal off the underside of the bar as Dortmund held on during an onslaught to win away and go second in the table. Roman Burki had one of his better performances in a Dortmund shirt this year, keeping Gladbach out, which slides them down to tenth in the table.
Eintracht Frankfurt 2 – 1 RB Leipzig
(Chandler 22’, Boateng 26’ – Augustin 13’)
The first half action was overshadowed by a tennis-ball themed protest at half-time. Timmy Chandler scored off of a poorly defended set-piece after Augustin had opened the scoring for Leipzig. Kevin-Prince Boateng side-footed a well-placed Ante Rebic cross found his path.