Best Foods for Osteoporosis

Nutrition guidelines for osteoporosis

Nutrition has an important part to play in managing your osteoporosis. Prevention is essential if you at risk of bone loss. Eating the right foods can help protect your bones and help to reduce your risk of breaking a bone.

When it comes to the best foods for osteoporosis, a balanced, healthy diet is what is required. The good news is that eating the right foods can make a big difference. Here, we share the top five foods to eat when you have osteoporosis or Osteopenia or both. These foods have vitamins and minerals that can help to keep your bones healthy.

Calcium and vitamin D play a crucial role in maintaining bone health. Make sure your diet includes plenty of calcium and vitamin D rich foods. Add in lots of fruit and leafy greens, plus fish, meat, and fortified foods to give yourself the best chance of healthy bones.

It is also important to be aware of the foods that should be limited or avoided altogether, Caffeine, excess alcohol, salty foods, wheat bran and carbonated sodas. These foods all negatively affect how well your body absorbs the essential nutrients it needs. So, be careful about how much you take of these foods.

IOS Info Icon

Top five foods for maintaining good bone health

Curve BG

Dairy products:

Calcium is essential for healthy bones and Dairy products are the best source of calcium. Both full-fat and low-fat milk varieties, along with yoghurt and cheeses, are excellent choices when considering bone health. Fortified milks, which contain Calcium and Vitamin D, play a significant part in nutrition and maintenance of good bone health.
Other calcium rich food sources are available if you are lactose, such as green leafy vegetables, nuts, seeds, dried fruits and fortified tofu, soya, rice, and oat drinks are alternatives.
We have specific guidance for vegans further down this page.


Fruits and vegetables:

Calcium-packed leafy green vegetables should be a mainstay of your diet. Choose from collard greens, broccoli, curly kale, and okra. Green and white cabbage are also great for bones. However, a word of warning about spinach. Although spinach is very nutritious, it is high in oxalates. This type of acid makes it harder for the body to absorb calcium. Therefore spinach is best avoided for people with osteoporosis, who need to increase their calcium intake.
Magnesium is another essential nutrient for bone health. You can get magnesium from potatoes, raisins, and tomato products.
Tomatoes are also a good source of potassium, which is crucial for healthy bones. To add a bit of potassium variety to your diet, include bananas, oranges, orange juice and prunes. Grapefruits, strawberries, pineapples, peppers, and oranges are all good sources of Vitamin C.



Fatty fish varieties such as salmon, mackerel, tuna, and sardines are a great source of vitamin D. This vitamin is vital to bone health as it helps the body absorb calcium. The sun’s UV rays trigger the production of vitamin D in your skin. However, in sun-starved Ireland, getting enough can be a challenge. Fortified milk, some margarine spreads, and egg yolk are good food sources of vitamin D.
Furthermore, canned salmon and sardines have calcium and vitamin D. As part of the cooking process, small bones are included in canned varieties. Including mackerel and halibut in your osteoporosis diet ensures you get plenty of vitamin K.


Meat and high protein foods:

People with low protein diets are at increased risk of breaking a bone. Protein is necessary to maintain healthy tissue, including bones.
Meat, seafood, and poultry are excellent sources of protein. Eggs, cheese, beans, and dairy products are also good protein-rich choices.


Fortified foods:

Calcium and vitamin D are often added to certain brands of juices, milk, breakfast cereals and sliced bread. This increases the options for those with bone loss since it is difficult to get Vitamin D from the sun.
Non-dairy milk alternatives such as soya milk and rice milk also come in fortified versions. However, be sure to check the labels before you buy, as the amounts of calcium can vary.

I am a vegan. What foods should I be eating to maintain good bone health?

Before looking at what foods you eat, the Irish Osteoporosis Society (IOS) would recommend that you get a DXA scan to check to see if you have bone loss already, as vegans are at a higher risk of bone loss. For vegans, getting enough calcium and vitamin D from food sources can be a struggle. it is very important that you do not go over 40 grams of fibre daily.

Non-dairy options that can contain Calcium and/or Vitamin D

  • fortified soya, rice, and oat drinks
  • calcium-set tofu
  • sesame seeds and tahini
  • beans and pulses such as lentils, chickpeas, and green beans
  • sliced bread with added calcium
  • nuts – especially almonds, hazelnuts, and Brazil nuts
  • dried fruit such as raisins, prunes, figs, and dried apricots.


The vegan diet tends to contain few food sources of vitamin D. Exposure to sunlight will be important for vegans; however, be sure to cover up after 15 minutes maximum a day and apply sunscreen to protect your skin. No one should try to get Vitamin D from the sun if they burn easily. Vegans can also select margarine fat spreads, breakfast cereals and soya drinks with added vitamin D. The only time we recommend calcium and Vitamin D or just vitamin D supplements, is when a person cannot get enough through food, which many vegans can be in this category.

For help

If you are worried about your risk of developing osteoporosis, use these nutritional guidelines to help decrease your risk of fracturing bones (breaking bones).

For more information about the best foods for osteoporosis, contact the national helpline on (01) 637 5050. Open from 9.30 am to 4.45 pm Monday to Friday, the team can provide expert help and advice.

If you are concerned about developing osteoporosis, then take the risk test, here.