Manchester United will enjoy tonight's Christmas party a lot more after this.
They were far from outstanding, but that's now four wins on the spin - and when you're not firing on all cylinders, yet still picking up maximum points, you're heading in the right direction.
The fans are happy again, but manager Louis van Gaal wasn't exactly beaming after what has to be described as a laboured victory.
"It was not our best performance," admitted Van Gaal afterwards.
"We were not aggressive enough in the first half, we didn't keep our position on the pitch. I was not pleased at half time - and I told them."
The Dutchman added: "The second half was better, we created more chances but we need to score more goals.
"Then Peter Crouch comes on, you know the long balls are coming and it is always difficult.
"But I'm pleased we held this result. The last few moments were not necessary but it is always like that. We have struggled until the end in the Premier League - it is common."
Juan Mata and Marcos Rojo both claimed the winner as United survived a nerve-jangling finish.
Mata was credited with the decisive strike at Old Trafford after his 59th-minute cross from a free-kick appeared to bounce straight in, although Rojo celebrated as if he had got a faint touch.
There was great drama in injury time as David de Gea produced two brilliant saves to deny Mame Biram Diouf and Marko Arnautovic, before Ashley Young then sensationally cleared off the line from Diouf.
Marouane Fellaini headed the hosts ahead midway through the first half but Steven Nzonzi equalised before the break with a superb strike.
Fellaini was also involved in a moment of controversy in the build-up to the 39th-minute Stoke leveller when he appeared to claim he was kicked in the neck by Oussama Assaidi.
The Belgian, who also spurned a good chance soon after, was still holding his neck at half-time but replays suggested Assaidi had made no contact in that area.
Rooney was still feeling the effects of banging his knee on an advertising hoarding at the weekend and United were also without record signing Angel Di Maria.
That gave youngster James Wilson a chance to play up front alongside Robin van Persie while Ander Herrera also started, but the hosts were subdued in the early stages.
It was not until they were gifted an opportunity after 17 minutes that they came to life, as Stoke goalkeeper Begovic passed to Van Persie.
The Dutchman powered into the box and pulled back to Herrera but the Spaniard was too hasty and shot over.
Herrera quickly made amends for that miss as four minutes later he collected a pass from Mata and lofted a dangerous cross for Fellaini at the back post.
Erik Pieters failed to pick up the Belgian, who timed his leap superbly to head past a helpless Begovic.
United also had a good appeal for a penalty turned down as Wilson appeared to be kicked by Geoff Cameron but referee Jon Moss gave nothing.
It was clear Stoke were not prepared to surrender in the manner Hull did at the same ground on Saturday and they pulled back level before the break.
Bojan ran at the heart of the United defence and was crowded out as he reached the edge of the area. United failed to clear, however, and the ball ran into the path of Nzonzi, who lashed home a fierce shot from just inside the 'D'.
A shot from Van Persie took a deflection and found its way to Fellaini but he scuffed a shot and Begovic saved at the second attempt.
Wilson, the 19-year-old who scored twice on debut last season, almost scored a third for United after a good run from just inside the Stoke half but he clipped his shot just wide.
Wilson made another charge but was crudely hacked down by Ireland, who was booked. Another good break led to a chance for Fellaini but he blasted wide.
Manchester United: De Gea, Valencia, Smalling, Rojo, Young, Carrick, Fellaini, Mata (Januzaj 92), Ander Herrera (Fletcher 86), Van Persie, Wilson (Falcao 78). Subs: Lindegaard, McNair, Blackett, Keane.
Goals: Fellaini (21), Mata (59).
Stoke City: Begovic, Bardsley, Shawcross, Wilson, Pieters, Cameron, N'Zonzi, Bojan, Ireland (Arnautovic 82), Assaidi (Crouch 77), Diouf. Subs: Muniesa, Palacios, Adam, Butland, Shenton.
Goal: N'Zonzi (39).
Man of match: Juan Mata
Match rating: 7/10
Referee: Jon Moss (W Yorkshire).