Nutrition Tips

Best Foods for Heart Health: 12 Science-Backed Picks

Bright flat-lay of salmon, oats, berries, walnuts and olive oil on a white and green background

Twelve everyday foods can support a healthy heart — fatty fish, oats, berries, greens, nuts and olive oil. Here is what to eat more of, and what to limit.

Direct answer: The best foods for heart health are fatty fish, oats, berries, leafy greens, nuts, olive oil, beans, tomatoes, avocado, dark chocolate, garlic and whole grains. They supply fibre, healthy fats, potassium, magnesium and plant compounds that support healthy blood pressure and cholesterol, especially when they replace salty, sugary and heavily processed foods.


Grilled salmon fillet served with a fresh leafy green saladHeart health is not built on one miracle food. It comes from the overall pattern of what you eat most days: plenty of plants, enough fibre, healthy fats instead of saturated fat, and less salt, added sugar and ultra-processed food. That is good news, because it means small, steady swaps matter more than a perfect diet.

The twelve foods below are practical, affordable and easy to find in most shops. None of them needs to be eaten every day. Aim to include several of them across the week, keep portions sensible, and let them crowd out the foods that work against your heart. If you want to check how your current meals compare, you can review a day of eating with the nutrition tool and track your meals in the meal log.

Fish and Healthy Fats

1. Fatty fish

Salmon, sardines, mackerel and trout are rich in long-chain omega-3 fats, which help lower triglycerides and support a steady heart rhythm. Aim for two portions a week if you eat fish, about the size of your palm each time. Tinned sardines and mackerel are cheaper options with the same benefit. Grill, bake or steam fish rather than frying it in batter.

2. Olive oil

Extra-virgin olive oil is a staple of Mediterranean-style eating, a pattern linked in many large studies with better heart outcomes. Its monounsaturated fats help replace saturated fat, and its plant compounds add flavour without salt. Use it for dressings and gentle cooking, about one to two tablespoons a day as part of your total fat intake.

3. Avocado

Avocado provides monounsaturated fat, potassium and fibre in one food. Potassium helps balance the effect of sodium on blood pressure, while fibre slows digestion and helps you feel full. Half an avocado on wholegrain toast, in a salad or blended into a dressing is an easy portion. It is energy-dense, so a little goes a long way.

Fibre-Rich Staples

4. Oats

Oats contain beta-glucan, a soluble fibre that helps lower LDL cholesterol when eaten regularly as part of a balanced diet. A bowl of porridge with berries and nuts is a strong start to the day. Choose plain oats over sweetened instant sachets, and check the label for added sugar. Overnight oats with milk or yoghurt work well if mornings are busy.

5. Beans and lentils

Beans, chickpeas and lentils are high in soluble fibre, plant protein, folate and magnesium, with almost no fat. They help lower cholesterol and keep blood sugar steadier than refined starches. Add them to soups, stews, salads and wraps, or swap half the meat in a chilli or Bolognese for lentils. Rinse tinned beans to reduce salt.

6. Whole grains

Brown rice, wholewheat bread, barley, bulgur and wholegrain pasta keep the fibre and nutrients that refining removes. People who eat more whole grains tend to have lower heart risk than those who eat mostly white bread, white rice and pastries. Swap one refined grain a day at first — brown rice for white rice, or wholemeal bread for white bread — and build from there.


Bowl of oatmeal topped with mixed berries and walnutsFruits, Vegetables and Plant Compounds

7. Berries

Blueberries, strawberries, raspberries and blackberries are rich in anthocyanins, the pigments that give them their deep colour. These plant compounds are linked with healthier blood vessels and blood pressure. Fresh or frozen berries count equally, so frozen berries are a good budget choice. Add a handful to porridge, yoghurt or a salad.

8. Leafy greens

Spinach, kale, rocket and Swiss chard provide potassium, magnesium, folate and nitrates, which help blood vessels relax. A large handful of greens a day — in a salad, soup, stir-fry or smoothie-style soup — is a realistic target. Vary the greens you buy so you get a wider mix of nutrients, and wash them well before eating.

9. Tomatoes

