By Balveer Singh Rathore, Editor · Last updated: September 26, 2026 · How we write
Good iron-rich foods include lentils (dal), chickpeas, rajma, tofu, spinach, cashews, eggs, chicken, fish and liver, plus iron-fortified cereals. Iron from animal foods is absorbed better. To absorb more iron from plant foods, add vitamin C (lemon, amla, guava) and avoid tea or coffee with meals. Indian women need about 29 mg a day.
This article is general information, not medical advice. If you have a health condition, are pregnant or take medication, talk to your doctor before changing your diet, exercise or supplements. Read our disclaimer.
Why iron matters in India
Iron is needed to make haemoglobin, which carries oxygen in your blood. Low iron causes iron-deficiency anaemia. According to India’s National Family Health Survey (NFHS-5, 2019–21), 57% of women aged 15–49 and 25% of men in the same age group were anaemic. Not all anaemia is due to iron, but diet is an important part of prevention.
How much iron do you need?
| Group | ICMR-NIN 2020 RDA (India) | US NIH RDA |
|---|---|---|
| Adult men | 19 mg/day | 8 mg/day |
| Adult women (menstruating) | 29 mg/day | 18 mg/day |
Indian values are higher partly because Indian diets are mostly plant-based, and plant iron is absorbed less well. The US NIH notes that vegetarians may need about 1.8 times more iron than meat-eaters.
Iron-rich foods list (veg and non-veg)
| Food | Serving | Iron (approx.) | Type |
|---|---|---|---|
| Iron-fortified breakfast cereal | 1 serving | up to 18 mg (check label) | Veg |
| White beans, canned | 1 cup | about 8 mg | Veg |
| Lentils (dal), boiled | ½ cup | about 3 mg | Veg |
| Spinach (palak), boiled | ½ cup | about 3 mg (poorly absorbed) | Veg |
| Tofu, firm | ½ cup | about 3 mg | Veg |
| Chickpeas (chana), boiled | ½ cup | about 2 mg | Veg |
| Kidney beans (rajma) | ½ cup | about 2 mg | Veg |
| Cashews | about 28 g | about 2 mg | Veg |
| Dark chocolate (45–69%) | about 28 g | about 2 mg | Veg |
| Raisins (kishmish) | ¼ cup | about 1 mg | Veg |
| Egg | 1 large | about 1 mg | Egg |
| Chicken (dark meat) | about 85 g | about 1 mg | Non-veg |
| Liver (pan-fried) | about 85 g | about 5 mg | Non-veg |
| Oysters, cooked | about 85 g | about 8 mg | Non-veg |
Values from the US NIH Office of Dietary Supplements iron fact sheet. Indian values for foods like bajra, ragi, soybean and garden cress (halim) seeds are listed in the ICMR-NIN Indian Food Composition Tables.
Heme vs non-heme iron
Animal foods (meat, fish, poultry) contain heme iron, which the body absorbs well. Plant foods and eggs contain non-heme iron, which is absorbed less and is strongly affected by what you eat with it.
How to absorb more iron from food
- Add vitamin C to iron-rich meals: lemon on dal or sprouts, amla, guava, orange, tomato or capsicum.
- Keep tea and coffee away from meals: have them at least an hour before or after.
- Separate calcium supplements from iron-rich meals.
- Soak, sprout or ferment dals and grains (sprouts, idli, dosa, dhokla); this lowers phytates that block iron.
- Cook in an iron kadai sometimes; it can add a little iron to food.
Signs of iron deficiency
- Tiredness, weakness and difficulty concentrating
- Pale skin, inner eyelids or nails
- Breathlessness or a fast heartbeat on exertion
- Brittle nails, hair fall or feeling cold
- Craving ice, mud or chalk (pica)
Don’t self-treat anaemia
- Get a blood test (haemoglobin, and ferritin if your doctor advises) before taking iron tablets.
- Anaemia can also come from B12 or folate deficiency, blood loss, thalassaemia or other conditions.
- Too much supplemental iron can be harmful; the US upper limit for adults is 45 mg a day from supplements, unless a doctor prescribes more.
- Keep iron tablets away from children; overdose is dangerous.
Vegetarian? Pair this with our vitamin B12 foods for vegetarians and high-protein vegetarian foods.
Frequently asked questions
Which foods are highest in iron?
Liver, oysters and other shellfish, red meat, and iron-fortified cereals are among the highest sources. For vegetarians, beans, lentils, tofu, chickpeas, rajma, cashews and dark chocolate are good options. Plant iron is absorbed less, so pair it with vitamin C foods like lemon, amla or guava.
How can I increase my haemoglobin naturally?
Eat iron-rich foods daily, add vitamin C to meals, avoid tea or coffee with meals, and eat enough protein, B12 and folate. If your haemoglobin is low, see a doctor first to find the cause; many people need iron tablets prescribed for a few months, not just diet.
How much iron do Indian women need?
ICMR-NIN 2020 recommends about 29 mg of iron a day for adult Indian women and 19 mg for men. Needs are higher in pregnancy. Because most Indian diets are plant-based, choosing iron-rich foods and improving absorption with vitamin C is important.
Does spinach have a lot of iron?
Spinach contains iron, about 3 mg per half cup cooked, but much of it is poorly absorbed because spinach also contains oxalates. It’s still a healthy food. For better iron intake, combine greens with dals, beans and vitamin C sources, and include other iron-rich foods.
What should I avoid if I have low iron?
Avoid drinking tea or coffee with meals, since they reduce iron absorption. Take calcium supplements at a different time from iron-rich meals or iron tablets. Don’t take iron tablets without testing, and follow your doctor’s advice on dose and duration.
Is jaggery (gur) a good source of iron?
Jaggery contains a little iron but it’s mostly sugar, so it isn’t a practical way to treat or prevent anaemia. Beans, lentils, fortified cereals, eggs, meat and fish are better choices. People with diabetes or trying to lose weight should limit jaggery like any sugar.