Second-placed Borussia had won six of their eight games, while the 17th-placed Billy Goats were winless and had picked up two of their three points in their past two away matches in Stuttgart and Bremen (both 1-1 draws).
In addition to Reinier (quarantine), Schmelzer (rehab) and Zagadou (match fitness), Guerreiro missed out with a muscle injury. He was replaced by Passlack. Witsel, Can, Reus and Brandt were reintroduced to the side in place of Bellingham, Delaney, Reyna and Hazard, who all dropped to the bench.
The fact that the most advanced position for the visitors was occupied by a midfielder (Duda) said a lot about their approach. Cologne, who lined up in a 3-6-1 formation, closed spaces down smartly and intelligently. When they lost possession, Jakobs (left) and Wolf (right) expanded the defence into a back five. Borussia, meanwhile, went for a 4-2-3-1 system and adopted a patient approach.
The match & analysis:
The Cologne half was subjected to relentless pressure. The first big chance came in the fourth minute when Reus teed up Sancho, whose shot kissed the bar. But the next notable sighting of the visiting goal came a full 22 minutes later, when Haaland fired narrowly wide under pressure from an opponent. Cologne had been leading for some time by that point, having gone ahead in the ninth minute when Wolf flicked on their first corner and Skhiri slotted home.
Hummels’ header from Brandt’s free-kick was correctly disallowed for offside in the 30th minute. Dortmund lacked tempo. And the pass completion rate of 90% perhaps did not tell the full story, with the passes in dangerous areas all too rarely reaching their destination. Despite Dortmund’s dominance (70% possession), Cologne gave away only four shots.
There were no personnel changes at the interval. Reus’ 49th-minute free-kick from 25 metres bounced dangerously in front of Horn, who made the save, while Can’s shot from 16 metres was turned behind for a corner two minutes later. But Borussia could not apply sustained pressure and actually played themselves into trouble with their build-up play, forcing Can to clear for a corner at one stage. Meunier then had to depart with an injury, meaning BVB were a man down for Cologne’s second corner. Duda delivered the ball and although Bürki got a touch on it, Skhiri was free at the back post to tap into the net and make it 2-0 (60).
Hazard came on in place of Meunier, with Passlack briefly switching sides. Then he and Brandt came off to be replaced by Reyna and Moukoko, leaving BVB in a 3-5-2 formation with five attacking players. Having received Haaland’s pass, Moukoko freed himself from two opponents but shot narrowly wide (70). But Borussia’s offensive pressing finally brought about a reward only four minutes later. Reyna fed Hazard in the box, who steered it home (74).
The final action took place almost exclusively in the Cologne half, with Horn making a spectacular save to deny Hummels a leveller in the 87th minute. Haaland then missed a golden chance to restore parity from close range in the fifth minute of stoppage time.