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

Cheapest supermarkets 2025

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 2025?

Every month, we compare thousands of prices at eight of the UK's major 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.

Aldi has taken the crown in recent months, closely followed by Lidl – but how do big chains such as Tesco and Sainsbury's compare, and does being a member of a loyalty scheme make a significant difference to the overall cost of a basket of groceries?

Read on to find out the latest results of our supermarket price comparison.

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

April 2025

Aldi was the cheapest supermarket in April 2025, charging £135.95 on average for our shopping list of 79 branded and own-label groceries. 

Fellow discounter Lidl was hot on its heels, at just 69p more if you have its Lidl Plus loyalty app (£136.64), or 70p more if not (£136.65).

Asda, which doesn't offer loyalty discounts in the same way, was the cheapest of the traditional supermarkets – our shopping cost £150.06.

Waitrose was the most expensive supermarket at £184.19 – 35% more than Aldi.

The table below shows the average cost of our shopping list. Lidl, Morrisons, Sainsbury's and Tesco offered loyalty discounts on some of the items in our basket, so we've calculated the cost for members and non-members.

SupermarketAverage price for 79 items
Aldi £135.95
Lidl with Lidl Plus£136.64
Lidl£136.65
Asda£150.06
Tesco with Clubcard£151.11
Sainsbury's with Nectar£152.57
Tesco£152.59

Where was cheapest for a longer shopping list?

We also compared the average cost of a larger selection of 200 items – the original 79 plus 121 more. We were unable to include Aldi and Lidl in this price comparison as our bigger shop has a wider selection of branded items, which were unavailable at the discounters.

Asda was the cheapest, with the total cost averaging £505.79. Tesco with a Clubcard was the second cheapest at £510.25.

Waitrose was the priciest supermarket again (£570.89) - our shopping cost 13% more there than at Asda.

SupermarketAverage price for 200 items
Asda£505.79
Tesco with Clubcard£510.25
Sainsbury's with Nectar£517.64
Morrisons with More£521.84
Morrisons£531.19
Tesco£543.29
Ocado£548.32

March 2025 

Aldi was the cheapest supermarket in March 2025, charging £133.73 on average for our shopping list of 79 branded and own-label groceries. Waitrose was the most expensive supermarket at £176.41 – £42.68 more than Aldi.

SupermarketAverage price for 79 items
Aldi£133.73
Lidl with Lidl Plus£134.40
Lidl£134.43
Tesco with Clubcard£146.79
Asda£147.09
Tesco £149.83
Sainsbury's with Nectar£150.46


Where was cheapest for a longer shopping list?

Asda was the cheapest, with the total cost averaging £498. Tesco with Clubcard was the second cheapest at £503.03. Waitrose was the priciest supermarket again (£573.15) - our shopping cost 15% more there than at Asda.

SupermarketAverage price for 203 items
Asda£498
Tesco with Clubcard£503.03
Sainsbury's with Nectar£515.79
Morrisons with More£522.27
Morrisons£534.80
Tesco£540.63
Ocado£553.46

February 2025 

Aldi was the cheapest supermarket in February 2025, charging £182.64 on average for our shopping list of 100 branded and own-label groceries. Waitrose was the most expensive supermarket at £245.79 – just over £63 more than Aldi.

SupermarketAverage price for 100 items
Aldi£182.64
Lidl with Lidl Plus£184.51
Lidl£184.94
Asda£201.85
Tesco with Clubcard£205.31
Tesco £212.54
Morrisons with More£212.98


Where was cheapest for a longer shopping list?

We also compared the average cost of a larger selection of 206 items – the original 100 plus 106 more. We were unable to include Aldi and Lidl in this price comparison as our bigger shop has a wider selection of branded items, which were unavailable at the discounters.

Asda was the cheapest, with the total cost averaging £512.30. Waitrose was the priciest supermarket again (£585.10) - our shopping cost 14% more there than at Asda.

SupermarketAverage price for 206 items
Asda£512.30
Tesco with Clubcard£515.30
Sainsbury's with Nectar£525.39
Morrisons with More£530.22
Morrisons£543.40
Tesco£553.91
Ocado£554.72

January 2025

Aldi was the cheapest supermarket in January 2025, charging £185.83 on average for our shopping list of 100 branded and own-label groceries. 

Waitrose was the most expensive supermarket at £242.91 – just over £57 more than Aldi.

SupermarketAverage price for 100 items
Aldi£185.83
Lidl with Lidl Plus£186.59
Lidl£186.62
Asda£204.90
Tesco with Clubcard£207.66
Tesco £213.14
Morrisons with More£213.49

Where was cheapest for a longer shopping list?

We also compared the average cost of a larger selection of 210 items – the original 100 plus 110 more. We were unable to include Aldi and Lidl in this price comparison as our bigger shop has a wider selection of branded items, which were unavailable at the discounters.

Asda was the cheapest, with the total cost averaging £518.90. Waitrose was the priciest supermarket again (£592.34) - our shopping cost 14% more there than at Asda.

