All articlesMeal planning

How to write a shopping list you don't have to rewrite

A list gets rewritten because it kept the answer and threw away the question. Keep the dinners, the headcount and the shelf, and the list keeps itself.

Published 8 min readWritten by Sugo Kitchen Co.
Three dinners' ingredients on a wooden table, each tied by butcher's twine to one shared bowl of onions, with the twine from the fish and potatoes cut loose

Write down the week, and let the groceries fall out of it. A list you have to rewrite is one that recorded only its own conclusions: nine lines of food with no memory of which dinner asked for what. The moment anything changes, and something changes most weeks, those nine lines cannot be edited, only done again.

So keep the three things the list was worked out from: which dinners you intend to cook, how many people are eating, and what is already on the shelf. Written that way, a change of mind is an edit to one dinner. Thursday moves to next week, and the list drops exactly the lines Thursday was alone in wanting.

On paper the cheap version is two columns. Dinners down the left, food down the right, and a letter beside each item for the dinner that wanted it. It takes under a minute and it is the difference between amending a list and starting a new one.

Why the rewrite happens at all

A shopping list feels like a document. It behaves like the result of a calculation.

The calculation is roughly: everything my planned dinners need, times the number of people, minus what I already own. What ends up on the paper is the output of that. The inputs are in your head at the time of writing and gone within the hour.

That is fine while nothing moves. The trouble is that a week is a moving thing. Somebody invites you out on Wednesday. The fish looks bad. You realise the recipe you pinned serves six. Your partner, unprompted and helpfully, buys milk. Every one of those changes an input, and a flat list has no way to work out which of its lines depended on the input that changed.

So you do the only thing available: you read the whole list, try to reconstruct the reasoning from memory, get it about eighty per cent right, and write it out again. The rewrite is not a discipline problem. It is what happens when the only copy of your reasoning is in a form that cannot be recalculated.

Six ways a written list goes stale

The orphan

You wrote "celery" on Sunday and by Thursday you have no idea which recipe wanted it. Buy it and it rots; skip it and you are missing a base.

The same thing three times

"2 cloves garlic", "1 tbsp garlic paste" and "garlic for the bread" are three lines and one bulb. You buy three.

The wrong headcount

The traybake served four on the website and there are two of you. Nothing on the list says so, and you find out when the chicken arrives.

What you already own

The cumin, the fish sauce, half a bag of red lentils. These are the duplicates that accumulate, because the shelf is not on the list.

The cancelled dinner

One dinner comes off the week and four or five lines become suspect. Which ones is exactly the thing the list no longer knows.

The substitution

You swap the haddock for whatever is good at the counter, and now the parsley and the potatoes belong to a dish that has changed shape.

All six follow from storing an answer and discarding the working.

Keep the dinners attached and the list edits itself

Here is the same week with its inputs still joined on. Three dinners on the left, the list they produce on the right. Thursday comes off, and the list answers for itself.

One week, one change of mind

The dinners you meant to cook

The list it produces6 to buy

  • Beef mince
  • Tinned tomatoes
  • Onionswanted twice more
  • Parmesan
  • Red lentils
  • Coriander
  • Haddock
  • Potatoes
  • Parsley

Thursday leaves and takes three lines with it. Onions stays, because Tuesday and Wednesday still want it.

the line you would have crossed off by hand is the one you would have had to buy anyway

The onions are the whole argument. Thursday wanted them, Thursday is gone, and they stay on the list because Tuesday and Wednesday want them too. Do that edit in your head on a flat list and you cross the onions off, because they arrived with the fish pie and the fish pie is cancelled. Then you cook the ragù on Tuesday with no onion in the house.

That single item is the most expensive part of a rewrite, and it is invisible. The lines you wrongly remove announce themselves at the hob, two days later, with the pan already hot.

The order you write it in is not the order you read it in

There is a second, smaller rewrite that happens at the shop door, and it is worth separating from the first.

The order it gets written in

