Teemu Pukki's remarkable run of goal-scoring form made the Finn the hero again as Norwich City won 1-0 at QPR – to win three games in succession for the first time under head coach Daniel Farke.

Pukki was once again the hero for the Canaries, scoring in his third successive game to stretch the winning streak of Farke's team to three games and unbeaten in five in all competitions.

The Finland international took his tally for the season to six for City, chesting home a deflected Marco Stiepermann cross from close range to deservedly break the hosts' resistance.

Farke went with an unchanged starting XI following the 2-1 midweek win at Reading, keeping faith with youngster Todd Cantwell.

The in-form hosts made three changes in an attacking line-up though, starting both loan forwards Nahki Wells and Tomer Hemed, as well as highly-rated attacker Ebere Eze.

The Canaries totally dominated the first half but couldn't make the breakthrough, with Stiepermann twice seeing low shots comfortably saved after some slick attacking play.

City's big chance came in the 22nd minute when Max Aarons burst out of defence, Stiepermann switched the ball to Cantwell on the left, who played Jamal Lewis down the wing only for the left-back's low cross to have too much on it for Teemu Pukki to reach the ball on the slide at the back post.

The hosts did improve as half-time closed, with manager Steve McClaren rallying his troops during a short break as Norwich defender Timm Klose received treatment after hurting his nose in an aerial challenge with Hemed.

Klose and Christoph Zimmermann both went to challenge Wells in the 39th minute and the on-loan Burnley striker wriggled free, only to fire weakly at Tim Krul from the edge of the box.

There were a couple of nervy moments for Krul before half-time as well, just claiming a whipped free-kick from Luke Freeman ahead of the sliding Hemed in the 42nd minute, before a similar situation two minutes later as Massimo Luongo whipped in a quick free-kick from the right which Krul couldn't claim under pressure for Hemed, only for Wells to foul Aarons and let City off the hook.

There were a few boos for the Rs as the half finished goalless, despite being unbeaten in five games.

Cantwell had a fine chance to score his first Canaries goal in the 52nd minute after fine work on the right from Emi Buendia set Pukki away down the wing, pulling a low cross to Cantwell on the edge of the box but the academy product firing high over the bar.

Luke Freeman's shot looped up off Aarons on the hour but Krul claimed the ball on his line and soon after Rs keeper Lumley had to charge out of his box to stop Cantwell going clean through on goal from a wonderful Moritz Leitner pass.

It was that man Pukki yet again for City in the 71st minute though, adjusting well to chest home a cross from the left from Stiepermann which deflected off Alex Baptiste – scoring for the fifth consecutive game for club and country.

It was the goal the visitors deserved but Krul was needed eight minutes later, tipping over a rising shot from 25 yards from Freeman.

The Rs threw the ball forward at every opportunity but, other than a dropped catch from Krul which caused a scare, the visitors weathered the storm and could even have doubled their lead Stiepermann not pulled a cross behind Mario Vrancic and Pukki in the box.

As well as extending their own unbeaten run, the victory brought an end to QPR's resurgence, with substitute Jordan Rhodes also missing a fine injury-time chance after being freed by Cantwell.

The Canaries are back in action on Tuesday night when they travel to League One side Wycombe Wanderers in the Carabao Cup third round, ahead of a home Championship clash with Wigan on Saturday.

Norwich: Krul; Aarons, Zimmermann, Klose, Lewis; Tettey (C), Leitner (Trybull 90); Buendia (Vrancic 68), Stiepermann, Cantwell; Pukki (Rhodes 90+2). Unused subs: McGovern (GK), Godfrey, Thompson, Srbeny

Booked: Aarons (foul on Freeman, 60), Lewis (foul on Wells, 67)

Goals: Pukki (71)

QPR: Lumley; Lynch, Leistner (C – Smith 87), Baptiste (Cousins 77), Bidwell; Eze, Scowen (Osayi-Samuel 77), Luongo, Freeman; Hemed, Wells. Unused subs: Ingram (GK), Cameron, Wszolek, Kakay

Booked: None

Goals: None

Referee: Darren Bond (Lancs)

Attendance: 12,843 (1,526 away)

• Follow all the post-match reaction and analysis in our Matchday Live blog at pinkun.com/live