Fish can be part of a kidney stone prevention diet, but the answer depends on the type of stone you’re prone to, the kind of fish you eat, and how it’s prepared. Fish offers some genuine protective benefits thanks to its omega-3 fatty acids, but it also carries risks, particularly for uric acid stones, because many species are high in purines. The net effect comes down to making smart choices about which fish you eat and how much.
How Fish Affects Calcium Oxalate Stones
Calcium oxalate stones are the most common type, and this is where fish shows its strongest advantage. The omega-3 fatty acids found in fatty fish (salmon, mackerel, sardines) have been shown to reduce two key risk factors: the amount of calcium and oxalate your kidneys excrete into urine. In a clinical trial published in The Journal of Urology, 30 days of omega-3 supplementation reduced urinary oxalate excretion significantly and lowered the overall risk of calcium oxalate crystal formation by 23%. The mechanism appears to involve changes in cell membranes that reduce how much oxalate gets transported into urine.
A metabolic comparison study found that fish produced a lower calcium oxalate saturation index (1.79) than beef (2.48), though the difference wasn’t quite statistically significant. Chicken came in lowest at 1.67. So while fish isn’t the absolute best protein choice for calcium oxalate stone formers, it’s meaningfully better than red meat.
The Uric Acid Stone Problem
If you form uric acid stones, fish requires more caution. Fish tends to be high in purines, compounds your body breaks down into uric acid. That same metabolic comparison study found fish produced significantly higher urinary uric acid (741 mg per day) than either beef (638 mg) or chicken (641 mg). Higher urinary uric acid means a greater chance of uric acid crystals forming in your kidneys.
Not all fish are equal here. Anchovies, sardines, herring, codfish, trout, and haddock are all classified as high-purine foods. Shellfish like crab, lobster, oysters, and shrimp fall into the moderate-purine category. The total purine content in seafood ranges enormously, from under 8 mg per 100 grams in some varieties to over 300 mg in anchovies. If you’re prone to uric acid stones, sticking to lower-purine options and keeping portions moderate is the practical move.
Fresh Fish vs. Canned Fish
How your fish is packaged matters more than most people realize, and the reason is sodium. High sodium intake increases the amount of calcium in your urine, which raises the risk of calcium-based stones. A 3-ounce serving of fresh tuna contains about 40 mg of sodium. The same amount of canned tuna packed in water jumps to 272 mg, nearly seven times more. Oil-packed canned tuna is similar at 247 mg.
If canned fish is your go-to, look for “no salt added” versions and rinse the fish before eating. This won’t eliminate the extra sodium entirely, but it helps. Fresh or frozen fish is the better choice when you have the option.
Fish vs. Other Animal Proteins
The National Institute of Diabetes and Digestive and Kidney Diseases lists fish and shellfish alongside beef, chicken, pork, and eggs as animal proteins that may increase kidney stone risk. That’s because all animal protein, regardless of source, creates an acid load in the body that promotes calcium loss through urine and can lower urinary citrate, a natural stone inhibitor.
That said, not all animal proteins carry the same risk profile. Beef produces the highest calcium oxalate saturation but lower uric acid excretion. Fish produces more uric acid but offers protective omega-3s that beef lacks. Chicken tends to score well on both measures. The practical takeaway: rotating your protein sources and including plant-based proteins (beans, lentils, tofu) in the mix gives you the best overall protection.
How Much Fish Is Safe
There’s no universal gram-per-day recommendation for fish intake specific to kidney stone prevention. The general guidance for stone formers is to limit total animal protein rather than eliminate it. Keeping portions to roughly the size of a deck of cards (about 3 ounces) per meal is a common benchmark. Two to three servings of fish per week fits comfortably within most dietary recommendations and provides enough omega-3s to offer protective benefits without overloading on purines or animal protein.
For people who want the omega-3 benefits without the purine load, fish oil supplements are an alternative worth considering. The clinical trial that showed a 23% reduction in calcium oxalate crystallization risk used a daily dose of 900 mg EPA and 600 mg DHA, amounts easily achieved with standard over-the-counter fish oil capsules. This route sidesteps the purine issue entirely since purines are found in the fish flesh, not the extracted oil.
Best and Worst Choices by Stone Type
- Calcium oxalate stones: Fatty fish like salmon are a good choice. Their omega-3 content actively lowers stone risk factors. Avoid pairing fish with high-oxalate sides like spinach or sweet potatoes.
- Uric acid stones: Skip high-purine fish (anchovies, sardines, herring, trout, haddock, codfish). Moderate-purine shellfish like shrimp or crab in small portions is a safer bet. Fish oil supplements offer omega-3 benefits without the purine cost.
- Both stone types: Choose fresh over canned to keep sodium low. Keep portions moderate. Balance fish meals with plant-based protein meals throughout the week.
Fish isn’t something you need to avoid entirely if you get kidney stones. It occupies a middle ground: better than red meat for most stone formers, potentially problematic for uric acid stone formers if you choose high-purine species, and genuinely protective when its omega-3 content is the focus. Knowing your stone type is the single most useful piece of information for deciding how much fish belongs on your plate.

