The fourth most abundant mineral in the body, magnesium is required for the heart and circulation, for blood sugar balance, mood and sleep. Discover which foods are a useful source.


What is magnesium?

Magnesium is an important mineral, required by the body to maintain optimal health. It is one of the most abundant minerals and is essential for hundreds of biochemical reactions, including those responsible for maintaining heart and metabolic health. Despite its importance to health, studies suggest many of us – potentially 50 per cent – don’t get enough of this essential mineral.

Check out our Vitamins and Minerals Information Hub to learn more about key nutrients – from whether you’re getting enough iron to which are the best food sources of calcium.

Always speak to your GP or healthcare provider before taking a new supplement or if you are concerned about nutritional deficiencies.

Why do we need magnesium?

Approximately 60 per cent of magnesium is locked inside our bones, making it an important factor for bone strength and health. The remainder is utilised in soft tissues including the liver, muscles, heart and kidneys and the fluid inside these, known as intracellular fluid.

More like this

It is inside this fluid that magnesium participates in more than 300 biochemical reactions with roles ranging from protein synthesis, calcium balance, vitamin D formation to muscle contraction. Magnesium is essential for regulating heart rhythm and blood sugar (glucose) levels and it supports immune function.

Read more about the health benefits of magnesium.

How much magnesium do I need?

Daily UK recommendations for men and women are 300mg and 270mg respectively.

Can we have too much?

Too much magnesium from food doesn’t pose a problem for healthy people as any excess is excreted by the kidneys via the urine. However, taking high dose supplements may cause gut problems such as diarrhoea, nausea or stomach cramping. Guidance recommends that you not exceed a daily intake of 400mg.

What are the top food sources of magnesium?

Although found in a number of foods, including green leafy vegetables, nuts and seeds, unless you’re eating a varied diet you may not achieve the recommended daily amount of 270mg (women). Nutritional surveys support this, with reports of low magnesium levels among young adults in their 20s, especially women. Other aspects of our diet can affect how efficiently we absorb magnesium. These include high intakes of caffeine and zinc supplementation.

Foods high in magnesium

Ensure you’re getting adequate amounts of magnesium by including a wide selection of the following foods in your regular diet:

1. Seeds

Piles of different nuts and seeds

Seeds contain all the nutrients a plant needs to develop and grow, because of this they are extremely nutritious and make valuable contributions to your magnesium intake.
Amount of magnesium per 100g:

  • Flaxseed – 392mg
  • Sesame seeds – 370mg
  • Chia seeds – 335mg
  • Pumpkin seeds – 270mg

Increase your intake with recipes that use tahini, flaxseeds (linseed), pumpkin and chia.

2. Nuts

Convenient and nourishing, nuts are a tasty snack and despite being high in fat, make an important contribution to a healthy, balanced diet. Each nut has different nutritional credentials, with some nuts being richer in certain nutrients than others.
Amount of magnesium per 100g:

  • Almonds – 270mg
  • Brazil nuts – 254mg
  • Cashew – 250mg
  • Hazelnuts – 160mg
  • Walnuts – 160mg

Nuts are easy to include in your diet – make them the start to your day with our apricot & hazelnut muesli or our almond butter, or a hero ingredient in a curry or a salad.

3. Beans and legumes

Rows of different beans and legumes

Although often considered a nut, peanuts are actually a member of the legume (bean) family and make a particularly useful contribution of magnesium. Legumes are a good source of plant-based protein, they’re also high in fibre and contribute a variety of vitamins and minerals.
Amount of magnesium per 100g:

  • Peanuts – 210mg
  • Edamame – 61mg
  • Tofu (soya beans) – 23mg
  • Chickpeas (canned) – 37mg
  • Pinto beans (canned) – 32mg
  • Kidney beans (canned) – 30mg
  • Red lentils (boiled) – 26mg

Check out our delicious peanut butter date & oat pots, our edamame & chickpea falafel wraps, peppered pinto beans and our spicy red lentil chilli.

4. Green leafy veg

Often cited as a good source of magnesium, green leafy veggies make a useful contribution, especially the darker leaves, such as spinach and chard.
Amount of magnesium per 100g:

  • Spinach (boiled) – 112mg
  • Chard (boiled) – 86mg
  • Rocket (raw) – 28mg

Offering an impressive nutrient profile, leafy greens make a valuable addition to your daily diet – include them in our curried spinach eggs, chard, sweet potato and peanut stew, and rocket pesto.

5. Grains

Whole-grains like wheat and barley, as well as rice and pseudo-grains like quinoa, are useful sources of magnesium.
Amount of magnesium per 100g:

  • Quinoa (boiled) – 64mg
  • Wholegrain brown rice (boiled) – 48mg
  • Bulgur wheat (boiled) – 32mg
  • Barley (boiled) – 22mg

Increase your intake with our quinoa chilli, stir-fried chicken with broccoli & brown rice, charred sweetcorn & bulgur wheat pilaf or our squash barley salad.

6. High cocoa chocolate


Rich in protective plant compounds called polyphenols, high cocoa chocolate offers a host of health benefits from supporting mood and brain function to being heart friendly. It is also a rich source of magnesium as well as contributing other valuable minerals like iron, copper and manganese. To optimise the many benefits of dark chocolate choose a product containing at least 85 per cent cocoa solids.

Amount of magnesium per 100g:

  • Dark high cocoa chocolate – 89mg

Try this delicious aubergine chilli with dark chocolate.

7. Fruit

Banana and avocado both make useful contributions.
Amount of magnesium per 100g:

  • Banana – 27mg
  • Avocado – 25mg

Try our guacamole and mango black bean salad, our avocado, roasted broccoli & sesame rice or our fragrant spiced chicken with banana sambal.

8. Fish and seafood

Fish on a bed of veg and lemon

Fish and seafood are good sources of magnesium as well as other minerals including iodine.

Amount of magnesium per 100g:

  • Sardines (canned) – 46mg
  • Tuna (baked) – 41mg
  • Prawns (cooked) – 36mg
  • Salmon (farmed) – 31mg
  • Cod (baked) – 30mg

Boost your magnesium intake with an easy lunch like our sardines & peperonata on wholemeal toast and our tuna & white bean salad or a more substantial meal such as teriyaki salmon parcels or one pot prawn & lentil curry.

Enjoyed this? Now read...

Health benefits of magnesium
Best calcium-rich foods
Do supplements work?
Nutrients every woman needs

More recipe inspiration

Cashew chicken
Thai pork & peanut curry
Spinach rice
Japanese-style brown rice
Smoked paprika paella with cod & peas
Pomegranate chicken with almond couscous
Chickpea, spinach & almond butter bowl
Creamy salmon, prawn & almond curry

This content was reviewed on 4 March 2024 by Kerry Torrens.

Emer Delaney BSc (Hons), RD has an honours degree in Human Nutrition and Dietetics from the University of Ulster. She has worked as a dietitian in some of London's top teaching hospitals and is currently based in Chelsea.

Kerry Torrens is a qualified Nutritionist (MBANT) with a post graduate diploma in Personalised Nutrition & Nutritional Therapy. She is a member of the British Association for Nutrition and Lifestyle Medicine (BANT) and a member of the Guild of Food Writers. Over the last 15 years she has been a contributing author to a number of nutritional and cookery publications including Good Food.


All health content on is provided for general information only, and should not be treated as a substitute for the medical advice of your own doctor or any other health care professional. If you have any concerns about your general health, you should contact your local health care provider. See our website terms and conditions for more information.

Comments, questions and tips

Choose the type of message you'd like to post

Choose the type of message you'd like to post