Metabolic Health Test — 24 markers. See what's included →

Vitamin B12 Foods: Best UK Sources & How Much You Need

Published 9 November 2026 12 min read Medically reviewed by Sonia Rani (Superintendent Pharmacist · Reg: GPhC No. 2077189)
In this article
  1. What does vitamin B12 do?
  2. How much vitamin B12 do you need?
  3. Vitamin B12 foods: the best sources
  4. Meat and offal
  5. Fish and shellfish
  6. Eggs
  7. Milk, yoghurt and cheese
  8. Fortified foods
  9. A quick B12 food list
  10. Vitamin B12 on a vegan or vegetarian diet
  11. Why B12 matters when you're managing your weight
  12. Who is more likely to be low in vitamin B12?
  13. Signs you might be low in vitamin B12
  14. How is a vitamin B12 deficiency treated?
  15. Easy ways to add more B12 to your day
  16. Frequently asked questions

The best vitamin B12 foods are animal products: meat, fish, shellfish, eggs, milk, cheese and yoghurt. If you eat these regularly, the NHS says you should be able to get all the vitamin B12 you need from your diet. If you don't, because you're vegan, eat very little meat or dairy, or have a condition or medicine that affects how you absorb B12, fortified foods such as some breakfast cereals, plant drinks, yeast extract and nutritional yeast become important, and a supplement may be needed.

Adults need only a small amount, about 1.5 micrograms a day, but your body can't make it, so it has to come from food or supplements. Below, we cover which foods contain vitamin B12, how to get enough on a plant-based diet, who is more likely to run low, the signs of a deficiency, and why it's worth thinking about when you're changing how you eat to manage your weight.

At a glance

  • Adults aged 19 to 64 need about 1.5 micrograms of vitamin B12 a day, according to the NHS
  • Vitamin B12 is found naturally in meat, fish, shellfish, eggs, milk and cheese
  • Plant foods don't naturally provide reliable B12, so vegans need fortified foods or a supplement
  • Useful fortified foods include some breakfast cereals, unsweetened soya drinks, yeast extract and nutritional yeast flakes
  • Older age, pernicious anaemia, some gut conditions and some medicines can affect how well you absorb B12
  • Signs of a deficiency include extreme tiredness, pins and needles, a sore red tongue and mouth ulcers
  • See a GP if you think you might be low: it's diagnosed with a blood test and is treatable

What does vitamin B12 do?

Vitamin B12 is one of the B vitamins. The NHS explains that it helps your body:

  • Make red blood cells
  • Keep the nervous system healthy
  • Release energy from food
  • Use folate (another B vitamin)

Because it's involved in making red blood cells and keeping nerves healthy, running low over a long period can cause a type of anaemia and, in some people, problems with the nerves, memory and mood. We cover the signs to look out for later in this article.

How much vitamin B12 do you need?

The NHS says adults aged 19 to 64 need about 1.5 micrograms a day of vitamin B12. A microgram is one millionth of a gram, so the amount is tiny, and the NHS says that if you eat meat, fish or dairy foods, you should be able to get enough from your diet.

For a quick overview of how B12 fits alongside the other vitamins, see our guide to vitamins A, B, C, D, E and K.

Vitamin B12 foods: the best sources

Animal foods are the main natural sources of vitamin B12. The NHS lists meat, fish, milk, cheese, eggs and some fortified breakfast cereals as good sources.

Meat and offal

Beef, lamb, pork and chicken all contain vitamin B12, as does offal such as liver and kidney. If you're watching your saturated fat, lean cuts and smaller portions of red meat are a good choice: the NHS advises people who eat more than 90g of red and processed meat a day to cut down to 70g or less.

Fish and shellfish

Fish is one of the main B12 foods listed by the NHS. Oily fish such as salmon, sardines, mackerel, herring and trout, and shellfish such as mussels, cockles and crab, all contribute. Oily fish also gives you omega-3 fats, and the NHS recommends eating at least 2 portions of fish a week, including 1 portion of oily fish. Tinned fish counts too, which makes it an easy, affordable option.

