The price gap narrowed again this week as Sainsbury's stole the top spot from Tesco, having been the second-cheapest for four weeks on the trot. Heavy promotional activity - including half-price Pringles - helped it to achieve £44.15 basket versus Tesco's £44.56 effort.

Asda came in third-cheapest with a basket of £44.68 while Morrisons, which was third-cheapest last week, slipped into fourth-cheapest with a £45.82 basket. Somerfield came in fifth-cheapest at £51.40. Waitrose was the most expensive retailer with a £51.67 basket.

It wasn't just Sainsbury's that was involved in heavy promotional activity. Despite losing its crown of cheapest retailer for the second week in a row, Asda ran a number of promotions, which included slashing the price of 200g packs of Doritos cool original flavour by 50% and reducing its own-label spring onions by 38%.

Not wanting to be outdone, Tesco hacked 50% off the price of 8-packs of Kellogg's Variety packs and 200g tubs of Dairylea spread. It also continued its promotion of 31% off bottles of Hardy's Stamp Shiraz Cabernet Sauvignon.

Somerfield kept up its recent promotional activity with a 50% reduction in the price of 1-litre cartons of Ocean Spray cranberry juice and 35% off the price of 150g packs of Cadbury Milk Chocolate Fingers.

Waitrose had a number of promotions and knocked 25% off the price of a bottle of Jacob's Creek Chardonnay and the same amount off 4-packs of own-label croissants.

However, there were price increases too with the cost of 34-packs of Pampers Baby-Dry Airsoft Maxi up 20% in Somerfield, Sainsbury's and Morrisons.

Waitrose raised the price of the Stella Artois largest-box deal of 20-24 cans by 100% and the price of 4-packs of Cheestrings went up by 30%.

Bread prices have remained stable across all retailers despite warnings at the beginning of the year that bread prices were set to soar after milling giant ADM announced a second flour price hike within four months.