The other way to stop yourself doing this so much is to have a food budget and get the money in cash. Then, anything bought at the food shop must be paid for in cash.
Quick payments of a pop-in shop of £17 or similar on a card, doesn’t feel like lots. If you pay cash it feels more real, plus if it’s a pot that 2 adults use, it’s much easier to see the amount dropping and dropping regularly.
Another way would be to keep a notebook and each card spend in food is jotted down with the date. You’ll see how many times per week it’s happening.
Personally, I look to spend between £60 and £80 on a weekly supermarket delivery. If my sound goes over £80 I remove items from the online basket until I’m back within budget, or I switch around and replace some items with cheaper ones. We know at the treat items tend to get eastern fairly quickly and by day 3 or 4 might be gone. So we might have strawberries and raspberries in day 1 and 2 and by day 4 be eating bananas and apples. We might still fancy strawberries but don’t pop out to get more and they have to wait until the next food shop. Instead, we eat the less popular apples because they are there. There is always a bottle of wine or some beers, but if it’s gone, we don’t tend to pop out for more, but wait until next delivery. The only items we tend to pop out for would be milk or bread..and usually we can manage for the week, but sometimes need to get some extras.
The other time I might do a top up , which isn’t really a top up, is if we are hosting a meal and I didn’t plan ahead and include the stuff in the weekly shop, so might need to go and buy the stuff for the meal and the drink. Similar could happen if we are going to a friends for a meal and I want to get wine or crocs or flowers...but I usually have chops and wine in the cupboard so don’t need to do that.
Honestly, I think there’s scope for saving vast amounts of money without the little shops, plus probably easier to eat healthily and lose weight too if you want to do that without popping to shops. It’s just a habit but can be broken.