⚠️ Not medical advice. This article presents publicly available USDA FoodData Central data and FDA/EPA advisories. It is general information, not medical, nutritional, or training advice. See the full medical & nutrition disclaimer.
Affiliate disclosure: Some links in this article go to Amazon. As an Amazon Associate, the site earns from qualifying purchases — at no extra cost to you. Editorial choices are not influenced by affiliate relationships. Full policy.

Quick Answer

  • Top 5 by protein: Yellowfin tuna (29.2 g), anchovies (28.9 g), sockeye salmon (26.5 g), snapper (26.3 g), tilapia (26.2 g) — all per 100 g cooked.
  • Top 3 for lean protein: Cod (21.7 g protein per 100 kcal), mahi-mahi (21.8 g), canned light tuna (22.6 g).
  • Best budget option: Canned skipjack tuna — ~19.4 g protein per 100 g at $1–3 per can.
  • What matters most: Total daily protein intake of 1.6–2.2 g per kg body weight (Morton et al., BJSM, 2018), not the species on your plate. All 20 fish below deliver complete protein with all essential amino acids.

Why This Ranking Exists

"Which fish has the most protein?" is one of the most searched seafood questions online. Most answers are vague, cite no sources, or list 5–6 species without context. This article ranks 20 species using USDA FoodData Central entries (SR Legacy and Foundation Foods), adds FDA/EPA mercury safety categories, and provides three different rankings depending on your goal: maximum protein, maximum protein per calorie (for cutting), or maximum protein per dollar (for budget).

A note before the data: species differences are real but modest. The range across all 20 species is roughly 18–29 g of protein per 100 g cooked. That is a meaningful but not dramatic difference. What drives muscle gain, weight management, or general health outcomes is total daily protein intake, not the species on any single plate. For the evidence behind that statement, see Best Fish for Muscle Gain.

Ranking 1: Protein per 100 g (Cooked)

All values are per 100 g cooked weight from USDA FoodData Central. FDC IDs are listed in the sources section for verification. Mercury categories are from the FDA/EPA joint advisory "Advice About Eating Fish."

# Fish (100 g cooked) Protein (g) Calories Fat (g) EPA+DHA (mg) Mercury
1Yellowfin Tuna29.21300.6~1,200Good Choice
2Anchovies (canned, oil, drained)28.92109.72,050Best Choice
3Sockeye Salmon (wild)26.51565.6859Best Choice
4Snapper26.31281.7320Good Choice
5Tilapia26.21282.7135Best Choice
6Sardines (canned, oil, drained)24.620811.5~982Best Choice
7Atlantic Mackerel23.926217.81,203Best Choice
8Rainbow Trout (farmed)23.81687.4~800Best Choice
9Mahi-Mahi23.71090.9139Good Choice
10Alaska Pollock23.51111.2~236Best Choice
11Swordfish23.51727.9899Avoid*
12Atlantic Herring23.020311.62,010Best Choice
13Atlantic Cod22.81050.9158Best Choice
14Shrimp22.81191.7~195Best Choice
15Flounder/Sole22.61171.5~300Best Choice
16Halibut22.51111.6235Good Choice
17Atlantic Salmon (farmed)22.120612.42,147Best Choice
18Haddock20.0900.6160Best Choice
19Canned Light Tuna (water, drained)19.4861.0~270Best Choice
20Catfish (farmed)18.41447.2~119Best Choice

*Swordfish: FDA/EPA places this species in the Avoid category for pregnant women, breastfeeding women, and children due to high methylmercury. General adults may consume occasionally, but it should not be a regular protein source. Values marked with ~ are approximate based on multiple USDA data sources.

Yellowfin tuna tops the list at 29.2 g protein per 100 g, but the practical difference between #1 and #15 is just 6.6 g — less than a single egg. Species selection matters less than eating enough total protein from any of these sources.

Ranking 2: Protein per Calorie (Best for Cutting)

If you are in a caloric deficit — whether for weight loss, a bodybuilding cut, or managing calories on GLP-1 medication — the ratio of protein to total calories matters more than absolute protein content. This ranking divides protein by calories to show which fish give you the most muscle-building nutrient per unit of energy.

