Frankfurt made the worst possible start at the Red Bull Arena as goalkeeper Lukas Hradecky was dismissed for handling outside his box with the game barely three minutes old. Heinz Lindner could only parry the ensuing free-kick from Marcel Halstenberg onto the boot of Marvin Compper, who made no mistake from close range. Frankfurt had chances through midfielder Ante Rebic, but caved to another set piece in first-half stoppage time when Timo Werner headed home from Naby Keita.

Despite their numerical advantage, Leipzig had to wait until the 67th minute to add to their tally. Lindner saved well from the dynamic Keita, but the loose ball was eventually driven into the back of the net by Halstenberg with the aid of a Jesus Vallejo deflection. The goal completed a dominant night's work for the Bundesliga newcomers, who remain three points behind leaders FC Bayern München after 17 matches.

Man of the match

Deployed in a more advanced role in the absence of suspended midfielder Emil Forsberg, Keita was a constant thorn in the Frankfurt side with his trademark driving runs and stealthy movement without the ball.

Talking point

It will take more than a chastening defeat to Bayern to douse Leipzig's title ambitions. Ralph Hasenhüttl's side were outplayed on Matchday 16, but delivered the perfect response against one of the current Bundesliga campaign's stingiest competitors.

Match stats

Leipzig have won 12 of the 14 Bundesliga matches in which they have taken the lead.

Compper netted his first Bundesliga goal since 5 May 2012. The 31-year-old is Leipzig's oldest Bundesliga goalscorer.

Hradecky's sending off after 131 seconds was the earliest dismissal for a goalkeeper in Bundesliga history.