Norwich City’s promotion celebrations may have been put on hold by a 2-2 draw at Stoke this afternoon – but a second successive defeat for Leeds has left the league leading Canaries just one point from the Premier League.

The leaders went into the break 1-0 ahead thanks to an Onel Hernandez strike and with Sheffield United already 3-0 up at Hull, hopes of promotion were already doubtful.

Stoke then hit back through an Ashley Williams header early in the second half but Teemu Pukki put City back in front, only for Tom Edwards to thump Stoke level with 20 minutes remaining.

With Sheffield United holding on to their 3-0 lead the Blades are now just three points behind in second place, but Leeds slipped to a shock 2-0 loss at Brentford to hand the top two a huge boost.

The Whites remain six points behind Norwich and now need a goal difference swing of 10 goals to prevent City going up, which means a point from Saturday night’s home clash with Blackburn will seal promotion for the Canaries, with a game at play-off bound Aston Villa on the final day to follow.

Sheffield United host relegated Ipswich at 5.15pm on Saturday, before going to Stoke on the final day, while Leeds host in-form Villa on Sunday and then finish at Ipswich.

City made just one change to their starting XI for the game in the Potteries, with star creative force Emi Buendia coming straight back in after completing his three-game suspension, in place of Moritz Leitner.

The Potters made three changes, with goalkeeper Jack Butland and centre-back Ryan Shawcross returning, and Thibaud Verlinden replacing former Norwich loanee Sam Vokes.

Hernandez had fired just wide in the third minute and it was the visitors who enjoyed the better of the first half, with Marco Stiepermann firing over three minutes later.

Jamal Lewis didn’t do enough to prevent a Tom Edwards cross coming over in the 11th minute but Sam Clucas headed wide wastefully.

Teemu Pukki’s first sniff of goal came when a Buendia free-kick was headed down by Stoke defender Ashley Williams in the 19th minute, falling into the Finn’s path kindly but City’s top scorer wasn’t able to force a header past Butland from close range.

The opening goal came courtesy of Lewis beating Joe Allen for pace easily on the left and his low cross being cleared by Edwards but only as far as Hernandez on the left side of the box, with the Cuban winger blasting his eighth goal of the season past Butland, squeezing the ball into the bottom-left corner from 15 yards.

The combative Peter Etebo blasted a pot shot just wide for the hosts from 25 yards in the 32nd minute and Aarons needed to make a fine tackle back on James McClean a few minutes later after Buendia had conceded possession cheaply.

The scorers weren’t troubled again before the break but they were within two minutes of the restart, after Lewis sloppily lost possession trying to run the ball out from defence and Aarons had to block a Benik Afobe cross behind for a corner with his back.

Thibaud Verlinden swung the corner over from the left and Wales international Ashley Williams was there to head home unchallenged from six yards, despite a desperate Krul swipe.

The Potters had woken up and Krul was kept busy, punching away a McClean corner and then holding a long-range Etebo effort, as well as a looping header from McClean.

City boss Daniel Farke responded and put Friday’s free-kick hero Mario Vrancic on in the 55th minute, replacing Tom Trybull.

Sam Clucas wasted a golden chance to claim the lead for the hosts in the 64th minute, after Canaries skipper Christoph Zimmermann had made an important block of an Etebo charge, the ball breaking kindly but the midfielder lashed over wastefully.

It looked like it had proved costly as within two minutes Vrancic clipped a lovely ball into the box that Pukki nodded past Butland on the run, to send almost 3,000 away fans crazy behind the same goal.

It was a 28th league goal of the season for the Championship’s top scorer – but the celebrations proved short-lived though, with Stoke equalising just three minutes later.

It was a nightmare moment for Hernandez, slipping as City cleared their lines and seeing Edwards seize on the loose ball and rifle a fine low effort beyond Krul into the bottom-left corner.

Both teams started to tire but Farke tried to mix things again in the 84th minute, taking off Hernandez and putting on Moritz Leitner.

There was nearly a huge moment in the 85th minute when Lewis went close to his first goal of the season after being played into the box by Vrancic, but the left-back’s low shot was just beyond the far post.

Kenny McLean fired wide after a poor Butland clearance, with an open goal to aim at, and Godfrey couldn’t quite force a Leitner corner over the line in injury-time, as a late surge never quite materialised.

It meant a fourth consecutive draw and extending an unbeaten run to 12 matches but left plenty of nerves for supporters at full-time with two games left to play – before Leeds slipped up at Brentford, with former Norwich winger Sergi Canos scoring one and setting up the other.

NORWICH: Krul; Aarns, Zimmermann (C), Godfrey, Lewis; Trybull (Vrancic 55), McLean; Buendia, Stiepermann, Hernandez (Leitner 84); Pukki. Unused subs: McGovern (GK), Klose, Hanley, Cantwell, Rhodes

Booked: None

Goals: Hernandez (24), Pukki (66)

STOKE: Butland; Edwards (Collins 81), Batth, Shawcross (C), Williams, McClean; Etebo, Allen, Clucas, Verlinden (Ince 67); Afobe. Unused subs: Federici (GK), Adam, Diouf, Vokes, Bojan

Booked: None

Goals: Williams (47), Edwards (69)

REFEREE: Tony Harrington (Cleveland)

ATTENDANCE: 25,487 (2,896 away)

• You can follow all the action, analysis and reaction from the Bet365 Stadium in our Matchday Live blog at pinkun.com/live

• Don’t forget to download the Pink Un app for exclusive insight and analysis from our Canaries correspondents