Eggs

Eggs contain vitamin B12 as well as protein. They're quick to cook, inexpensive and easy to add to breakfasts, lunches and salads.

Milk, yoghurt and cheese

Dairy foods are a useful everyday source of B12 for people who eat them. A glass of milk, a pot of yoghurt or a portion of cheese all contribute. The NHS suggests choosing lower-fat and lower-sugar options where you can, such as semi-skimmed or skimmed milk and plain, unsweetened yoghurt.

Fortified foods

Some foods have vitamin B12 added. These are especially important if you eat few or no animal products. The NHS lists:

  • Breakfast cereals fortified with B12
  • Unsweetened soya drinks fortified with B12
  • Yeast extract, such as Marmite, fortified with B12
  • Nutritional yeast flakes fortified with B12

Not every product is fortified, and amounts vary by brand, so check the nutrition panel on the pack for "vitamin B12" and the percentage of the reference intake. If you've switched to a plant drink, our guide to whether oat milk is good for you explains what to look for on the label.

A quick B12 food list

If you want to build B12 into your week, here's a simple way to think about it:

Food group Examples Notes
Fish and shellfish Salmon, sardines, mackerel, tuna, mussels, cockles, crab Aim for 2 portions of fish a week, including 1 oily
Meat and offal Beef, lamb, pork, chicken, liver, kidney Keep red and processed meat to 70g a day or less
Eggs Boiled, poached, scrambled or in an omelette Easy to add to any meal
Dairy Milk, yoghurt, cheese Choose lower-fat, unsweetened options where you can
Fortified foods Some cereals, soya drinks, yeast extract, nutritional yeast Essential for vegans; check the label as amounts vary

Fruit, vegetables, grains, pulses, nuts and seeds are all important for health, but the NHS notes that B12 sources for people who don't eat animal products are limited, which is why fortified foods matter.

Vitamin B12 on a vegan or vegetarian diet

The NHS says that sources of vitamin B12 for vegans are limited and a vitamin B12 supplement may be needed. On its main vitamin B page, the NHS also notes that people who follow a vegan diet may not get enough.

If you're vegan, a practical approach is to:

  • Eat fortified foods every day, such as a fortified cereal at breakfast and a fortified soya drink in drinks or porridge
  • Use yeast extract or nutritional yeast flakes in cooking, checking they're fortified
  • Consider a B12 supplement, and speak to a pharmacist, GP or registered dietitian if you're unsure what to choose

If you're vegetarian and eat eggs and dairy, you can get B12 from those, though it's worth making sure you eat them regularly rather than occasionally.

On supplements, the NHS advises not taking too much, and says that taking 2mg or less a day of vitamin B12 in supplements is unlikely to cause any harm.

Why B12 matters when you're managing your weight

When you're trying to lose weight, the focus is often on eating less. But eating less food overall can also mean taking in fewer vitamins and minerals, particularly if you cut out whole food groups or rely heavily on a narrow range of foods.

A few things are worth keeping in mind:

  • Cutting out food groups. If you've reduced meat, fish, eggs or dairy to save calories, make sure B12 is still coming from somewhere, whether that's other animal foods, fortified foods or a supplement.
  • Smaller portions and lower appetite. If you're eating smaller amounts, every meal counts for more. Building meals around a source of protein, such as fish, eggs, lean meat, yoghurt or fortified soya, helps you cover protein and B12 at the same time. Our list of high-protein, low-calorie foods has plenty of ideas, many of which are good B12 sources too.
  • Meal replacements and shakes. Some meal replacement products are fortified with vitamins, including B12, but others aren't. Check the label if they make up a large part of your diet. Our guide to whether Huel is good for you looks at this in more detail.
  • Balance, not restriction. A varied diet with plenty of vegetables, fruit, wholegrains and fibre, plus a source of protein at each meal, is the most reliable way to cover your nutrients while managing your weight. Our guide to how much fibre you need per day shows how to build meals that keep you full.

Who is more likely to be low in vitamin B12?

