The cheapest fish to grill in Switzerland are whole oily fish — mackerel, fresh sardines and farmed trout — at roughly CHF 1.70–2.30 per 100g, well under salmon fillet at CHF 4 and up. Buy them whole, lean on frozen for fillets, and a fish barbecue lands cheaper per head than a meat one.

Swap a salmon-fillet grill for whole mackerel and trout across a barbecue for four and you cut the fish bill by roughly CHF 18 in a single evening. Default the fillets you do buy to frozen and you save another 25–35% per 100g — money back in your pocket without leaving the fish aisle.

Which fish is actually cheap to grill

Fish feels like a luxury at the Swiss counter, and the headline numbers do not help: food prices here sit about 61% above the EU average. But that average hides a wide spread. The fish that grill best are also among the cheapest, once you look past the salmon fillet everyone reaches for first.

Oily fish are the budget grill champions. Mackerel (Makrele), fresh sardines and farmed trout (Forelle) all cost between CHF 1.70 and 2.30 per 100g when bought whole, and their firm, fatty flesh survives the grate far better than lean fillets that dry out and stick. A whole fish also carries its own basting fat, so you need less oil and no marinade. Compare that to salmon fillet at CHF 4 or more per 100g, or prawns north of CHF 4.50, and the gap over a full barbecue is real money.

Rule of thumb: any whole oily fish under CHF 2 per 100g gives you a grilled main for CHF 3–4 a head. That undercuts most marinated grill meat and nearly every fillet.

Fresh or frozen: where the real gap is

For fillets, frozen almost always wins on price. A frozen salmon or white-fish fillet runs about 25–35% cheaper per 100g than the fresh equivalent at the same chain, because it skips the counter, the waste and the daily markdown cycle. It also thaws in an hour and grills identically once patted dry. The frozen versus fresh cost breakdown holds across most of the protein aisle, and fish is where the saving runs largest.

Fresh earns its premium in one case: whole fish you will grill the same day. A fresh whole trout or mackerel, scaled and gutted at the counter, is hard to beat for a weekend grill and barely dearer than frozen. The losing move is buying a fresh fillet on Thursday to grill on Saturday. You pay the fresh premium and risk it turning before it ever hits the coals.

Price per 100g across the Swiss stores

Prices move week to week, but the ranking between fish types and stores is stable. Migros and Coop cover the everyday range, Lidl and Aldi carry a tight but cheap frozen selection, and the Aligro cash-and-carry wins on whole fish and party trays if you are buying volume. The consumer magazine K-Tipp price-tests Swiss fish counters regularly, and the pattern below matches what its comparisons keep showing.

Fish (grill-friendly)Fresh CHF/100gFrozen CHF/100gBest value store
Mackerel, whole (Makrele)1.901.50Coop, Aligro
Sardines, fresh1.701.30Coop, Migros
Trout, whole (Forelle)2.301.90Migros, Aligro
Sea bream, whole (Dorade)2.802.20Migros, Aligro
Pangasius fillet1.10Lidl, Aldi
Salmon fillet (Lachs)4.202.90Aligro, Lidl
Prawns, shell-on (Crevettes)4.503.20Aligro, Coop
Indicative price per 100g for grill-friendly fish, observed across Swiss chains over recent seasons including summer 2026. Counter prices vary by week, catch and Aktion.

Two things jump out. Whole oily fish cluster at the cheap end, and the frozen column sits consistently below the fresh one — most sharply for salmon, where going frozen saves about CHF 1.30 per 100g. On the everyday range, Migros and Coop trade blows: Coop tends to carry the deeper fresh selection, Migros the keener price.

The cheapest sustainable picks

Cheap and sustainable line up better for fish than for almost any other protein. The budget oily fish — mackerel, sardines and herring — are fast-growing, abundant species that carry MSC certification more often than not. Farmed Swiss and European trout is ASC-rated and has a light footprint. In other words, the fish that costs least on the grill is usually the one you can buy with a clear conscience.

