By clicking a retailer link you consent to third party cookies that track your onward journey. If you make a purchase, Which? will receive an affiliate commission which supports our mission to be the UK's consumer champion.

Cheapest supermarkets 2024

Discover the UK's cheapest and most expensive supermarkets, based on Which? analysis of thousands of grocery prices
Ellie SimmondsSenior researcher & writer
Hannah WalshSenior researcher & writer

Which is the UK's cheapest supermarket in 2024?

Every month, we compare thousands of prices at eight of the UK's biggest supermarkets – Aldi, Asda, Lidl, Morrisons, Ocado, Sainsbury’s, Tesco and Waitrose – to reveal the cheapest supermarket to buy your food, drink and household essentials from.

Unsurprisingly, Aldi and Lidl tend to offer the lowest prices - but which of the rival discounters is cheaper, and how do other supermarkets like Asda and Morrisons compare?

You can see our latest results below.

Be more money savvy

free newsletter

Get a firmer grip on your finances with the expert tips in our Money newsletter – it's free weekly.

This newsletter delivers free money-related content, along with other information about Which? Group products and services. Unsubscribe whenever you want. Your data will be processed in accordance with our Privacy policy

February 2024

Aldi was the cheapest supermarket in February, with a list of 72 popular groceries costing £125.43 on average. Lidl came in a close second, at less than £3 more expensive (£128.19). 

Waitrose was the most expensive for the same list of groceries, at £162.94 - that's 30% more than Aldi. 

SupermarketAverage price for 72 items
Aldi£125.43
Lidl£128.19
Asda£140.51
Tesco£143.51
Sainsbury's£147.78
Morrisons£151.73
Ocado£153.47

Which is the cheapest supermarket for a larger list of groceries?

We also compared a larger selection of groceries - the original 72 plus 113 more - to reveal the cheapest supermarket based on a larger sample size including more branded products. 

We were unable to include Aldi and Lidl in this comparison as they tend to stock a smaller range of branded items.

Asda was the cheapest supermarket for our mega shopping list (£460.34), followed by Morrisons

Waitrose was the most expensive (£522.70) for our expanded list too, costing a huge £62.36 more than Asda. 

SupermarketAverage price for 185 items
Asda£460.34
Morrisons£488.46
Ocado£497.51
Tesco£498.10
Sainsbury's£509.16
Waitrose£522.70

January 2024

Aldi was the cheapest supermarket in January, with our shopping list of 72 items costing £129.24.

Waitrose was the most expensive for the same list of groceries, at £170.44 – that's 32% pricier than Aldi. 

SupermarketAverage price for 72 items
Aldi£129.24
Lidl£132.37
Asda£145.75
Tesco£149.11
Sainsbury's£153.50
Morrisons£156.05
Ocado£157.15

Where was cheapest for a larger selection of items?

We also compared a larger selection of groceries - the original 72 plus 116 more - to reveal the cheapest supermarket based on a larger sample size including more branded products. We were unable to include Aldi and Lidl in this comparison as they don't stock the full range of items we were looking at.

SupermarketAverage price for 188 items
Asda£475.06
Morrisons£496.68
Ocado£504.82
Tesco£506.12
Sainsbury's£516.82
Waitrose£519.43

Cheapest supermarket of 2023

We checked the price of a basket of groceries at the UK's biggest supermarkets every day throughout 2023, and announced the results each month.

Aldi was the cheapest supermarket for 11 months of the year, officially making it the cheapest supermarket of 2023 according to our analysis.

Lidl was the second-cheapest supermarket for the same 11 months, but narrowly beat Aldi to the top spot in October. 

Waitrose was the most expensive supermarket for our basket in every month of 2023.

Asda cheapest for larger trolleys

In our analysis of a bigger trolley of goods, in which we don't include Aldi or Lidl due to their smaller product ranges, Asda was the cheapest supermarket every month but one. 

Morrisons scooped the winning spot in July.

Waitrose was the most expensive for a big trolley-full every month except September, when Sainsbury's was priciest for the first time (for shoppers not using a Nectar card).

Our analysis includes discounts that are available to everyone, but not multibuys or loyalty prices such as Clubcard or Nectar prices, where you only get the discount if you're a member of a loyalty scheme. This is because not everyone is able to join a loyalty scheme. You can read more about our research further down the page or by clicking here.

The results for each month of 2023 are below.

December 2023

Aldi was the cheapest supermarket in December overall, with our list of 43 groceries coming in at £74.83 on average. 

Lidl was less than £2 more expensive at £76.74. 

Waitrose was nearly £20 pricier than Aldi, with the same basket of groceries coming in at £94.94. 

SupermarketAverage basket price 
Aldi£74.83
Lidl£76.74
Asda£84.21
Sainsbury's£84.54
Tesco£84.86
Morrisons£87.24
Ocado£89.28

We also compared the cost of a larger list of 131 items (the original 43, plus 88 more).

Asda was the cheapest for our trolley of groceries, at £326.77 on average. 

