Pierre-Emerick Aubameyang gave the league leaders an early lead however goals from Marcel Sabitzer and Yussuf Poulsen turned the game around inside the first 25 minutes.
Jean-Kévin Augustin extended their lead after the break from the spot, with Sokratis sent off after conceding the penalty. Stefan Ilsanker saw two quick yellow cards to even the numbers up, and Aubameyang pulled a goal back with his own spot kick, but Leipzig held on.
Leipzig pounce after early Aubameyang goal
With both clubs having their eyes on must-win UEFA Champions League games coming up, there were plenty of changes for this one, despite it a big game for both. Dortmund changed seven of the side that beat SC Freiburg, with the injured Lukasz Piszczek amongst those dropping out, whilst Leipzig made four changes, which included a return for Naby Keïta from suspension.
Leipzig’s win over Dortmund in just their second Bundesliga match last season had announced them to the league, however here they got off to a nightmare start. Ilsanker was ponderous on the ball, giving it away to Aubameyang. He charged forward and almost effortlessly he placed the ball past Peter Gulácsi to give the league leaders the early advantage.
The lead didn’t last long. Despite Dortmund dominating possession Augustin had a warning shot saved by Roman Bürki, before a free-kick conceded by Gonzalo Castro proved costly. Kevin Kampl played it to Marcel Halstenberg, who beat Jermey Toljan in the air, and Sabitzer then headed in as he beat Bürki to the ball.
Dortmund were starting to find it harder to break Leipzig down, although Aubameyang had another chance kept out by Gulácsi after he was excellently picked out by Andriy Yarmolenko, and Nuri Sahin had a shot wide too.
Leipzig reaped the reward of the defensive efforts, with superb work from Bruma to create Leipzig’s second goal. He made light work of beating Toljan not once but twice, but still had to play out from the by-line, eventually passing through the legs of Bürki to find Poulsen, who finished with aplomb despite having his shirt pulled by Sokratis. Having conceded just two in the league all season before this game, Dortmund saw that tally doubled in just 25 minutes.
Dortmund posed little threat after going behind but there was one sequence of play that could have yielded them an equaliser. Castro looked to find Aubameyang however Gulácsi got there first. Yarmolenko then found Maximilian Philipp, but his shot was by Gulácsi, with the ball then unintentionally hitting the hand of Ilsanker.
Sokratis and Ilsanker off but Leipzig hold on to lead
Peter Bosz decided to switch to three at the back at half-time as Dortmund looked to get back into the game, yet his plans fell to smithereens minutes after the restart. Augustin rushed into the box and was nudged down by Sokratis. Deniz Aytekin pointed to the spot and, presumably feeling Sokratis was the last man, showed the Greek defender a harsh red card. Augustin stepped up and sent Bürki the wrong way.
Dortmund were on course to lose their first league game of the season, and their first home league match since a defeat to Bayern Munich in April 2015. The pendulum swung back in their favour slightly after a crazy few minutes for Ilsanker though. Just two minutes after going in the book for fouling Mario Götze, he brought down Aubameyang in the centre circle and just like that it was ten-against-ten.
VAR had already been back in the spotlight again this weekend, and it would come into play again here just after the hour. Aubameyang went down after an apparent challenge on the edge of the box form Dayot Upamecano. Aytekin ended up taking a look at the pictures himself, seeing that the contact was in fact in the box. Eventually given a penalty, Aubameyang would take, and manged to get it past Gulácsi to give his side a chance of salvaging a result.
There were chances for Dortmund to snatch a point, with the biggest coming in stoppage time. Aubameyang was through on goal but had his shot saved, with Yarmolenko firing over from the rebound.
But their failure to equalise meant a 41-game unbeaten run in the league, stretching all the way to the end of Jürgen Klopp’s tenure with the club, was at an end. They remain top, but just two points clear now of Bayern, and three of Leipzig in third. Could a win over Dortmund prove again to be a catalyst for Leipzig's season?