Guides · Rankings

The healthiest fish to eat, ranked

Six popular fish and shellfish sorted by our Nutrient Density Score, with a clear look at protein per calorie, fat quality, and sodium so you can see what each one earns.

7 min read

Original analysis by NutriVerdict

This guide is original NutriVerdict analysis. Nutrient figures are sourced from USDA FoodData Central, public domain. It is information, not medical or dietary advice.

Fish and shellfish are among the most efficient protein sources on the plate, but they are not interchangeable. Some deliver a lot of protein for very few calories. Others carry more fat, which changes their calorie count and their per-calorie score. Because our Nutrient Density Score measures nutrition relative to calories, leaner seafood tends to rank higher than oily fish, even though both have a place in a good diet. Below we rank six popular choices by their score, using values from the USDA FoodData Central reference dataset, and explain what the numbers mean.

The ranking at a glance

Every food here is graded per 100 grams, raw or drained where noted. The score is our relative 1 to 100 measure of nutrition per calorie. Higher is more nutrient-dense per calorie, not necessarily better for every meal.

RankFish or shellfishScoreProteinCaloriesSodium
1Blue mussels8611.9 g86286 mg
2Atlantic cod8417.8 g8254 mg
3Shrimp8320.1 g85119 mg
4Light tuna, canned in water7919.4 g86247 mg
5Sockeye salmon7422.2 g13178 mg
6Atlantic mackerel6218.6 g20590 mg

Why mussels top the list

Blue mussels reach a score of 86, the highest in this group. They carry only 86 calories per 100 grams, and while their protein is more modest at 11.9 grams, they pack a strong load of iron and minerals into those few calories. That combination of low energy and high micronutrient content is exactly what our per-calorie score rewards. The tradeoff is sodium: at 286 milligrams per 100 grams, mussels are the saltiest choice here, so they are worth watching if you are managing sodium.

Protein per calorie: where lean fish win

If you care most about protein for the fewest calories, the leaner white fish and shellfish lead. Shrimp delivers 20.1 grams of protein in just 85 calories, the best protein-to-calorie ratio in the group at roughly 0.24 grams per calorie. Canned light tuna is close behind at 19.4 grams in 86 calories, and Atlantic cod gives 17.8 grams in only 82 calories. These are the fish to reach for when the goal is lean protein volume rather than fat.

Sockeye salmon actually carries the most protein of any fish here, 22.2 grams per 100 grams, but it also carries 131 calories because of its natural fat. That larger calorie base pulls its per-calorie score down to 74 even though its absolute protein is the highest. This is the clearest example of how the score works: more fat means more calories, and more calories in the denominator means a lower density number.

Fat quality and why oily fish score lower

A lower score is not a knock on fat. Atlantic mackerel lands last at 62 precisely because it is the fattiest fish here, with 13.9 grams of fat and 205 calories per 100 grams. That fat is the reason oily fish are prized in the first place, and mackerel still supplies 18.6 grams of protein. Salmon tells the same story on a smaller scale. Our density score is a per-calorie measure, so it will always favor lean fish, but a plate that leans only on lean protein misses the fats that oily fish bring. Read the ranking as a map of efficiency, not a verdict on what belongs in your week.

Watching sodium across the group

Raw fish is naturally low in sodium, which is one reason fresh fillets fit a lower-sodium pattern well. Atlantic cod is the lightest here at just 54 milligrams per 100 grams, followed by sockeye salmon at 78. Processing and preserving raise the number. Canned tuna reaches 247 milligrams even after draining, and mussels top the list at 286. Choosing fresh over canned, and rinsing canned fish, are simple ways to keep sodium in check.

How to use this ranking

  • Chasing lean protein? Start with shrimp, cod, or canned light tuna, the three best protein-per-calorie picks in the group.
  • Watching sodium? Reach for fresh cod or salmon and go easy on canned tuna and mussels.
  • Want the fats? Salmon and mackerel score lower per calorie but earn their place through the fat that makes them worth eating.

For the full field of fish and shellfish, browse the seafood category, where you can sort every entry by score and compare portions side by side. No single number describes a whole diet, and this one is meant to help you choose well, not to rule any fish off the table.

Frequently asked questions

Why does salmon score lower than cod if salmon has more protein?

Our score measures nutrition per calorie. Sockeye salmon has 22.2 g of protein per 100 g, more than cod's 17.8 g, but salmon carries 131 calories to cod's 82 because of its natural fat. That larger calorie base lowers salmon's per-calorie score to 74 while cod reaches 84. It reflects efficiency per calorie, not the overall value of either fish.

Which fish here gives the most protein for the fewest calories?

Shrimp leads the group with 20.1 g of protein in just 85 calories, about 0.24 g of protein per calorie. Canned light tuna is close at 19.4 g in 86 calories, and Atlantic cod gives 17.8 g in 82 calories. These lean choices are the ones to reach for when the goal is protein volume rather than fat.

Is oily fish like mackerel a poor choice because it scores low?

No. Atlantic mackerel scores 62 because it is the fattiest fish here, with 13.9 g of fat and 205 calories per 100 g, and the score is a per-calorie measure. That fat is exactly why oily fish are valued. A low density score signals calorie density, not a judgment that the fish is unhealthy.

Which of these fish is lowest in sodium?

Fresh Atlantic cod is the lowest at 54 mg of sodium per 100 g, followed by sockeye salmon at 78 mg. Processing raises the number: canned light tuna reaches 247 mg even after draining, and blue mussels top the group at 286 mg. Choosing fresh over canned and rinsing canned fish helps keep sodium down.