David Moyes’s side had two goals correctly ruled out for offside and Aaron Cresswell forced two fine saves out of Jack Butland with free-kicks, before the Potters scored what appeared to be the winner through Peter Crouch 11 minutes from time.

But substitute Carroll equalised with a well-taken strike just four minutes after his introduction to dent the visitors’ survival fight.

There was very little quality on display in the first half, although both teams had chances to break the deadlock.

Ramadan Sobhi drew a comfortable save out of Joe Hart on three minutes with a left-footed shot from 18 yards out after receiving a square pass from Mame Biram Diouf, while at the other end Ryan Shawcross deflected Marko Arnautovic’s angled strike behind at the near post three minutes later.

Hart was called into action again on 12 minutes when Xherdan Shaqiri played in Moritz Bauer on the right, but the Austrian’s low shot was saved at the near post.

Hart had a more routine save to make on the quarter-hour mark from Diouf’s tame header, before Jack Butland parried away Aaron Cresswell’s free-kick from 25 yards out two minutes later.

Arnautovic failed to test Butland on 32 minutes as he scuffed an effort well wide of the left post after good link-up play with Joao Mario, and the action quickly switched to the opposite end with Diouf shooting straight at Hart from inside the D after being played in by a neat pass from Sobhi.

Butland didn’t know much about Arnautovic’s angled shot that struck the Stoke keeper in the face on 36 minutes after Pablo Zabaleta had kept the ball in play on the right, and Arthur Masuaku flashed a long-range effort wide of the right post moments later.

The final action of the half saw Mark Noble test Butland with a low strike from distance in stoppage time, while Arnautovic had the ball in the back of the net 10 minutes into the second stanza when he headed home Cresswell’s cross from the left, but the Austrian forward had strayed just offside.