The foods most likely to cause kidney stones depend on the type of stone you’re forming, but a few categories show up repeatedly: high-sodium processed foods, excessive animal protein, sugary drinks, and for the most common stone type (calcium oxalate), foods extremely high in oxalates. Changing what you eat won’t dissolve stones you already have, but it can significantly reduce your risk of forming new ones.
High-Sodium Foods Are a Top Priority to Cut
Salt is one of the biggest dietary drivers of kidney stones, and it’s the one most people underestimate. When you eat a lot of sodium, your kidneys excrete more calcium into your urine. That extra calcium has nowhere to go and can crystallize into stones. The recommended limit is no more than 2,300 milligrams of sodium per day, which is roughly one teaspoon of table salt.
The problem is that most sodium doesn’t come from the salt shaker. It hides in restaurant meals, canned soups, deli meats, frozen dinners, chips, soy sauce, pizza, and bread. Even foods that don’t taste particularly salty can pack 600 to 1,000 milligrams per serving. If you’ve had a calcium-based kidney stone, checking sodium on nutrition labels is one of the simplest, highest-impact changes you can make.
Animal Protein in Large Amounts
Beef, chicken, pork, eggs, fish, shellfish, and dairy products all contain sulfur-rich amino acids. When your body breaks these down, they create an acid load that lowers your urine pH (making it more acidic) and reduces citrate, a natural compound in urine that helps prevent crystals from clumping together. Lower citrate plus more acidic urine is a recipe for both calcium stones and uric acid stones.
This doesn’t mean you need to stop eating meat entirely. The issue is portion size and frequency. A palm-sized serving of protein at a meal is reasonable. Eating large steaks, multiple eggs, and protein shakes all in the same day pushes your kidneys into stone-friendly territory. Organ meats like liver are especially high in purines, compounds that break down into uric acid, so they carry extra risk for uric acid stone formers.
High-Oxalate Foods and How to Handle Them
About 80% of kidney stones are calcium oxalate stones. Oxalate is a natural compound found in many plants, and when it reaches your kidneys in high concentrations, it can bind with calcium and form crystals. The highest-oxalate foods include spinach, rhubarb, beets, Swiss chard, nuts (especially almonds and cashews), wheat bran, and sweet potatoes.
You don’t need to eliminate every vegetable on this list. The practical strategy is to avoid eating large quantities of the very highest offenders (spinach and rhubarb stand out) and to pair oxalate-containing foods with calcium-rich foods at the same meal. When calcium and oxalate meet in your gut, they bind together and pass out in your stool instead of being absorbed into your bloodstream and filtered through your kidneys. This is why cutting calcium from your diet actually backfires: restricting dietary calcium enhances oxalate absorption, increasing the amount that reaches your urine and raising your stone risk.
So rather than avoiding cheese on a salad that contains some spinach, you’re better off keeping the cheese and moderating the spinach portion.
Sugary Drinks and Cola
Sodas, especially colas, contain phosphoric acid, which is linked to changes in urine chemistry that promote stone formation. Research has found that consuming soft drinks containing phosphoric acid significantly increases the risk of recurring kidney stones. Diet sodas aren’t off the hook either, since they still contain phosphoric acid and caffeine.
Sweetened drinks in general are a concern because high fructose corn syrup increases uric acid production. Fruit punches, sweetened iced teas, and energy drinks all fall into this category. Swapping these for water is the single most effective beverage change you can make. The American Urological Association recommends drinking enough fluid to produce at least 2.5 liters of urine per day, which translates to roughly 3 liters (about 100 ounces) of water for most people, more if you sweat heavily.
High-Dose Vitamin C Supplements
Your body converts excess vitamin C into oxalate, which then gets filtered through your kidneys. The vitamin C in food is not a concern. The problem is supplements, which can deliver 10 times or more of the daily requirement (90 mg for men, 75 mg for women) in a single pill. Harvard Health has flagged high-dose vitamin C supplements as a particular risk for men and for anyone with a history of calcium oxalate stones.
If you eat a reasonable amount of fruits and vegetables, you’re already getting enough vitamin C without a supplement. If you take one for other reasons, keeping the dose at or near the recommended daily amount is far safer than megadosing at 1,000 mg or above.
What Matters Most by Stone Type
Not all kidney stones form the same way, so the foods that matter most depend on your stone composition. If you’ve passed a stone and had it analyzed, use that information to prioritize.
- Calcium oxalate stones (the most common): Focus on reducing sodium, moderating high-oxalate foods, avoiding vitamin C megadoses, and eating adequate dietary calcium spread across meals.
- Uric acid stones: Limit animal protein, especially organ meats and shellfish. These stones form in acidic urine, so the acid load from excess protein is the main dietary trigger.
- Calcium phosphate stones: Sodium restriction is particularly important here, since excess sodium drives calcium excretion.
For all stone types, staying well hydrated and keeping sodium under 2,300 mg per day are the two universal recommendations. Diluted urine makes it harder for any crystal to form, regardless of its composition. If you’ve had more than one stone, a 24-hour urine test can pinpoint exactly which compounds are elevated in your urine, giving you a targeted list of what to change rather than guessing.

