← Guides

How many calories are in fish?

100 g (3.5 oz) of lean white fish is about 85–100 kcal; the same weight of salmon is about 205 kcal. “Fish” is not one number. A 150 g fillet can be 140 kcal or 330 depending on nothing but what was caught.

Per portion

Portion Calories Protein Carbs Fat
100 g (3.5 oz) raw cod, pomfret, tilapia or rohu 85–100 kcal 18–20 g 0 g 1–2 g
150 g white fillet, baked or steamed plain ~140 kcal 29 g 0 g 2 g
100 g raw farmed salmon ~205 kcal 20 g 0 g 13 g
150 g salmon fillet, grilled ~330 kcal 32 g 0 g 21 g
100 g mackerel, depending on species 110–210 kcal 19–21 g 0 g 3–14 g
100 g tinned tuna in water, drained ~120 kcal 26 g 0 g 1 g
100 g tinned sardines in oil, drained ~210 kcal 25 g 0 g 11 g
100 g battered white fish, deep-fried 230–280 kcal 15–18 g 12–16 g 14–18 g

What changes the number

Species, by a factor of two or three. Protein is nearly constant across the counter at 18–22 g per 100 g, so every calorie of difference is oil in the flesh. Cod, haddock, sole, tilapia, pomfret and rohu run 1–2% fat. Salmon, mackerel, herring, sardine and trout run 8–15%.

Which mackerel, which salmon. One name covers very different fish: Indian mackerel is nearer 110 kcal per 100 g, Atlantic mackerel around 200. Farmed salmon is fattier than wild, where sockeye can be as low as 130.

Batter, which is where a lean fish stops being lean. A 100 g piece of white fish at 85 kcal becomes 230–280 battered and deep-fried, and a chip-shop fillet of 170 g can clear 450. Most of that is flour and oil, not fish. A rava shallow-fry is gentler at 160–200 per 100 g; grilling or baking with a teaspoon of oil adds about 40.

The tin and the draining. Oil-packed sardines or tuna eaten with their oil pass 300 kcal per 100 g; drained, nearer 200. Water-packed tuna lands near 120. Draining does most of the work and is the step people skip.

Where it fits in a deficit

Lean white fish sits at the top of the protein-per-calorie table at roughly 25 g per 100 kcal — beaten only by prawns, and well clear of any cut of mutton or lamb. For eating less without losing muscle it is as efficient as food gets.

The honest limitation is that it is not filling by weight. A 150 g cod fillet is a 140 kcal meal and eats like a starter; it needs potatoes, rice or a pile of vegetables for volume around it, which is a meal-planning problem rather than a calorie one.

The leanest fish is not the best fish

The long-chain omega-3 that fish is recommended for lives in the very fat that makes salmon, mackerel and sardines expensive. Cod has little of it. If you eat fish twice a week, choosing cod every time to save 120 kcal trades away most of the point — and 100 g of sardines at 210 kcal is the better buy, soft bones included, which are a real calcium source.

The reverse holds too: if fish is your daily protein and the total is tight, white fish is the one you can eat 200 g of. Lean fish on ordinary days, oily fish once or twice a week, counted properly.


Figures are typical values and vary by variety, size and preparation. General information, not medical advice.