SupermarketAverage price for 210 items
Asda£518.90
Tesco with Clubcard£529.01
Morrisons with More £536.81
Sainsbury's with Nectar£536.90
Morrisons£547.21
Tesco£563.18
Ocado£570.12

Cheapest supermarket of 2024

We checked the cost of a trolley of groceries at the UK's biggest supermarkets every day throughout 2024, and revealed the results each month.

Aldi was the cheapest supermarket for all 12 months of the year, making it the cheapest supermarket of 2024 according to our analysis.

Lidl was the second-cheapest supermarket every month, charging £1.99 more than Aldi on average. 

Waitrose was the most expensive supermarket for our shopping list in every month of 2024.

Where was cheapest for a bigger shop in 2024?

Asda was the cheapest supermarket for nine out of 12 months when we compared the total cost of a longer shopping list. This analysis didn't include Aldi or Lidl as they have smaller product ranges. 

However, Tesco was cheaper nearly half the time after we began including loyalty discounts in our analysis in June 2024.

Waitrose was the most expensive for our bigger shop every month except September, when Sainsbury's was priciest (for shoppers not using a Nectar card).

Our price comparison includes discounts that are available to everyone and loyalty prices where applicable, but not multibuys. 

You can read more about our analysis further down the page. The results for each month of 2024 are below.

December 2024

Aldi was the cheapest supermarket in December, charging £100.29 on average for our shopping list of 56 branded and own-label groceries. 

Supermarket
Average price for 56 items
Aldi£100.29
Lidl with Lidl Plus£101.48
Lidl£101.56
Tesco witih Clubcard£111.22
Sainsbury's with Nectar£112.13
Tesco £112.90
Asda£113.22

Tesco with a Clubcard was the cheapest for our longer shopping list, with the total cost averaging £410.40. Sainsbury's with a Nectar card was the second-cheapest at £412.14.

Supermarket
Average price for 158 items
Tesco with Clubcard£410.40
Sainsbury's with Nectar £412.14
Morrisons with More£414.06
Asda£415.56
Morrisons£426.86
Tesco£440.40
Ocado£444.12


November 2024

Aldi was the cheapest supermarket in November, charging £97.89 on average for our shopping list. 

Supermarket
Average price for 55 items
Aldi£97.89
Lidl with Lidl Plus£98.27
Lidl£98.34
Tesco with Clubcard£105.61
Sainsbury's with Nectar£106.71
Tesco£108.45
Asda£108.73

Tesco with a Clubcard was the cheapest for our longer shopping list at £399.73.

Supermarket
Average price for 159 items
Tesco with Clubcard£399.73
Asda£409.36
Sainsbury's with Nectar£410.52
Morrisons with More£421.52
Ocado£432.74
Morrisons£435.27
Tesco£441.14

October 2024

Aldi was the cheapest supermarket in October, charging £111.66 on average for our shopping list. 

Supermarket
Average price for 62 items
Aldi£111.66
Lidl with Lidl Plus£112.07
Lidl£112.33
Tesco with Clubcard£122.26
Tesco£125.09
Asda£125.26
Sainsbury's with Nectar£125.93

Asda was the cheapest for our longer shopping list at £418.71. 

Supermarket
Average price for 164 items
Asda£418.71
Tesco with Clubcard£422.54
Morrisons with More£428.32
Sainsbury's with Nectar£429.21
Morrisons£448.55
Tesco£449.99
Ocado£454.56

September 2024

Aldi was the cheapest supermarket in September, charging £102.68 on average for our shopping list of 59 branded and own-label groceries. Lidl was very close behind, at just £1.18 more (£103.86). 

Supermarket
Average price for 59 items
Aldi£102.68
Lidl£103.86
Asda£112.19
Tesco (with Clubcard)£112.96
Tesco (without Clubcard)£113.35
Sainsbury's (with Nectar)£113.79
Morrisons £119.18

Asda was the cheapest for our longer shopping list at £418.88, but only beat Tesco by a penny when Clubcard Prices are included (£418.89).

Supermarket
Average price for 164 items
Asda£418.88
Tesco (with Clubcard)£418.89
Sainsbury's (with Nectar)£421.16
Morrisons£446.76
Ocado£452.02
Tesco£452.92
Waitrose£459.45


August 2024

Aldi was the cheapest supermarket in August, charging £110.58 on average for our shopping list of 62 popular groceries. Lidl was close behind, at just £1.30 more if you had a loyalty card (£111.88) or £1.59 more if not (£112.17). 

Supermarket
Average price for 62 items
Aldi£110.58
Lidl (with Lidl Plus)£111.88
Lidl (without Lidl Plus)£112.17
Asda£121.85
Tesco (with Clubcard)£123.13
Tesco (without Clubcard)£123.62
Sainsbury's (with Nectar) £123.75

Asda was the cheapest supermarket for our longer shopping list of 165 items at £424.51, beating Sainsbury's with Nectar by £3.59. 

Supermarket
Average price for 165 items
Asda£424.51
Sainsbury's (with Nectar)£428.10
Tesco (with Clubcard)£430.15
Morrisons£440.50
Tesco (without Clubcard)£455.15
Ocado£455.73
Sainsbury's (without Nectar)£463.43


