Fish is not straightforwardly good or bad for kidney stones. It depends on the type of stone you form, the kind of fish you eat, and how much you consume. For people with a history of uric acid stones, fish is one of the higher-risk animal proteins because of its purine content. For calcium oxalate stone formers, fish appears slightly better than red meat but still contributes to stone risk when eaten in excess. The general recommendation for stone-prone individuals is to keep all animal protein, including fish, to 6 ounces or less per day.
How Animal Protein Drives Stone Formation
All animal protein, whether it comes from beef, chicken, or fish, generates acid when your body breaks it down. That acid load does three things that promote kidney stones: it increases the amount of calcium your kidneys excrete into urine, it reduces citrate (a natural stone inhibitor) in your urine, and it lowers urinary pH, which allows uric acid to crystallize more easily. Plant-based proteins produce far less of this acid load, which is why shifting some of your protein intake toward beans, lentils, or tofu is a common dietary strategy for stone prevention.
Fish and Uric Acid Stones
If you’ve had uric acid stones, fish deserves extra caution. A metabolic comparison study found that fish raised urinary uric acid levels more than beef or chicken: 741 milligrams per day for fish, compared to 638 for beef and 641 for chicken. That difference comes from fish’s higher purine content. Purines are compounds your body converts into uric acid, and when uric acid concentrations climb in urine, crystals can form.
Certain fish and shellfish are especially high in purines. The National Kidney Foundation flags anchovies, sardines, herring, tuna, and codfish as varieties to avoid if you form uric acid stones. Shellfish like scallops, mussels, lobster, shrimp, and oysters also fall into the high-purine category. These aren’t foods you need to eliminate from your life permanently, but they should be limited if uric acid stones are your concern.
Fish and Calcium Oxalate Stones
Calcium oxalate is the most common type of kidney stone. Here, fish fares somewhat better than red meat. In the same comparative study, the saturation index for calcium oxalate (a measure of how likely crystals are to form in urine) was highest for beef at 2.48, compared to 1.79 for fish and 1.67 for chicken. That difference between beef and fish was not statistically significant, meaning fish is modestly better but not dramatically so. The researchers concluded that stone formers should limit all animal proteins, including fish, rather than simply swapping red meat for seafood and calling it a day.
The Sodium Problem With Processed Fish
Canned, smoked, and cured fish products often carry high sodium levels, and sodium is one of the more potent dietary drivers of kidney stones. A large study of over 78,000 women found that higher sodium intake increased the risk of developing kidney stones by 11% to 61%, depending on how much sodium was consumed. The mechanism is straightforward: excess sodium forces your kidneys to excrete more calcium into your urine, and that extra calcium can bind with oxalate to form stones.
If you eat fish regularly, fresh or frozen varieties prepared at home with minimal salt are a better choice than canned tuna packed in brine, smoked salmon, or pickled herring. Even a modest difference matters. In the same study, women who developed new stones consumed an average of 2,577 milligrams of sodium daily, just 60 milligrams more than those who didn’t. Small, consistent sodium reductions add up over time.
Omega-3s May Offer Some Protection
Fish does have one potential advantage for stone formers. Omega-3 fatty acids, found in high concentrations in salmon, mackerel, and sardines, may help reduce urinary calcium excretion. The mechanism involves prostaglandins, hormone-like substances that influence how much calcium your kidneys release into urine. Omega-3s alter prostaglandin production in a way that could lower calcium levels in urine, which is relevant for people who form stones because of hypercalciuria (chronically high urinary calcium). This area of research is still limited, and omega-3s alone are unlikely to prevent stones, but they represent a genuine upside of including some fish in your diet rather than relying entirely on red meat for protein.
Vitamin D in Fatty Fish: A Double-Edged Sword
Salmon and other fatty fish are among the richest food sources of vitamin D, which is essential for bone health and dozens of other functions. But for stone-prone individuals, very high vitamin D intake can backfire. Excess vitamin D increases calcium absorption from your gut, which can raise both blood calcium and urinary calcium levels. When urinary calcium climbs too high, stone risk goes up. This is more of a concern with vitamin D supplements than with food alone, since you’d need to eat an unrealistic amount of salmon to push your levels into the danger zone. Still, if you’re already supplementing vitamin D and eating fatty fish frequently, it’s worth keeping an eye on the total.
How Much Fish Is Safe
The National Kidney Foundation recommends that people prone to kidney stones keep total animal protein between 0.8 and 1 gram per kilogram of body weight per day. For a 170-pound person, that translates to roughly 62 to 77 grams of protein. More specific guidance suggests capping animal protein sources (lean meats, poultry, and fish combined) at 6 ounces per day. A typical salmon fillet is around 6 ounces, so one serving could use up your entire daily animal protein allowance.
That doesn’t mean you should avoid fish entirely. It means treating it as one component of a varied diet rather than a daily staple eaten in large portions. A 3- to 4-ounce serving of fish a few times per week, paired with plant-based protein sources on other days, keeps you within the recommended range while still letting you benefit from the nutrients fish provides.
Best and Worst Choices for Stone Formers
- Lower-risk options: Fresh or frozen white fish like tilapia, halibut, or cod (in moderate portions), prepared with minimal salt. These are lower in purines than oily fish and shellfish.
- Moderate-risk options: Salmon and trout provide omega-3s but contain more purines and vitamin D. Reasonable in small portions.
- Higher-risk options: Anchovies, sardines, herring, mussels, scallops, shrimp, and lobster are high in purines and should be limited, especially for uric acid stone formers.
- Avoid or minimize: Canned fish in brine, smoked fish, and other sodium-heavy preparations. The sodium content alone can increase stone risk regardless of the fish type.
The type of kidney stone you form matters more than any single food. If you’ve passed a stone, ask to have it analyzed. Knowing whether you form calcium oxalate, uric acid, or another type of stone lets you tailor your diet with far more precision than following generic advice about fish.