# Fish Protein (g) Calories g Protein per 100 kcal
1Canned Light Tuna19.48622.6
2Yellowfin Tuna29.213022.4
3Haddock20.09022.2
4Atlantic Cod22.810521.7
5Mahi-Mahi23.710921.8
6Alaska Pollock23.511121.2
7Snapper26.312820.5
8Tilapia26.212820.5
9Halibut22.511120.3
10Flounder/Sole22.611719.3

Top 10 shown. White/lean fish dominate this ranking because their low fat content keeps calories down while protein stays high. For the full science behind protein needs during GLP-1 therapy, see Fish for GLP-1 Users.

Ranking 3: Protein per Dollar (Best for Budget)

Approximate US retail prices as of early 2026 (USDA ERS, SeafoodSource). Prices vary by region, season, and retailer. Canned products are priced per drained weight equivalent.

# Fish Approx. Price Protein/100 g Value Rating
1Canned Light Tuna$1–3/can19.4 gBest Value
2Sardines (canned)$2–5/can24.6 gBest Value
3Tilapia (frozen)$3–6/lb26.2 gBest Value
4Alaska Pollock (frozen)$3–6/lb23.5 gBest Value
5Catfish (US farmed)$4–7/lb18.4 gGood Value
6Atlantic Mackerel$5–8/lb23.9 gGood Value
7Shrimp (frozen)$6–12/lb22.8 gGood Value
8Atlantic Salmon (farmed)$8–14/lb22.1 gMid-Range
9Wild Sockeye Salmon$12–20/lb26.5 gPremium
10Halibut$20–30/lb22.5 gPremium

Prices are approximate US retail ranges as of early 2026 based on USDA ERS data and SeafoodSource market reports. Actual prices vary significantly by location and season.

Mercury Safety: Which High-Protein Fish Are Safest?

The FDA/EPA "Advice About Eating Fish" divides species into three categories based on methylmercury levels. This matters because some of the highest-protein fish (yellowfin tuna, swordfish) carry higher mercury loads.

  • Best Choices (2–3 servings/week): Salmon, tilapia, cod, sardines, anchovies, shrimp, pollock, catfish, herring, Atlantic mackerel, trout, haddock, flounder/sole, canned light tuna.
  • Good Choices (1 serving/week): Yellowfin tuna, halibut, mahi-mahi, snapper.
  • Avoid (pregnant women, breastfeeding women, children): Swordfish, king mackerel, shark, marlin, bigeye tuna, tilefish (Gulf of Mexico), orange roughy.

For species-level mercury data and the full FDA/EPA chart, see the mercury in fish guide.

How to Hit 30 g Protein per Meal with Fish

Resistance-training research suggests roughly 25–40 g of protein per meal for near-maximal muscle protein synthesis (Witard et al., Nutrients, 2016). Here is what that looks like with fish:

  • 4 oz (113 g) yellowfin tuna steak = ~33 g protein
  • 5 oz (142 g) cod fillet = ~32 g protein
  • 5 oz can of tuna in water (drained) = ~30–37 g protein
  • 4.5 oz (128 g) tilapia fillet = ~34 g protein
  • 5 oz (142 g) salmon fillet = ~31 g protein
  • 1 can sardines (3.75 oz) + 2 eggs = ~32 g protein

A digital kitchen scale removes the guesswork from portion sizing.

Canned vs Fresh: Does It Matter for Protein?

No. The canning process (thermal sterilization) does not significantly degrade protein. USDA data confirms:

  • Fresh yellowfin tuna (cooked): 29.2 g protein / 100 g
  • Canned light tuna (water, drained): 19.4 g protein / 100 g — the difference reflects that canned skipjack is a different species (smaller, lower protein) than fresh yellowfin, not a canning loss.
  • Fresh sardines vs canned sardines: protein is comparable at 24–25 g / 100 g.

Canned fish has three practical advantages: it is shelf-stable, portion-controlled, and typically cheaper per gram of protein than fresh. A 5 oz can of tuna in water is one of the best protein-per-dollar meals in any US supermarket.

Frequently Asked Questions

Which fish has the most protein?

Yellowfin tuna leads at 29.2 g protein per 100 g cooked (USDA FDC 172006), followed by anchovies at 28.9 g and sockeye salmon at 26.5 g. However, differences between the top 10 species are modest (23–29 g range), and total daily protein intake matters more than any single food choice.

What is the best high-protein fish for weight loss?

