What to Eat With Kidney Stones (and What to Avoid)

If you’ve had a kidney stone, your diet is one of the most powerful tools you have to prevent another one. About 65 to 70% of kidney stones are calcium-based, mostly calcium oxalate, which means the foods you choose directly affect whether crystals form in your kidneys. The good news: you don’t need a radically restrictive diet. A few targeted changes to what you eat and drink can significantly lower your risk.

Why Your Stone Type Matters

Not all kidney stones form the same way, and the ideal diet depends partly on what your stones are made of. Calcium oxalate stones are by far the most common, making up 35 to 70% of all cases. Calcium phosphate stones account for 5 to 20%, uric acid stones about 10%, and infection-related struvite stones roughly 15%. If you’ve had a stone analyzed, that information helps you fine-tune your eating. If you haven’t, the advice below covers the most common scenarios and will benefit nearly all stone formers.

Drink Enough Fluid to Produce Dilute Urine

Before anything on your plate matters, hydration comes first. You should aim to drink up to 3 liters of fluid throughout the day, every day. That’s about 12 to 13 cups. The goal is to keep your urine dilute enough that minerals can’t concentrate and crystallize. Water is ideal, but other fluids count too. A simple check: if your urine is pale yellow or nearly clear, you’re on track.

Eat Calcium-Rich Foods (Yes, Really)

This is the single most counterintuitive piece of advice for calcium stone formers: do not cut calcium from your diet. Dietary calcium actually protects you. When you eat calcium-containing foods alongside a meal, the calcium binds to oxalate in your gut before either one reaches your kidneys. That bound pair passes harmlessly through your digestive system instead of being absorbed into your bloodstream and filtered through your kidneys.

The key factor isn’t how much oxalate you eat in absolute terms. It’s the ratio of calcium to oxalate in your gut at the time of a meal. If you skip dairy or other calcium sources, more oxalate gets absorbed and ends up in your urine, which raises your stone risk. Good sources include yogurt, milk, cheese, calcium-fortified orange juice, calcium-fortified cereals, and certain vegetables like kale and broccoli. The timing matters: eat your calcium-rich foods with meals, not between them, so the calcium and oxalate meet in the digestive tract at the same time.

Calcium supplements are a different story. Supplements taken between meals don’t have oxalate to bind with, so the extra calcium just gets filtered through your kidneys. If you take a supplement, take it with food.

Foods High in Oxalate to Watch

You don’t need to eliminate every trace of oxalate from your diet, but knowing which foods pack the most helps you make smart choices. Spinach is in a league of its own: half a cup of cooked spinach contains about 547 mg of oxalate, and even a cup of raw spinach has 316 mg. Most other high-oxalate foods fall well below that, but they add up across a day.

Here are some of the biggest contributors per serving:

  • Spinach (cooked): 547 mg per half cup
  • Buckwheat groats: 133 mg per cup
  • Wheat berries (cooked): 98 mg per cup
  • Navy beans (canned): 96 mg per half cup
  • Baked potato (with skin): 92 mg per potato
  • Beets (canned): 76 mg per half cup
  • Almonds: 72 mg per ounce
  • Dark chocolate: 68 mg per 1.5 ounces
  • Cashews: 64 mg per ounce
  • Refried beans: 60 mg per half cup
  • Plant-based burger patties: 58 mg per patty
  • Quinoa (cooked): 54 mg per cup
  • Sweet potato: 54 mg per half cup

You don’t have to avoid all of these forever. The practical move is to pair high-oxalate foods with a calcium source at the same meal. A spinach salad with cheese, or a sweet potato alongside yogurt, lets the calcium do its job in your gut. Reserve your strictest limits for spinach, which is so high in oxalate that pairing alone may not fully compensate.

Cut Back on Sodium

Sodium has a direct, proportional effect on how much calcium your kidneys excrete. The more salt you eat, the more calcium ends up in your urine, and that calcium is now available to form stones. The mechanism is built into how your kidneys handle salt: when they flush out sodium, they lose calcium alongside it.

For stone prevention, aim for 1,500 mg of sodium per day or less. Most people consume well over double that, largely from processed and restaurant foods. Bread, deli meats, canned soups, frozen meals, cheese, and condiments are common culprits. Cooking at home with fresh ingredients and seasoning with herbs, spices, or lemon instead of salt makes a measurable difference in your urine chemistry. Reading labels for sodium content is one of the highest-impact habits a stone former can build.

Moderate Animal Protein

Animal protein creates multiple problems for stone formers at once. It makes your urine more acidic, which promotes both uric acid and calcium stone formation. It lowers citrate levels in urine (citrate is a natural stone inhibitor). And the purines found in meat and fish break down into uric acid, which raises uric acid levels in both your blood and urine.

Fish is particularly notable here. Compared to beef or chicken, fish delivers a higher purine load per serving, and a larger proportion of those purines end up as uric acid in your urine. The purine bioavailability of fish is about 66%, versus 47% for beef and 42% for chicken. That doesn’t mean you need to avoid fish entirely, but if you’re a heavy fish eater with uric acid stones, scaling back is worth considering.

A reasonable approach is to treat animal protein as a side dish rather than the center of every meal. Fill more of your plate with vegetables, whole grains, and legumes (choosing lower-oxalate options when possible). This naturally reduces your acid load and purine intake without requiring you to go vegetarian.

Add More Citrus

Citrate in your urine acts as a natural defense against stones. It binds to calcium, preventing it from linking up with oxalate or phosphate to form crystals. One of the easiest ways to boost urinary citrate is through citrus. Drinking half a cup of lemon juice concentrate diluted in water each day, or the juice of two lemons, has been shown to increase urine citrate and likely reduce stone risk. Lemonade made with real lemons (not powdered mix) is a practical daily option.

Oranges and orange juice also contribute citrate, along with potassium, which independently helps. Foods rich in both potassium and magnesium, like bananas, avocados, and many fruits, support the same protective chemistry by raising urine pH and helping citrate do its job.

Be Careful With Vitamin C Supplements

Your body converts excess vitamin C into oxalate. At supplement doses, this becomes a real concern. Taking 1,000 mg per day of supplemental vitamin C has been shown to increase 24-hour urinary oxalate from 31 mg to 50 mg, a jump of more than 60%. At 2,000 mg per day, the increase is even steeper. Vitamin C from food (oranges, strawberries, bell peppers) doesn’t reach these levels and isn’t a concern. If you’re taking a high-dose vitamin C supplement, this is worth discussing with whoever manages your stone prevention.

A Day of Eating for Stone Prevention

Putting this together doesn’t require exotic ingredients or complicated meal planning. A typical day might look like oatmeal with milk and blueberries for breakfast, a sandwich on whole wheat bread with turkey, lettuce, and a side of yogurt for lunch, and grilled chicken with roasted broccoli and rice for dinner. Snack on an orange or a banana. Drink water steadily throughout the day, and add lemon juice to a glass or two.

The patterns that matter most are consistent: drink plenty of fluid, eat calcium with your meals, go easy on salt and large portions of meat, limit the very highest oxalate foods, and get citrus into your routine. None of these changes are drastic on their own, but together they shift your urine chemistry in a direction that makes stones far less likely to form.