The exception is the bargain-bin fillet. Pangasius at CHF 1.10 per 100g is the cheapest thing in the freezer for a reason, and its farming record is patchy. If price is the only thing that matters it does the job, but whole mackerel costs barely more per portion and grills better. Look for the MSC or ASC label. On fish, the sustainable choice and the cheap-per-portion choice are usually the same pack.

How much fish per person for a barbecue

Portion 150–200g of fish per person as a main, and a little more for whole fish to account for the head and bones. A 300g whole trout feeds one hungry adult or stretches to two as part of a mixed grill. For four people you want roughly 700–800g of edible portions, which is two large trout plus a few mackerel, or about a kilo of whole fish before trimming.

Run the numbers and a fish grill is not the extravagance it looks. At CHF 1.90 per 100g for whole mackerel, a 180g portion is about CHF 3.40, cheaper than most cuts in our ranking of the cheapest protein sources. The average Swiss household already spends around CHF 636 a month on food; shifting a summer grill from salmon fillet to whole oily fish trims that without anyone at the table noticing a downgrade.

Benchmark for a fish barbecue: aim to keep the fish under CHF 4 per head. Whole oily fish at counter price gets you there; fresh salmon fillet and prawns will not.

Five steps to grill fish for less

Turning the price gaps above into an actually cheaper barbecue comes down to a short routine:

  1. Default to whole oily fish. Mackerel, sardines and trout cost the least per 100g and forgive a hot, uneven grill better than fillets.
  2. Buy fillets frozen, whole fish fresh. Frozen fillets save 25–35%; a fresh whole fish is worth its small premium only if you grill it that day.
  3. Check the Aktionen midweek. Fish promotions rotate like everything else, and a salmon or trout Aktion can erase the fresh premium for one week.
  4. Go to Aligro for a crowd. For a party, wholesale trays of whole fish beat the supermarket counter on price per 100g.
  5. Follow the MSC or ASC label. It steers you to the abundant species that also happen to be cheapest per portion.

Let the algorithm watch the fish counter

The catch with fish deals is that they are short-lived and scattered across chains: a trout Aktion at Migros one week, frozen salmon at Lidl the next. Tracking that by flipping through flyers is exactly the chore most people skip. Eini's algorithm does it in the background. It follows fish promotions across Coop, Migros, Lidl, Aldi, Denner and Aligro, matches them to your meal plan, and drops the cheap week onto your grocery list before you have even thought about dinner.

Frequently asked questions

What is the cheapest fish to grill in Switzerland?

Whole oily fish — mackerel, fresh sardines and farmed trout — at roughly CHF 1.70–2.30 per 100g. Bought whole and grilled on the bone, they cost a fraction of salmon or prawns and hold up better over the coals.

Is frozen fish cheaper than fresh for grilling?

Usually yes. A frozen fillet runs about 25–35% less per 100g than the fresh equivalent, and the gap is widest on salmon. For whole fish you plan to grill the same day, fresh is fine; for fillets and anything you are stocking, frozen wins on price.

Which Swiss store has the best fish value?

For everyday whole fish, Migros and Coop are close, with Coop often deeper on fresh range and Migros keener on price. For volume and party trays, the Aligro cash-and-carry is cheapest per 100g. Lidl and Aldi win on frozen fillets.

How much fish per person for a barbecue?

Plan 150–200g of fish per person as a main, a little more for whole fish because of the head and bones. A 300g whole trout feeds one generously or two as part of a mixed spread, so a fish barbecue for four needs roughly 700–800g of edible portions.

Does Eini track fish promotions?

Yes. Eini's algorithm follows fish Aktionen across Coop, Migros, Lidl, Aldi, Denner and Aligro and flags them against your meal plan. Eini is free to download, with a premium subscription (CHF 1.00/week); the promotion tracking that spots a cheap fish week is part of what it does.

Plan smarter, spend less with Eini.

Real prices from Coop, Migros, Lidl, Aldi, Denner & Aligro. Smart meal plans. Automatic grocery lists.

Download