For weight loss, protein-per-calorie ratio matters more than total protein. Cod (22.8 g protein in 105 kcal), mahi-mahi (23.7 g in 109 kcal), and canned light tuna (19.4 g in 86 kcal) deliver the most protein with the fewest calories. All three are also FDA Best Choices for low mercury.

How much protein is in a serving of fish?

A standard 3 oz (85 g) cooked serving provides roughly 16–25 g of protein depending on species. A 6 oz (170 g) portion — common for an entree — delivers 32–50 g, which exceeds the per-meal protein threshold (25–40 g) recommended in resistance-training research.

Is canned fish as high in protein as fresh?

Yes. The canning process does not significantly reduce protein content. Canned light tuna in water provides 19.4 g protein per 100 g (USDA FDC 173709), and canned sardines provide 24.6 g per 100 g (USDA FDC 175139). Canned fish is also shelf-stable and typically cheaper per gram of protein than fresh.

What is the cheapest high-protein fish?

Canned skipjack tuna ($1–3 per can) and canned sardines ($2–5 per can) are the most affordable high-protein fish options in the US. A single 5 oz can of tuna in water delivers approximately 30–37 g of protein for under $3. Frozen tilapia and frozen Alaska pollock ($3–6/lb) are the cheapest fresh/frozen options.

Which high-protein fish are lowest in mercury?

According to the FDA/EPA advisory, the following high-protein fish are Best Choices (lowest mercury, safe 2–3 times per week): salmon, tilapia, cod, sardines, anchovies, shrimp, pollock, catfish, herring, Atlantic mackerel, trout, haddock, and flounder. Yellowfin tuna, halibut, mahi-mahi, and snapper are Good Choices (1 serving per week). Swordfish is in the Avoid category for pregnant women and children.

How much fish should I eat per day for protein?

The AHA recommends at least 2 servings of fish per week (~6 oz cooked total). For adults targeting 1.6–2.2 g protein per kg body weight for muscle gain, fish can contribute 1–2 meals per day as part of a varied protein intake. Rotate between low-mercury species and do not rely on a single species daily.

Is tilapia a good source of protein?

Yes. Tilapia provides 26.2 g of protein per 100 g cooked (USDA FDC 175177) — ranking 5th among 20 common species. It is also one of the most affordable fish ($3–6/lb), a FDA Best Choice for low mercury, and has a mild flavor. Its main limitation is very low omega-3 content (135 mg EPA+DHA per 100 g) compared to fatty fish like salmon or sardines.

Key Sources

Data sources

  1. USDA FoodData Central — fdc.nal.usda.gov. FDC IDs: yellowfin tuna (172006), anchovies (174183), sockeye salmon (173692), tilapia (175177), sardines (175139), mackerel (SR Legacy), trout (173718), mahi-mahi (171992), pollock (173681), swordfish (173704), herring (175117), cod (SR Legacy), shrimp (171971), halibut (174201), Atlantic salmon (175168), canned light tuna (173709), catfish (SR Legacy), haddock (SR Legacy), flounder (174197).
  2. FDA/EPA. "Advice About Eating Fish." fda.gov. Mercury categories: Best Choices, Good Choices, Avoid.
  3. FDA. "Nutrition Information for Cooked Seafood Purchased Raw." fda.gov.
  4. Morton RW et al. "A systematic review, meta-analysis and meta-regression of the effect of protein supplementation on resistance training-induced gains in muscle mass and strength in healthy adults." British Journal of Sports Medicine, 2018.
  5. Witard OC et al. "Protein Considerations for Optimising Skeletal Muscle Mass in Healthy Young and Older Adults." Nutrients, 2016;8(4):181.
  6. USDA ERS. "Food Price Outlook." ers.usda.gov. Seafood price trends 2025–2026.
  7. American Heart Association. "Fish and Omega-3 Fatty Acids." heart.org.

Related reading: Best Fish for Muscle Gain · Omega-3 Supplement Guide · Fish for GLP-1 Users · Mercury in Fish Guide · Farmed vs Wild Fish

Prof. Dr. Zayde Ayvaz

Prof. Dr. Zayde Ayvaz

Professor of Fisheries Industry Engineering at ÇOMÜ. Researches seafood nutritional composition, AI-driven quality assessment and sustainable blue food systems.