Diet isn't the only reason people run low. The NHS says the most common cause of vitamin B12 deficiency in the UK is pernicious anaemia, an autoimmune condition that stops the body absorbing B12 from food properly. In that case, eating more B12 foods won't fix the problem, and treatment is needed.

You may be more likely to run low if you:

  • Are older. The NHS says around 1 in 10 people aged 75 or over, and 1 in 20 people aged 65 to 74, have a vitamin B12 deficiency.
  • Follow a vegan diet without fortified foods or a supplement, or have had a restrictive or generally poor diet for a long time. The NHS notes that diet-related deficiency is uncommon but can happen in these situations.
  • Take certain medicines. The NHS lists anticonvulsants and proton pump inhibitors (PPIs, used to reduce stomach acid) as medicines that can affect how much B12 your body absorbs.
  • Take metformin. The medicines regulator, the MHRA, says reduced vitamin B12 is a common side effect of metformin that may affect up to 1 in 10 people who take it, and that the risk increases with higher doses and longer treatment.
  • Have a condition or surgery affecting the stomach or gut. The MHRA lists gastrointestinal disorders such as gastrectomy (stomach surgery) and Crohn's disease among the things that can reduce B12 absorption.

If you take any of these medicines, don't stop taking them. The MHRA advises that people taking metformin should not stop it without talking to their doctor. Instead, mention any symptoms to your GP or pharmacist, who can decide whether a blood test is needed.

Signs you might be low in vitamin B12

According to the NHS, symptoms of vitamin B12 or folate deficiency can include:

  • Extreme tiredness and a lack of energy
  • Pins and needles
  • A sore and red tongue
  • Mouth ulcers
  • Muscle weakness
  • Problems with your vision
  • Psychological problems, which can range from mild depression or anxiety to confusion and dementia
  • Problems with memory, understanding and judgement

The NHS notes that some of these symptoms can happen even if you don't have anaemia. Many of them are also common and have lots of other possible causes, including poor sleep, stress and other health conditions, so they don't mean you definitely have a deficiency.

How is a vitamin B12 deficiency treated?

Treatment depends on the cause. The NHS explains that vitamin B12 deficiency is usually treated with injections at first, followed by either tablets taken between meals or regular injections, depending on whether the deficiency is related to your diet. For some people, treatment may be lifelong.

If your deficiency is caused by your diet, your GP may suggest B12 tablets alongside changes to what you eat, such as including more of the foods listed above or switching to fortified products.

Easy ways to add more B12 to your day

Here are some simple, everyday ideas:

  • Breakfast: a fortified cereal with milk or fortified soya drink, eggs on wholemeal toast, or plain yoghurt with fruit
  • Lunch: a tuna, salmon or egg salad, sardines on toast, or a wholemeal wrap with chicken and salad
  • Dinner: baked salmon or mackerel with vegetables, a lean beef or chicken stir-fry, or a fish pie topped with mashed potato
  • Snacks: a small portion of cheese with an apple, or a pot of plain yoghurt
  • Plant-based options: yeast extract on toast, nutritional yeast sprinkled over pasta or roasted vegetables, and fortified soya drink in porridge or smoothies

Small, regular choices like these add up, and they also help you hit your protein and fibre goals at the same time.

The bottom line

The best vitamin B12 foods are fish and shellfish, meat, eggs, milk, yoghurt and cheese, and if you eat these regularly you should be able to get the 1.5 micrograms a day adults need. If you eat few or no animal products, fortified breakfast cereals, soya drinks, yeast extract and nutritional yeast can help, and a supplement may be needed. If you're cutting back on food groups to manage your weight, make sure B12 is still coming from somewhere. Older age, pernicious anaemia, some gut conditions and medicines such as metformin, PPIs and anticonvulsants can all lower B12 levels, so if you notice symptoms such as extreme tiredness, pins and needles or a sore red tongue, see your GP for a blood test rather than self-treating.

This article is for informational purposes only and does not constitute medical advice. Always consult with a qualified healthcare professional before starting any treatment.

Good to know

Frequently asked questions