Eating, Diet, & Nutrition for Kidney Stones

Can what I eat help prevent future kidney stones?

You may be able to prevent future kidney stones by making changes in how much sodium, animal protein, calcium, or oxalate you consume. A dietitian who specializes in kidney stone prevention can help you plan meals.

You can make changes to what you eat based on the type of kidney stone you had. Details of the suggested changes follow this chart.

Type of kidney stone Helpful change in diet and nutrition
Calcium Oxalate Stones
  • Reduce sodium
  • Limit animal protein
  • Reduce oxalate
  • Get enough calcium from foods
Calcium Phosphate Stones
  • Reduce sodium
  • Reduce animal protein
  • Get enough calcium from foods
Uric Acid Stones
  • Limit animal protein

Reduce sodium

Talk with a health care professional about how much sodium should be in what you eat, especially if you had calcium oxalate stones or calcium phosphate stones.

Most Americans consume too much sodium. Sodium is a part of salt. Sodium is in many canned, packaged, and fast foods. Sodium is also in many condiments, seasonings, and meats. Your chance of developing kidney stones increases when you eat more sodium.

Dietary Guidelines for Americans 2015-2020 provides information on how much sodium an adult should have each day.2 If you have had calcium oxalate or calcium phosphate stones, you should follow this guideline even if you take medicine to prevent kidney stones.

Here are some tips to help reduce your sodium intake:

  • Check the Percent Daily Value (%DV) for sodium on Nutrition Facts label, found on many foods. Low in sodium is 5% or less and high in sodium is 20% or more.
  • Consider writing down how much sodium you consume each day.
  • When eating out, ask about the sodium content in the food.
  • Avoid processed and fast foods, canned soups and vegetables, and lunch meats.

Check labels for ingredients and hidden sodium, such as

  • sodium bicarbonate, the chemical name for baking soda
  • baking powder, which contains sodium bicarbonate and other chemicals
  • disodium phosphate
  • monosodium glutamate, or MSG
  • sodium alginate
  • sodium nitrate or nitrite
A photo of a woman and a man who are cooking a healthy meal in a kitchen.
To reduce sodium to help prevent kidney stones, avoid processed and fast foods, canned soups and vegetables, and lunch meats.

Limit animal protein

Eating animal protein may increase your chances of developing kidney stones.

A health care professional may tell you to limit eating animal protein, including

  • beef, chicken, and pork, especially organ meat
  • eggs
  • fish and shellfish
  • milk, cheese, and other dairy products

Although you may need to reduce how much animal protein you have each day, you still need to make sure you get enough. Talk with the health care professional about how much animal protein you should eat.

Consider replacing some of the meat and animal protein you would typically eat with some of these plant-based foods that are high in protein:

  • legumes such as beans, dried peas, lentils, and peanuts
  • soy foods, such as soy milk, soy nut butter, and tofu
  • nuts and nut products, such as almonds and almond butter, cashews and cashew butter, walnuts, and pistachios
  • sunflower seeds

IMPORTANT NOTE: If you have had calcium oxalate stones, avoid peanuts, soy foods, nuts and nut products, and sunflower seeds.

Reduce oxalate

You may want to avoid these foods to help reduce the amount of oxalate in your urine:

  • nuts and nut products
  • peanuts, which are legumes
  • rhubarb
  • spinach
  • wheat bran

Talk with a health care professional about other food sources of oxalate and how much oxalate should be in what you eat, especially if you have had calcium oxalate stones.

Get enough calcium

Talk with a health care professional about how much calcium you should eat, especially if you had calcium stones. Even though calcium sounds like it would be the cause of calcium stones, it’s not. Calcium from food does not increase your risk of calcium oxalate stones. In fact, if you had calcium oxalate stones, the health care professional may tell you to have calcium every day to help prevent kidney stones and support strong bones.

Foods that are high in calcium include dairy products, such as low-fat milk and yogurt, and lactose-free milk with calcium.

Plan meals to lose weight

Studies have shown that being overweight increases your risk of kidney stones, particularly uric acid stones. A dietitian can also help you plan meals to help lose weight. Studies show that eating healthy foods that are low in carbohydrates can further increase your risk of uric acid stones and should be avoided.

Studies have shown that the Dietary Approaches to Stop Hypertension (DASH) diet can reduce the risk of kidney stones. The DASH diet is high in fruits and vegetables, moderate in low-fat dairy products, and low in animal protein. Learn more about the DASH diet.3

Can drinking water help prevent or relieve kidney stones?

Drinking enough liquid is the most important thing you can do to prevent kidney stones. Unless you have kidney failure, health care professionals recommend that you drink six to eight, 8-ounce glasses a day. People with cystine stones may need to drink even more. Talk with a health care professional about how much liquid you should drink.


September 2016

This content is provided as a service of the National Institute of Diabetes and Digestive and Kidney Diseases (NIDDK), part of the National Institutes of Health. The NIDDK translates and disseminates research findings through its clearinghouses and education programs to increase knowledge and understanding about health and disease among patients, health professionals, and the public. Content produced by the NIDDK is carefully reviewed by NIDDK scientists and other experts.