Tomatoes provide lycopene, vitamin C and potassium. Lycopene is better absorbed from cooked tomatoes, so tomato sauces, soups and roasted tomatoes are useful as well as fresh ones. Choose low-salt passata or tinned tomatoes when you can, and add tomatoes to pasta, beans and grain bowls for colour and flavour without extra fat.

Everyday Flavour and Treats

10. Nuts and seeds

Walnuts, almonds, pistachios, flaxseed and chia seeds provide healthy fats, fibre, magnesium and plant sterols. A small handful of unsalted nuts a day — about 30 grams — is linked with better heart health in large population studies. Keep portions in check, because nuts are energy-dense, and choose unsalted versions over honey-roasted or salted ones.

11. Garlic

Garlic adds strong flavour without salt, sugar or fat, which makes it a useful tool for heart-friendly cooking. It contains sulphur compounds that may help blood pressure and cholesterol modestly when eaten regularly as part of an overall healthy diet. Crush or chop garlic and leave it for a few minutes before cooking to protect its active compounds.

12. Dark chocolate

Dark chocolate with at least 70 percent cocoa provides flavanols, plant compounds linked with healthier blood pressure and blood-vessel function. The benefit comes from small amounts — one or two small squares after a meal — not from a whole bar. Choose plain dark chocolate over milk chocolate and chocolate with added caramel or biscuit fillings.

Foods to Limit for Heart Health

No single food ruins heart health, but some foods make it harder to stay on track when eaten often. Limit processed meats such as sausages, bacon and salami, which are high in salt and saturated fat. Cut back on sugary drinks, pastries, fried takeaway foods and ready meals high in salt. Check labels for sodium and added sugar, cook more meals at home, and use herbs, spices, lemon and garlic for flavour instead of extra salt. Many of these foods also overlap with brain health, so the same swaps help in more than one way — see our guide to the best foods for brain health for the shared ground.

Key Takeaways

  • Eat the pattern, not one food: combine fish, oats, beans, whole grains, vegetables, fruit, nuts and olive oil across the week.
  • Fibre and healthy fats do the heavy lifting: oats, beans, greens and berries support cholesterol and blood pressure.
  • Two portions of oily fish a week is a simple, evidence-based target if you eat fish.
  • Swap, do not just add: replace salty and processed foods with these twelve picks where you can.
  • Small portions of treats count: a few squares of dark chocolate and a small handful of nuts are enough.
  • Track one week honestly with the nutrition and meal-log tools, then change one habit at a time.


This article was created and reviewed by NutriCounter editorial team.

← Back to Blog

FAQs

What is the single best food for heart health?
There is no single best food. Fatty fish, oats, berries, leafy greens, nuts and olive oil all support heart health in different ways, and the benefit comes from eating several of them regularly as part of an overall balanced diet rather than relying on one item.
How many servings of oily fish should I eat a week?
Two portions a week is a widely used target, each about the size of your palm. Salmon, sardines, mackerel and trout are good choices. If you do not eat fish, walnuts, flaxseed and chia seeds provide plant omega-3 fats, though they work differently in the body.
Are eggs bad for heart health?
For most healthy people, eggs in moderation are not a major concern, because dietary cholesterol has less effect on blood cholesterol than saturated fat does. Keep portions sensible, pair eggs with vegetables and whole grains, and ask your doctor for personal advice if you have high cholesterol or heart disease.
Can dark chocolate really help the heart?
In small amounts, dark chocolate with at least 70 percent cocoa can contribute flavanols linked with healthier blood pressure. The key is the portion: one or two small squares is enough, and it does not cancel out a diet high in salt, sugar and processed food.
What foods should I avoid for heart health?
Limit processed meats, sugary drinks, pastries, fried foods and very salty ready meals most of the time. These foods are high in salt, added sugar or saturated fat, and they crowd out the fibre-rich foods that protect the heart when eaten often.
How quickly can diet improve heart health?
Blood pressure and cholesterol can start to improve within weeks when you eat more fibre, cut salt and replace saturated fat with healthy fats. Lasting change takes months of steady habits, so focus on swaps you can keep rather than a short, strict diet.

Comments (0)

No comments yet. Be the first to share your thoughts!

Leave a comment

The information on this site is for general guidance only and is not medical advice. Please consult a qualified health professional before making changes to your diet, exercise, or health routine.