RB Leipzig 1-0 Bayer Leverkusen
RB Leipzig consolidated second position in the Bundesliga standings after edging Bayer Leverkusen 1-0 at Red Bull Arena.
Following a goalless first stanza, Christopher Nkunku finally broke the ice for Leipzig six minutes from the break and that proved to be the winner.
As a result, Julian Nagelsmann's charges reduced the deficit to seven points behind leaders Bayern Munich, while Leverkusen dropped to fourth.
Union Berlin 1-1 Borussia Monchengladbach
Borussia Monchengladbach were denied a third consecutive victory after they were held to a 1-1 draw by Union Berlin at Stadion An der Alten Forsterei.
Robin Knoche broke the deadlock for Union on the half-hour mark but Alassane Plea rescued a point for Gladbach with the equaliser on the hour-mark.
Eintracht Frankfurt 3-1 Hertha Berlin
Eintracht Frankfurt jumped up to third on the log after thrashing Hertha Berlin 3-1 courtesy of a brace at Deutsche Bank Park.
Andre Silva broke the deadlock for Eintracht in the 67th minute but a minute later Krzysztof Piatek levelled matters for Hertha.
However, Martin Hinteregger restored the lead for the hosts in the last six minutes before Silva sealed the three points in stoppage time from the penalty spot.
Werder Bremen 1-1 Schalke
Bottom side Schalke halted a three-game losing run after playing to a 1-1 draw with Werder Bremen at Weserstadion.
Omar Mascarell broke the deadlock for Schalke seven minutes before the break but Kevin Mohwald got the equaliser for Werder 13 minutes before time.
Maximilian Eggestein thought he had snatched the winner for the hosts in stoppage time after finding the back of the net but his goal was disallowed for offside by the Video Assistant Referee (VAR).