Waitrose was £41.02 pricier than Asda, with our big shop costing £367.79 at the high-end supermarket.

November 2023

Aldi was the cheapest supermarket in November, knocking Lidl off the top spot – our basket of 47 items cost £76.77.

Waitrose was the most expensive for the same basket of groceries, at £97.39 – 27% pricier than Aldi. 

SupermarketAverage basket price
Aldi£76.77
Lidl£77.56
Asda£84.42
Tesco£87.42
Sainsbury's£87.79
Morrisons£89.54
Ocado£93.40

For our larger analysis, including a mix of 134 branded and own-brand items, Asda was the cheapest once again this month (£328.15), followed by Morrisons which was £10.01 more expensive.

At the other end of the table was high-end Waitrose, at £369.80 for the same list of groceries. Sainsbury's was the next priciest, at £360.26 for those without a loyalty card – almost £10 cheaper than high-end Waitrose. 

SupermarketAverage trolley price
Asda£328.15
Morrisons£338.16
Tesco£354.53
Ocado£356.78
Sainsbury's£360.26
Waitrose£369.80

October 2023

Lidl was the cheapest supermarket in October, with our shop costing £74.58, beating discounter rival Aldi by just 17p.

The same basket of 44 items at Waitrose would have set you back an average of £91.15 – that's 22% pricier on average than Lidl.

When it came to the 'big four' supermarkets, Asda was the cheapest for our basket, at £82.11.

SupermarketAverage basket price
Lidl£74.58
Aldi£74.75
Asda£82.11
Tesco£85.34
Sainsbury's£85.88
Morrisons£86.35
Ocado£90.37

We also compared the cost of a larger trolley of 135 items (the original 44 plus 91 more). 

Asda was the cheapest for our trolley of groceries, continuing its reign as the cheapest big supermarket and beating beating second-placed Morrisons by £10.98. 

Our analysis also showed that Waitrose was the most expensive supermarket for a big shop this month. It was £49.66 pricier than Asda on average, with a trolley-full costing £378.08.

SupermarketAverage trolley price
Asda£328.42
Morrisons£339.40
Ocado£354.54
Tesco£358.08
Sainsbury's£364.61
Waitrose£378.08

September 2023

Aldi was the cheapest supermarket in September, with our shop costing £67.72, beating discounter rival Lidl by £1.24.

SupermarketAverage basket price
Aldi£67.72
Lidl£68.96
Asda£75.42
Tesco£78.74
Sainsbury's£78.95
Morrisons£79.70
Ocado£82.80

We also compared the cost of a larger trolley of 131 items (the original 39 plus 92 more). 

Asda was cheapest, while – for shoppers not using a Nectar card – Sainsbury's was the most expensive for the first time. It was £33.52 pricier than Asda on average, with a trolley-full costing £359.23.

SupermarketAverage trolley price
Asda£325.71
Morrisons£332.22
Ocado£349.79
Tesco£350.41
Waitrose£355.51
Sainsbury's£359.23

August 2023

Aldi was the cheapest supermarket in August overall, with our shop costing £65.21, pipping its discounter rival Lidl to the post by £1.32.

When it came to the 'big four' supermarkets, our comparison revealed that Asda was the cheapest for our basket, at £71.48.

SupermarketAverage basket price
Aldi£65.21
Lidl£66.53
Asda£71.48
Tesco£74.00
Sainsbury's£74.12
Morrisons£75.37
Ocado£79.38

We also compared the cost of a larger trolley of 133 items (the original 37, as well as 96 more). 

Asda was the cheapest for our trolley of groceries, returning to its reign as the cheapest big supermarket after being pipped to the post by Morrisons in July – the first time another supermarket earned the title since January 2020.

Supermarket
Average trolley price
Asda£325.35
Morrisons£341.28
Tesco£352.86
Ocado£353.81
Sainsbury's£359.41
Waitrose £369.04

July 2023

 Aldi was crowned the cheapest supermarket for the 14th consecutive month, with our basket of 38 groceries costing £71.22 on average. 

SupermarketAverage basket price
Aldi£71.22
Lidl£72.60
Asda£78.65
Tesco£79.59
Sainsbury's£81.06
Morrisons£82.00
Ocado£86.26

Morrisons ended Asda’s as the cheapest traditional supermarket for a larger trolley of products. Our big shop at Morrisons cost £341.92 on average.

SupermarketAverage trolley price
Morrisons£341.92 
Asda£342.14 
Tesco£360.97
Ocado£367.96
Sainsbury's£370.54
Waitrose£376.66

June 2023

Aldi was the cheapest supermarket for the 13th month in a row, with a basket of 42 items costing £75.25 on average.

SupermarketAverage basket price
Aldi£75.25
Lidl£77.18
Asda£82.55
Tesco£82.67
Sainsbury's£83.46
Morrisons£85.98
Ocado£89.20

For our larger trolley of 134 grocery items, Asda continued its long-running streak as the cheapest traditional supermarket – a title it's held since January 2020. 

