We use cookies to allow us and selected partners to improve your experience and our advertising. By continuing to browse you consent to our use of cookies. You can understand more and change your cookies preferences here.


When you click on a retailer link on our site, we may earn affiliate commission to help fund our not-for-profit mission.Find out more.

21 Dec 2019

Wars of the Roses (and Quality Streets): best Christmas chocolates revealed

Find out the best chocs to buy whether you're nutty about nuts, a fruit creme fanatic or simply after the best bang for your buck

It's official: Roses should be first choice for nut fans while Quality Streets are great for solid-chocolate purists, according to new Which? research.

Our hard-working experts have spent hours counting chocolates from M&S, Sainsbury's and Waitrose, as well as Nestle and Cadbury.

Here, we reveal the best chocolate selection tubs to buy based on flavour and price.

Be more money savvy

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

Nuts or caramels? Best chocs by flavour

We bought five brands of variety tubs and sorted the chocolates into the following flavour categories:

  • Fudges, toffees and caramels
  • Fruit and coffee cremes
  • Solid chocolate
  • Chocolates with nuts and praline

We then counted how many of each type of choc the different brands offered, and calculated the proportion of flavour types for each brand.

The results, below, show that if nutty chocolates and pralines are your favourite, you should opt for Cadbury Roses this Christmas. That's because nut-filled chocs make up over a quarter (28%) of the contents of the famous blue tubs.

If fudges and caramels are more your bag, go for the M&S Big Selection, which contains a hefty 51% of these sugary treats.

Nestle Quality Streets offer the highest quota of both solid chocolates (21%) and fruit and coffee cremes (37%), while Waitrose's Christmas Chocolate Favourites don't offer any solid chocolates at all.

Find out more:the best mince pies of Christmas 2019

Which Christmas chocolate tub offers the best bang for your buck?

If you're more concerned about bang for your buck than which flavours you're most likely to find, Quality Street and Sainsbury's Chocolate Treats come in cheapest.

Both tubs are currently available at £3.50 for 650g - that's 54p per 100g - provided you buy the Quality Streets from Asda or Morrisons, where they've been reduced from £4.

ChocolatesPriceCost per 100g (based on cheapest price)
Cadbury Roses (600g)£4 (Asda), £5 (Co-op, Morrisons, Sainsbury's, Tesco)67p
M&S Big Selection (650g)£4.2565p
Nestle Quality Street (650g)£3.50 (Asda, Morrisons), £5 (Sainsbury's, Tesco)54p
Sainsbury's Chocolate Treats (650g)£3.5054p
Waitrose Christmas Chocolate Favourites (600g)£6£1

Prices checked using MySupermarket and retailer websites on 16 December 2019.

What's your favourite Christmas chocolate?

We surveyed more than 1,000 Which? members last year to find out their favourite chocolates in different branded variety boxes.

When it came to Quality Streets and Roses, hazelnuts in caramel were by far the most popular choice: 30% of respondents said this was their favourite Cadbury Rose flavour, while Nestle Quality Streets' equivalent - known simply as 'The Purple One' - was number-one choice for 26% of our respondents.

Looking at the contents of the chocolate variety tubs we bought this year, a 600g tub of Roses consistently contained six hazelnuts in caramel out of 58 chocolates in total (that's 10% of the tub). In fact the make up of every Roses tub we looked at was exactly the same.

Quality Streets varied much more, with the three 650g tubs we looked at each containing a different number of 'purple ones' (four, five or six out of a total of 67 to 69 chocolates, or 6%-9% of the tub, depending on your luck).