Seven dinners for a family with two children, with vegetables that are in season in October, and with real shelf prices. For each ingredient we used the cheapest non-organic product at Migros and at Coop, prices of 23 and 24 September 2026, without promotions.
At the till you pay CHF 59.20 at Coop and CHF 60.85 at Migros for the whole week, buying whole packs. Of that, you use ingredients worth CHF 44.27 at Coop and CHF 43.74 at Migros, around CHF 1.60 per portion. The rest stays in your cupboard for next week.
CHF 59.20
at the till at Coop, CHF 60.85 at Migros (whole packs, without oil, curry and stock from the cupboard)
CHF 1.56
per portion at Migros, CHF 1.58 at Coop (quantities used, 28 portions)
CHF 43.74
quantities used for 7 dinners at Migros, CHF 44.27 at Coop
17 of 24
ingredients cost practically the same in both stores (less than 5 centimes difference)
Shelf prices from the Eini price data of 23 and 24 September 2026, without promotions. Eini calculation, as of 6 October 2026.
The plan from Monday to Sunday
The quantities are enough for 2 adults and 2 school-age children. Per person means: cost of the dish divided by four. The most expensive is Tuesday's Spaghetti Bolognese with carrots, because of the 400 g of minced beef. The cheapest is Monday's Alpine macaroni (Älplermagronen) with apple sauce.
| Day | Dish | Migros | Coop |
|---|---|---|---|
| Monday | Alpine macaroni (Älplermagronen) with apple sauce | CHF 4.14 (CHF 1.03 per person) | CHF 4.16 (CHF 1.04 per person) |
| Tuesday | Spaghetti Bolognese with carrots | CHF 10.43 (CHF 2.61 per person) | CHF 8.76 (CHF 2.19 per person) |
| Wednesday | Pumpkin risotto | CHF 5.33 (CHF 1.33 per person) | CHF 6.70 (CHF 1.67 per person) |
| Thursday | Oven-roasted chicken with potatoes and carrots | CHF 6.97 (CHF 1.74 per person) | CHF 6.91 (CHF 1.73 per person) |
| Friday | Cauliflower and potato curry with rice | CHF 7.06 (CHF 1.77 per person) | CHF 7.93 (CHF 1.98 per person) |
| Saturday | Rösti with fried egg and carrot salad | CHF 4.79 (CHF 1.20 per person) | CHF 4.81 (CHF 1.20 per person) |
| Sunday | Fish fingers with mashed potatoes and coleslaw | CHF 5.02 (CHF 1.25 per person) | CHF 5.00 (CHF 1.25 per person) |
| Week | 7 dinners, 28 portions | CHF 43.74 | CHF 44.27 |
The seven recipes
Pumpkin, cauliflower, carrots, white cabbage, onions and potatoes are in season in October, according to the seasonal calendar of the Swiss vegetable growers (gemuese.ch).
Monday: Alpine macaroni (Älplermagronen) with apple sauce
Ingredients: 300 g Hörnli (elbow macaroni), 400 g potatoes, 150 g onions, 2 dl half cream, 120 g grated cheese, 20 g butter, 600 g apples.
Peel the apples, cut them into pieces and cook them with a little water for 15 minutes until soft, then mash them into a purée. Dice the potatoes and parboil them for 5 minutes in salted water, add the Hörnli and cook until done. Drain and mix with the cream and cheese. Fry the onions, cut into rings, in the butter until golden brown and spread them on top.
Tuesday: Spaghetti Bolognese with carrots
Ingredients: 400 g spaghetti, 400 g minced beef, 700 g passata, 100 g onions, 300 g carrots, 1 tbsp olive oil, 40 g grated cheese.
Finely chop the onions, finely grate the carrots and soften both in the oil. Add the mince and fry until crumbly, add the tomatoes, season with salt and simmer for 30 minutes. Finely grated, the carrots are barely noticeable in the sauce.
Wednesday: Pumpkin risotto
Ingredients: 320 g risotto rice, 1 Hokkaido pumpkin (around 1 kg), 100 g onions, 1.2 l vegetable stock (around 25 g powder), 60 g grated cheese, 30 g butter.
Deseed the Hokkaido and dice it with the skin on; the skin softens as it cooks. Soften the onions in half the butter, then briefly cook the rice and pumpkin with them. Add the hot stock little by little and stir for 18 to 20 minutes. Finally, stir in the cheese and the rest of the butter.
Thursday: Oven-roasted chicken with potatoes and carrots
Ingredients: 6 chicken thighs (around 720 g), 1 kg potatoes, 500 g carrots, 2 tbsp olive oil, paprika and salt.
Cut the potatoes and carrots into wedges, mix with the oil and spices and spread on a baking tray. Place the chicken on top and bake at 200 degrees for around 45 minutes, until the meat is cooked through.
Friday: Cauliflower and potato curry with rice
Ingredients: 1 cauliflower (around 800 g), 500 g potatoes, 100 g onions, 4 dl coconut milk, 1 tbsp curry powder (10 g), 300 g long-grain rice, 1 tbsp olive oil.
Soften the onions in the oil and briefly toast the curry powder with them. Dice the potatoes, break the cauliflower into florets and simmer both with the coconut milk and 2 dl water for 20 minutes. Cook the rice according to the pack. Today, also boil the 1.2 kg of potatoes for the rösti in their skins.
Saturday: Rösti with fried egg and carrot salad
Ingredients: 1.2 kg potatoes (boiled the day before), 40 g butter, 6 eggs, 400 g carrots, 2 tbsp olive oil, vinegar.
Peel the cold potatoes, grate them on a rösti grater and add salt. For four people, fry in two batches or in two pans: press flat in the butter and fry for 10 to 12 minutes per side until golden brown. Fry the eggs. Grate the carrots and dress them with oil, vinegar and salt.
Sunday: Fish fingers with mashed potatoes and coleslaw
Ingredients: 15 fish fingers (450 g), 1 kg potatoes, 2.5 dl milk, 30 g butter, 500 g white cabbage, 2 tbsp olive oil, vinegar.
Finely shred the cabbage, add salt, mix with vinegar and oil and leave to stand for 30 minutes. Peel the potatoes, boil until soft and mash with hot milk and butter. Bake the fish fingers in the oven according to the pack.
The shopping list for Migros and Coop
For each ingredient, we list the packs that give you enough and cost the least at the till. Most people already have olive oil, curry powder and stock at home, so we only count the quantity used.
| Ingredient | Quantity for the week | Migros | Coop |
|---|---|---|---|
| Hörnli (elbow macaroni) | 300 g | Migros durum wheat Hörnli, 1 kg: CHF 1.00 | Prix Garantie Hörnli, 1 kg: CHF 1.00 |
| Potatoes | 4.1 kg | M-Budget waxy potatoes, 5 kg: CHF 5.60 | 2 × Ünique potatoes, 1 kg + Prix Garantie potatoes, 2.5 kg: CHF 5.00 |
| Onions | 450 g | Migros onions 1 kg: CHF 1.70 | Yellow onions IP-Suisse approx. 500g: CHF 0.90 |
| Half cream | 2 dl | Valflora half cream 25% milk fat, UHT 250 ml: CHF 1.60 | Half cream UHT IP-Suisse, 250 ml: CHF 1.60 |
| Grated cheese | 220 g | M-Budget grated cheese, 250 g: CHF 2.70 | Prix Garantie Grattugiato, 300 g: CHF 3.25 |
| Butter | 120 g | Valflora butter, Mödeli block, 200 g: CHF 3.10 | Prix Garantie Vorzugsbutter, Mödeli block, 200 g: CHF 3.10 |
| Apples | 600 g | Migros Golden apples, 1 kg: CHF 2.80 | Gala apples vv, sweetish, IP-Suisse, 750 g: CHF 2.20 |
| Spaghetti | 400 g | Migros spaghetti 1 kg: CHF 1.20 | Prix Garantie spaghetti, 1 kg: CHF 1.20 |
| Minced beef | 400 g | Migros minced beef 100 g + Migros minced beef 300 g: CHF 8.05 | Prix Garantie minced beef approx. 500g: CHF 7.80 |
| Passata | 700 g | 2 × M-Budget passata, 500 g: CHF 1.30 | Prix Garantie passata Rustica, 700 g: CHF 0.90 |
| Carrots (Rüebli) | 1.2 kg | M-Budget carrots, 2 kg: CHF 3.85 | 3 × Ünique carrots approx. 500g: CHF 2.85 |
| Olive oil | 1.2 dl | from the cupboard (value CHF 0.84) | from the cupboard (value CHF 0.84) |
| Risotto rice | 320 g | Migros Risotto d'Italia, 1 kg: CHF 1.80 | Prix Garantie risotto rice, 1 kg: CHF 1.80 |
| Pumpkin (Hokkaido) | 1 piece (around 1 kg) | Migros pumpkin Oranger Knirps, price per kg: CHF 3.60 | Pumpkin Oranger Knirps, 1 piece: CHF 4.95 |
| Vegetable stock (powder) | 25 g | from the cupboard (value CHF 0.15) | from the cupboard (value CHF 0.15) |
| Chicken thighs | 6 pieces (around 720 g) | Migros chicken thighs, 1 kg: CHF 6.50 | Prix Garantie chicken thighs 6x approx. 720g: CHF 4.65 |
| Cauliflower | 1 piece (around 800 g) | Migros cauliflower, 1 kg: CHF 5.40 | Prix Garantie cauliflower, 1 piece: CHF 4.50 |
| Coconut milk | 4 dl | Migros coconut milk 400 ml: CHF 1.40 | Thai Kitchen coconut milk 500ml: CHF 4.50 |
| Curry powder | 10 g | from the cupboard (value CHF 0.12) | from the cupboard (value CHF 0.13) |
| Long-grain rice | 300 g | Migros long-grain rice, parboiled, 1 kg: CHF 1.35 | Prix Garantie long-grain rice, parboiled, 1 kg: CHF 1.35 |
| Eggs | 6 pieces | Eggs 53+ free-range, 6 pieces: CHF 3.30 | Free-range eggs CH, 6 pieces, 53g+: CHF 3.30 |
| Fish fingers | 450 g | Migros fish fingers, 450 g: CHF 2.00 | Prix Garantie fish fingers 15x30g: CHF 2.00 |
| Whole milk | 2.5 dl | Valflora whole milk 3.5% fat, UHT 250 ml: CHF 0.60 | Whole milk UHT 3.5% IP-Suisse 250ml: CHF 0.75 |
| White cabbage | 500 g | Migros white cabbage, 1 kg: CHF 2.00 | Prix Garantie white cabbage approx. 800g: CHF 1.60 |
| Total at the till | CHF 60.85 | CHF 59.20 |
Where Migros is cheaper and where Coop is
For 17 of 24 ingredients, the two stores are less than 5 centimes apart. The cheapest own brands cost the same in both stores for pasta, rice, butter, apples and fish fingers. Four ingredients make the difference, and they almost cancel each other out:
- Minced beef, cheaper at Coop: Prix Garantie costs CHF 7.80 for approx. 500 g, or CHF 15.60 per kilo. At Migros, a kilo costs CHF 19.79 in the 700 g pack. For 400 g, that makes CHF 1.67.
- Coconut milk, cheaper at Migros: 400 ml of the Migros brand costs CHF 1.40. At Coop, we found no non-organic own-brand coconut milk in our data. The cheapest per litre was Thai Kitchen in the 1-litre pack at CHF 7.50. For 4 dl, that makes CHF 1.60. For the shopping list, the 500 ml pack for CHF 4.50 is enough.
- Pumpkin, cheaper at Migros: Migros sells the Hokkaido for CHF 3.60 per kilo, Coop for CHF 4.95 per piece. For a pumpkin of around 1 kg, that is CHF 1.35.
- Cauliflower, cheaper at Coop: the Prix Garantie mini cauliflowers cost CHF 3.35 for 750 g; at Migros, a kilo costs CHF 5.40. For 800 g, that makes CHF 0.75. The shopping list has a whole cauliflower for CHF 4.50, because one mini pack of 750 g is not enough and two would cost more.
On balance, the quantities used cost CHF 0.53 less at Migros. At the till, however, Coop is CHF 1.65 cheaper, because the packs of potatoes, onions, carrots and chicken are smaller and fit the quantities better. You can find more staples compared on the Compare Coop and Migros prices page.
What is left after the week
With the Migros list you are left with, among other things, 700 g Hörnli, 600 g spaghetti, 680 g risotto rice, 700 g long-grain rice, 900 g potatoes, 550 g onions, 800 g carrots, 500 g white cabbage and 400 g apples. Everything left over after the week is worth around CHF 14 at Migros and CHF 11 at Coop, calculated with the price of the pack bought. Pasta and rice keep for a long time; potatoes, onions and carrots keep for a few weeks in a cool, dark place.
At Migros the chicken thighs come in a kilo pack, and you need 720 g. Roast the whole pack and eat the rest for lunch the next day.
How to keep the week cheap
- Cook once, use twice: on Friday, boil the potatoes for the rösti at the same time. Cold, boiled potatoes are the easiest to grate.
- Pumpkin with the skin: with Hokkaido, you eat the skin too. Only the seeds go, and you use the whole pumpkin.
- Big bags for your stores: at Migros, potatoes and onions are cheaper per kilo in a big bag. There, 5 kg of M-Budget potatoes cost CHF 1.12 per kilo, the 2.5 kg bag CHF 1.50. Onions cost CHF 1.50 per kilo in the 2 kg bag and CHF 1.70 in the kilo bag.
- Meat on two days: minced beef and chicken together make up 25% (Coop) to 29% (Migros) of the quantities used. On the other days there is cheese, eggs, fish or a curry without animal ingredients.
- Use promotions: this calculation is without promotions. If mince or chicken is on promotion, the price of the week goes down.
Method
- Data: shelf prices from the Eini price data, recorded on 23 and 24 September 2026 in the online ranges of Migros and Coop. These are regular prices, not promotions. Prices in your branch may differ.
- Selection: for each ingredient, the product with the lowest price per kilo, litre or piece, non-organic and not ready-made.
- Quantities used: quantity in the recipe times price per kilo, litre or piece. Salt, pepper, paprika and vinegar are not included; oil, curry powder and stock are.
- At the till: for each ingredient, the packs that give you enough for the least money. Different pack sizes may be combined. Olive oil, curry powder and stock only count with the quantity used.
- Assumptions: a Hokkaido weighs around 1 kg, a cauliflower around 800 g. Migros labels cauliflower and pumpkin as 1 kg. At Coop, the price for minced beef is that of a pack of approx. 500 g.
- Minced beef at Migros: our data contains “Migros Rindshackfleisch 100 g” twice with different prices (CHF 1.55 and CHF 2.10). Because we could not establish which price applies where, we use the price of CHF 2.10 per 100 g and the 300 g and 700 g packs.
Where Eini fits
Every week, Eini plans your lunches and dinners around the actual promotions of Coop, Migros, Lidl, Aldi, Denner and Aligro and turns them into a shopping list. A real, anonymous example is on the Cheap weekly plan page. The first 3 meal plans are free; after that, the Food plan costs CHF 1 a week. More on the meal planner page.
Frequently Asked Questions
How much does a week of dinners cost for a family with two children?
In our example with 7 dinners for 2 adults and 2 children, you pay CHF 59.20 at the till at Coop and CHF 60.85 at Migros. The ingredients used are worth CHF 44.27 and CHF 43.74, or CHF 1.58 and CHF 1.56 per portion (shelf prices of 23 and 24 September 2026, without promotions, Eini calculation).
Is Migros or Coop cheaper for the family shop?
For this plan the two are close: CHF 43.74 at Migros and CHF 44.27 at Coop for the quantities used, CHF 60.85 and CHF 59.20 at the till. For 17 of 24 ingredients the difference is less than 5 centimes. Minced beef and cauliflower are cheaper at Coop, coconut milk and pumpkin at Migros (Eini price data, 23 and 24 September 2026).
Which vegetables are in season in October?
Among others, pumpkin, cauliflower, carrots, white cabbage, onions and potatoes, according to the seasonal calendar of the Swiss vegetable growers (gemuese.ch).
Which dinner in the plan is the most expensive?
Spaghetti Bolognese with carrots, at CHF 10.43 at Migros, or CHF 2.61 per person. Most of that is the 400 g of minced beef. The cheapest is Monday, with Alpine macaroni (Älplermagronen) and apple sauce for CHF 4.14 (shelf prices of 23 and 24 September 2026).
Plan your week around promotions.
Eini plans your week around the promotions of 6 stores and makes the shopping list.
Download