SupermarketAverage trolley price
Asda£332.40
Morrisons£334.47
Sainsbury's£341.40
Tesco£349.35
Ocado£354.90
Waitrose£363.99

May 2023

Aldi was the cheapest supermarket for the 12th month in a row, with our basket of 40 products costing £68.60 on average. 

SupermarketAverage basket price
Aldi£68.60
Lidl£70.51
Asda£76.45
Sainsbury's£77.13
Tesco£77.56
Morrisons£79.09
Ocado£83.90

For a larger trolley of 131 grocery items, Asda continued its long-running streak as the cheapest traditional supermarket.

SupermarketAverage trolley price
Asda£332.40
Morrisons£334.47
Sainsbury's£341.40
Tesco£349.35
Ocado£354.90
Waitrose£363.99

April 2023

Aldi was the cheapest supermarket in April, with a basket of 39 items costing £69.99 on average. It beat rival discounter Lidl by 65p.

SupermarketAverage basket price
Aldi£69.99
Lidl£70.64
Sainsbury's£76.85
Asda£77.92
Tesco£78.09
Morrisons£81.46
Ocado£83.69

For a larger trolley of 135 grocery items, Asda continued its long-running streak as the cheapest traditional supermarket:

SupermarketAverage trolley price
Asda£343.46
Sainsbury's£353.96
Morrisons£355.84
Tesco£365.77
Ocado£374.53
Waitrose£382.22

March 2023

Aldi was the cheapest overall, with a basket of 41 items costing £72.54: 

SupermarketAverage basket price
Aldi72.54
Lidl72.79
Sainsbury's80.27
Tesco81.58
Asda81.88
Morrisons83.63
Ocado88.03

Asda was cheapest for a big trolley of 137 items:

SupermarketAverage trolley price
Asda£343.91
Sainsbury's£353.16
Morrisons£354.87
Tesco£366.65
Ocado£371.85
Waitrose£385.74

February 2023

Aldi was cheapest for a basket of 43 items:

Supermarket
Average basket price
Aldi£74.81
Lidl£77.50
Sainsbury's£85.25
Tesco£85.32
Asda£85.81
Morrisons£89.01
Ocado£89.96

Asda was cheapest for a trolley of 139 items:

Supermarket
Average trolley price
Asda£355.29
Sainsbury's£358.77
Morrisons£371.86
Tesco£376.95
Ocado
£382.54
Waitrose
£396.58

January 2023

Aldi was the cheapest supermarket for a basket of 45 groceries:

SupermarketAverage basket price
Aldi£82.03
Lidl£84.07
Tesco£93.80
Asda£95.32
Sainsbury's£95.65
Morrisons£96.58
Ocado£100.87

For a big trolley of 144 items, Asda was cheapest:

SupermarketAverage trolley price
Asda£363.29
Sainsbury's£375.84
Tesco£376.72
Morrisons£379.13
Ocado£392.43
Waitrose£408.72

 How we work out which is the cheapest supermarket

We track the prices of up to 200 branded and own-label products every day over the course of a month to work out the average cost per item. We then add up those averages to get a total for each retailer. We include special offers, but not multibuys or loyalty discounts. 

Products on our list include everything from Heinz baked beans and Mr Kipling cakes to own-label milk, bread and cheese.

Our data is supplied by an independent price comparison company. For stores that don't have online prices we send fieldworkers out to stores to gather prices.

The master list of 200 products is currently updated annually but otherwise remains constant. However, the specific products chosen from the master list vary from month to month depending on availability. This means the totals aren't comparable between months or years.

Which supermarket was cheapest in 2022?

According to our analysis, Aldi was the cheapest supermarket in 2022.

The discounter was the cheapest in our analysis for seven out of 12 months in 2022, which was more than any other supermarket.

Lidl wasn't far behind, coming out cheapest in the first five months of the year. 

Across the seven months that Aldi was the 'cheapest supermarket of the month', the average difference was £1.59 compared with Lidl.

Asda was the cheapest of the non-discounters, coming out on top every month across 2022.  

Which supermarket was cheapest in 2021?

According to our research, Aldi was the cheapest supermarket in 2021. 

It won the 'cheapest supermarket of the month' title six times that year – more than any other supermarket. Lidl came top for five months and, for one month, the two discounters were tied.

At the other end of the scale, Waitrose was most expensive each month.

Which supermarket was cheapest in 2020?

Lidl was the cheapest supermarket in 2020. The discounter was just 34p cheaper than its nearest rival Aldi for our trolley of 45 branded and own-label groceries. 

It was £26.02 cheaper than the most expensive supermarket, Waitrose.

Cheapest supermarkets 2014-2019

Prior to 2020 we were unable to include Aldi and Lidl in our analysis, and only looked at Asda, Morrisons, Ocado, Sainsbury's, Tesco and Waitrose. The overall cheapest supermarkets for each year between 2014 and 2019 were:

  • 2019: Sainsbury's
  • 2018: Morrisons
  • 2017: Morrisons
  • 2016: Asda
  • 2015: Asda
  • 2014: Asda