The consumer group tracked thousands of branded grocery prices across six major supermarkets throughout the year to find out how much each shop was charging.
Which? experts compiled a list of 53 common grocery items, from Andrex toilet tissue to Weetabix breakfast cereal.
It found that the goods cost £107.01 a month at Sainsbury's on average over the year.
By contrast, the same items would have set someone back £117.81 a month at Waitrose - 10 per cent more - potentially costing shoppers an annual total of £129.60 more than if they had shopped for the same items at Sainsbury's.
Asda was found to be the second cheapest supermarket, with an average monthly cost of £107.65 for the items on Which?'s shopping list.
Morrisons was in third place, charging £109.13.
Which? collected the data by monitoring online pricing, meaning that only shops selling all of the branded items online - Asda, Morrisons, Ocado, Sainsbury's, Tesco and Waitrose - were included in the ranking.
The consumer group ran a similar survey last year, and found that Morrisons was the cheapest supermarket of 2018, followed by Asda and then Sainsbury's.
Neither Aldi nor Lidl offer an online shopping platform for the branded items included in the Which? study.
Natalie Hitchins, Which? head of home products and services, said: "Your weekly supermarket shop can have a significant impact on your wallet, and the start of a new year is a good time to look at your household spending to see if there are areas where you can save money.
"Our analysis shows how important it can be to shop around to ensure you get the best price for your groceries."
The Which? shopping trolley used in the analysis included bread, crisps, butter, cheese, cleaning products, pet food, soft drinks and other everyday items.
Products included Alpen original muesli (750g), Ben & Jerry's cookie dough ice-cream (500ml), Dolmio bolognese sauce - original (500g), Innocent pure fruit smoothie mangoes and passion fruits (750ml), Knorr stock cubes vegetable (8x10g), Mr Kipling cherry bakewells (six), and Sure Men Motionsense 48hr anti-perspirant - active dry (250ml).
Here are the average monthly costs of the 53 branded items in each supermarket trolley, according to Which?
1. Sainsbury's, £107.01
2. Asda, £107.65
3. Morrisons, £109.13
4. Tesco, £112.40
5. Ocado, £116.40
6. Waitrose, £117.81