The single, "Too Much", had emerged as the favourite last week but it was a tight race against the Teletubbies before the band managed to nudge Say Eh-Oh! from the top.
The tribute single to Diana, Princess of Wales, by the Chicken Shed Theatre Company, only managed 15th position according to the Chart Information Network.
This is the second Christmas number one for the Spice Girls, who recently sacked their manager, Simon Fuller, amid rumours that they were getting too big for their platforms. Last year they reached the top slot with "2 Become 1".
A flurry of bets on the girls were placed with William Hill and Ladbrokes just before they closed their books.
Final William Hill odds were the Spice Girls at 4/7 favourites and the Teletubbies at 5/4, while Ladbrokes quoted 2/5 Spice Girls and 2/1 Teletubbies.
A spokesman for William Hill said the Spice Girl's number one would cost them around pounds 100,000 but they have set the band at 10-1 favourites for next year's Christmas chart.
"The band are 10-1 favourites for next year. We think their bubble will have burst by then," he said.
"It was a straight fight and one or the other was going to win, unfortunately it's cost us about pounds 100,000," he added.
The BBC's "Perfect Day" reached number three, All Saints "Never Ever" number four and Janet Jackson climbed one place to number five.Reuse content