Dinner by dinner, because that is how you think about the week. All of Tuesday, then all of Wednesday. Milk appears twice, four lines apart.

The order it gets read in

Aisle by aisle, because that is how the shop is arranged. Every chilled thing together, in the order your feet actually take you.

Most people resolve this by walking the shop twice, or by copying the list out in aisle order on the bus. Both work, and both are the rewrite again in a smaller form.

Order is a display choice, which means it is the cheapest thing on this page to fix. If the list knows what each line is (a vegetable, a chilled thing, a tin), it can be shown dinner by dinner while you plan and aisle by aisle while you shop, with nothing copied out. If all it knows is nine strings of text in the order you happened to type them, you are the one doing the sorting, every time.

One honest caveat on aisle order: no app knows the floor plan of your particular shop. Grouping by category gets you most of the way, and the last ten per cent is local knowledge that stays yours.

Where Sugo fits

Everything above works with a pen. What software is good at here is the bookkeeping: holding the inputs, and redoing the arithmetic every time one of them moves.

A meal plan in Sugo is a set of dinners, and the shopping list is worked out from it. Add a recipe to Tuesday and its ingredients appear on the list. Take Thursday out and its ingredients leave, apart from the ones another dinner still wants. Your pantry is subtracted before you see the list, so the third jar of cumin never makes it onto the paper.

Shopping list

4 DINNERS · ONE SHOP
8 to buy
Four dinners roll up into one list, and the things you already own strike themselves off.

Quantities are added up across dinners, so two recipes wanting onions produce one line with both amounts in it. Items arrive grouped by category, so all the chilled things are together. And because the list belongs to the household, the person who is actually near a shop is looking at the same list as the person who planned the week, which removes the most common duplicate purchase there is.

The limits are worth stating. Unit arithmetic is only as good as the recipes it reads, and recipes are written by humans. "A splash of white wine" plus "125ml white wine" cannot be added up, so Sugo keeps them as two lines and leaves the total to you. Ingredient matching is close but not exact: "spring onions" and "scallions" are the same thing and will usually be recognised as the same thing, while something written oddly enough may sit on the list twice. Categories are a good guess at a supermarket and a poor guess at a market stall. And the pantry only subtracts what it knows about, so a shelf you have never told it about saves you nothing. The arithmetic is dependable; reading loose human prose is where it slips, so the list is laid out for you to correct before you go.

Before you leave the house

  1. Read it for orphans

    Any line you cannot attach to a dinner is either a staple you are low on or a mistake. Both are worth thirty seconds.

  2. Check the headcount on anything expensive

    Protein and fish are where a serving mismatch costs real money. The rest of a recipe scales forgivingly.

  3. Look at the shelf, not at the memory of the shelf

    Specifically the tins, the spices and the freezer. These are the three places duplicates go to live.

  4. Group it the way the shop is laid out

    Once, before you go. Doing it in the aisles with a trolley is the rewrite again, in instalments.

  5. Leave the dinners attached

    So that when Thursday moves, and it will, you are editing the week instead of writing the list out again.

The short version

The list is what the plan works out to this week, given who is eating and what is in the cupboard.

Keep the plan and the list stays cheap to change. Keep only the list and every change of mind costs you a fresh page, plus the one line you crossed off that you should have kept. If you want the planning half of this, a meal plan that survives a real week is the companion piece, and the 12 pantry staples that make anything cookable is the argument for why a well-stocked shelf makes a shorter list.

Sugo is free on iPhone, iPad and Mac, on Android, and in any browser at app.sugo.kitchen. If you have ever copied a shopping list out in aisle order on the bus, download Sugo.

Written by

Sugo Kitchen Co.

The team building Sugo

We build Sugo, a recipe app for people who cook at home. We write about saving recipes, cooking from what you already own, and the unglamorous parts of getting dinner made.

Keep reading
Out now

Put one good dinner on the table.

Sugo is on the App Store for iPhone, iPad and Mac, on Google Play for Android, and in any browser at app.sugo.kitchen. It is free to start, so start saving the recipes you actually cook.