July 2024

Aldi was the cheapest supermarket in July, charging £113.87 on average for our shopping list of 63 popular groceries. Lidl was close behind, at just £2.37 more (£116.24). 

Supermarket
Average price for 63 items
Aldi£113.87
Lidl£116.24
Asda£125.61
Tesco (with Clubcard)£127.50
Sainsbury's (with Nectar) £129.81
Tesco (without Clubcard)£130.27
Morrisons£133.28

Asda was the cheapest supermarket for our longer list, at £427.35, beating Tesco with a Clubcard by just £2.86. 

Supermarket
Average price for 169 items
Asda£427.35
Tesco (with Clubcard)£430.21
Sainsbury's (with Nectar card)£435.05
Morrisons£445.81
Ocado£460.61
Tesco (without Clubcard)£460.90
Sainsbury's (without Nectar card)£468.42


June 2024

Aldi was the cheapest supermarket in June, charging £118.41 on average for our shopping list of 65 popular groceries. Lidl was close behind, at £2.90 more (£121.31). 

Supermarket
Average price for 65 items
Aldi£118.41
Lidl£121.31
Tesco (with Clubcard)£130.90
Asda£131.42
Sainsbury's (with Nectar card)£132.90
Tesco (without Clubcard)£134.30
Sainsbury's (without Nectar card)£137.51

For those shopping with a Clubcard, Tesco was the cheapest supermarket (£439.58) for this bigger shopping list of 174 items.

Supermarket
Average price for 174 items
Tesco (with Clubcard)£439.58
Asda£442.12
Sainsbury's (with Nectar card)£446.84
Morrisons£461.83
Ocado£474.18
Tesco (without Clubcard)£475.08
Sainsbury's (without Nectar card)£483.92


May 2024

Aldi was the cheapest supermarket in May, charging £121.56 on average for our shopping list of 69 popular groceries. Lidl was close behind, at £3.32 more (£124.88).

Supermarket
Average price for 69 items
Aldi£121.56
Lidl£124.88
Asda£137.91
Tesco£138.84
Sainsbury's£142.33
Morrisons£144.36
Ocado£147.64

Asda was the cheapest supermarket for this bigger shopping list (£461.98), while Morrisons came in second place.

Supermarket
Average price for 177 items
Asda£461.98
Morrisons£472.90
Tesco£490.56
Ocado£491.87
Sainsbury's£499.12
Waitrose£505.36


April 2024

Aldi was the cheapest supermarket in April, charging £112.90 on average for our shopping list of 67 popular groceries. Waitrose was the most expensive supermarket at £144.13 - 28% more than Aldi. 

Supermarket
Average price for 67 items


Aldi£112.90
Lidl£115.23
Asda£126.98
Tesco£128.17
Sainsbury's£131.02
Morrisons£134.87

Asda was the cheapest supermarket for our bigger shopping list of 181 groceries. We were unable to include Aldi and Lidl in this comparison as they don't stock enough of the branded items on our list.

Supermarket
Average price for 181 items
Asda£461.67
Morrisons£483.87
Tesco£493.99
Ocado£494.64
Sainsbury's£503.71
Waitrose£514.98


March 2024

Aldi was the cheapest supermarket in March, charging £121.06 on average for our shopping list of 71 popular groceries. Lidl was close behind, at less than £2 more (£122.95).

Waitrose was the most expensive supermarket at £158.52 - a whopping 30% more than Aldi. 

Supermarket
Average price for 71 items
Aldi£121.06
Lidl£122.95
Asda£138.31
Tesco£139.23
Sainsbury's£143.48
Morrisons£145.19
Ocado£148.18

Asda was the cheapest supermarket for our bumper shopping list of 184 groceries. We were unable to include Aldi and Lidl in this comparison as they don't stock enough of the branded items on our list.

Supermarket
Average price for 184 items
Asda£468.90
Morrisons£485.49
Tesco£497.13
Ocado£505.83
Sainsbury's£508.99
Waitrose£517.17


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).

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

Asda was cheapest when we compared a larger selection of groceries - the original 72 plus 113 more. Lidl and Aldi weren't included in this comparison due to their limited ranges of branded items.

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.

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

We also compared a larger selection of groceries - the original 72 plus 116 more - and found that Asda was the cheapest supermarket based on a larger sample size including more branded products.

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

 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 and, since June 2024, loyalty prices where applicable, but not multibuys. 

We can’t include the value of points, personalised discounts or other rewards as these vary from customer to customer.  

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 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.

Cheapest supermarket of 2023

Aldi was the cheapest supermarket in 2023, according to our monthly analysis of grocery prices.

The discounter was the cheapest in our price comparison for 11 months of the year.

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

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

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

Cheapest supermarket of 2022

Aldi was the cheapest supermarket in 2022.

The discounter was the cheapest in our price comparison for seven out of 12 months in 2022.

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.  

Cheapest supermarket of 2021

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.

Cheapest supermarket of 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