2. Shop your own kitchen before you write the list
The average household throws away a meaningful share of what it buys, and most of that waste is food bought a second time because the first one was invisible at the back of a shelf.
Before every shop, spend five minutes with a phone and a note. Open the fridge and photograph each shelf. Open the freezer drawer by drawer. Open the pantry. You are not taking inventory of everything — you are looking for two categories: things that will spoil within the week, and things you already own two of.
Then write the list in that order. Meals get planned around what needs using, and the shopping list becomes the gap between that and what the week needs. This inverts the usual order, where people plan meals first and then buy ingredients on top of a full cupboard.
A simple structure that survives real weeks: plan five dinners, not seven. One night will be leftovers and one night something will go wrong. Planning seven guarantees two sets of ingredients rot, and that failure is what makes people give up on meal planning entirely.
Set a standing baseline for the dozen staples you never want to run out of — the flour, rice, pasta, tinned tomatoes, oil, coffee, washing powder tier of the list. Write the trigger quantity on a card inside the cupboard door: buy more when there is one bag left, not when there are none. Staples bought in a panic are bought at whatever price the nearest shop is charging, and running out of the base ingredient for a planned meal is one of the most common reasons a cooking night turns into a takeaway.
Keep the list organised by aisle rather than by meal. A list that follows the store layout stops you doubling back, and every extra lap past the ends of aisles is where the unplanned items get picked up.