Nutrition6 min readBy Espen Opdahl

Foods Highest in Iron Per Calorie (Portion Is the Catch)

Raw spinach tops our 182-food USDA ranking at 11.8mg of iron per 100 calories — but that is 435g of spinach. Oysters give 9.8mg in 169g.

Raw spinach. It delivers 11.8mg of iron per 100 calories — more than any other food in our database of 182 with usable USDA iron and calorie values. Raw asparagus is second at 10.7mg, raw oysters third at 9.8mg. Every figure here is computed from USDA FoodData Central rows — spinach is FDC 168462, asparagus FDC 168389, oysters FDC 175172 — so you can check any of them at source.

And then there is the catch, which most per-calorie rankings never mention: 100 calories of raw spinach is 435 grams of raw spinach. Raw spinach is 23 calories per 100g (USDA FDC 168462), so 100 calories is 435g of it. We give that in grams because grams are what the USDA row actually contains — bagged and bunched weights are not in this dataset, and we are not going to invent one to make the number feel smaller. The ranking is arithmetically correct and, taken alone, close to useless, which is why the table below carries a fifth column nobody else publishes.

The 12 highest-iron foods per 100 calories

Ranked across all 182 foods in our database with usable USDA iron and calorie values. Read the fourth column as "milligrams of iron you get for every 100 calories you spend", and the fifth as "how much food that actually is".

FoodIron /100gCalories /100gIron /100 kcalGrams per 100 kcal
Spinach, raw2.71mg2311.8mg435g
Asparagus, raw2.14mg2010.7mg500g
Oysters, raw5.78mg599.8mg169g
Swiss chard, raw1.8mg199.5mg526g
Clams, breaded and fried13.9mg2026.9mg50g
Cocoa powder, unsweetened13.9mg2286.1mg44g
Arugula, raw1.46mg255.8mg400g
Romaine lettuce, raw0.97mg175.7mg588g
Wakame seaweed, raw2.18mg454.8mg222g
Jerusalem artichoke, raw3.4mg734.7mg137g
Kale, raw1.6mg354.6mg286g
Mussels, cooked6.72mg1723.9mg58g

The per-100g ranking is almost the inverse of this one

If you have read a "foods high in iron" article before, it almost certainly ranked per 100g, and that list barely overlaps with this one. Roasted sesame seeds are the highest-iron food per 100g in our data at 14.8mg (FDC 170151). Per calorie they fall to 2.6mg and rank 17th, because 100g of sesame seeds carries 565 calories. Raw cashews are 9th per 100g and 69th per calorie. Dark chocolate is 4th per 100g and 28th per calorie.

Oysters run the other way — 10th per 100g, 3rd per calorie. Nothing about the food changed; the question did. Per 100g asks "how concentrated is this?". Per 100 calories asks "what does this cost me?". Neither is the true ranking. If you are eating to a calorie budget, the per-calorie column is the one that answers your question; if you are limited by how much food you can physically get through, the per-100g column is.

Why the fifth column is the one to read

Four of the top eleven foods here are leaves, and leaves are mostly water. Getting 100 calories from them means eating a quantity nobody eats: 500g of asparagus, 526g of swiss chard, 588g of romaine lettuce. The iron-per-calorie figure is real, but it is describing a portion that does not exist in anyone's day.

Compare that with oysters at 169g, mussels at 58g, cocoa powder at 44g, or beef liver — which lands 13th per calorie at 3.6mg, in 74g. Those are portions people actually eat. Oysters are the standout row in this table: 9.8mg of iron per 100 calories, within 17% of spinach, in under half the food by weight and a portion you would recognise as a meal.

What this table cannot tell you: absorption

Iron comes in two forms, and this dataset does not distinguish them. Heme iron, in oysters, mussels and liver, is absorbed considerably more efficiently than the non-heme iron in spinach, chard and lentils, and non-heme absorption is further reduced by compounds in the plants themselves — spinach is high in oxalates, which bind iron.

We are not giving you an absorption-adjusted ranking, because we cannot compute one from these rows. USDA FoodData Central reports total iron, not absorbed iron, and any article that hands you a tidy adjusted number is applying a study average to a food it was never measured on. The honest version: the plant rows at the top of this table overstate their real contribution relative to the shellfish and liver rows, and by how much depends on the rest of your meal. Vitamin C eaten alongside non-heme iron increases its absorption, which is the one lever worth knowing.

One row we removed, and one we kept with a warning

Tamari soy sauce computes to 4.0mg of iron per 100 calories and would have ranked 12th. We took it out. The arithmetic is right and the ranking is meaningless — nobody consumes 100 calories of soy sauce, which would be 167g of it. Tablespoon weights are not in this dataset and we are not going to invent one; the row is 2.38mg of iron per 100g, so scale it by whatever you actually pour. We are telling you rather than deleting it quietly, so that if you run the same query you know why your list and ours differ.

The clam row we kept, with the label it deserves. It is "cooked, breaded and fried" (FDC 171974) — the only clam entry in our data — and the breading adds calories that iron did not come with. That works against clams here, not for them: plain steamed clams would rank higher per calorie than this row does. Read it as a floor, not a measurement of clams generally.

The ranking covers 182 of the 189 foods in our database. Seven were held out: six whose stored macro values are under review and one, garlic, with no iron figure at all. All six carry between 0.35mg and 2.17mg of iron per 100g, well short of this table, so none of them would have placed — but a ranking is only as honest as the rows it drops, so the count is stated rather than buried.

The pattern worth remembering

The foods that top an iron-per-calorie table do it in two completely different ways. Leaves get there by having almost no calories, and pay for it in volume. Shellfish, liver and cocoa get there by genuinely being dense in iron. Only the second group is useful advice. A ranking that cannot tell those two mechanisms apart is a ranking that will send you home with six bags of spinach.

Which is the awkward part of eating for a specific nutrient: the good choice depends on the portion, and portions are exactly what nobody tracks accurately by eye. Sunn does that arithmetic from a photo or a sentence — you send "oysters and a salad" and the running total updates itself, so the choice in the table above turns into a number you can actually see.

More reading: browse everything in foods high in iron, the same computation run on protein per calorie, or compare kale against spinach and clams against oysters directly.

E

Written by Espen Opdahl

Founder of Sunn. Building AI-powered nutrition coaching to make healthy eating simple. Nutrition data sourced from the USDA FoodData Central database.

Medical disclaimer: This content is for informational purposes only and is not a substitute for professional medical advice, diagnosis, or treatment. Always consult a qualified healthcare provider before making changes to your diet or exercise routine.

Common Questions

Which food has the most iron per calorie?

Raw spinach, at 11.8mg of iron per 100 calories — the highest of the 182 foods in our USDA-derived database with usable iron and calorie values. Raw asparagus is second at 10.7mg, raw oysters third at 9.8mg, raw swiss chard fourth at 9.5mg. But 100 calories of raw spinach is 435 grams of spinach, so the ranking needs reading alongside portion size. Oysters deliver 9.8mg in 169g, which is a portion someone actually eats.

How much spinach is 100 calories?

About 435 grams of raw spinach, because raw spinach is only 23 calories per 100g (USDA FDC 168462). That is roughly six large supermarket bags. It is the reason a per-calorie iron ranking puts leafy greens on top: they contain very little energy, so almost any nutrient looks large when divided by their calories. Raw asparagus needs 500g for 100 calories, swiss chard 526g and romaine lettuce 588g.

Is iron per 100g or iron per calorie the better ranking?

They answer different questions and neither is the true one. Per 100g asks how concentrated a food is; per 100 calories asks what that iron costs you in energy. The two lists barely overlap. Roasted sesame seeds are first per 100g at 14.8mg and 17th per calorie, because 100g carries 565 calories. Oysters are 10th per 100g and 3rd per calorie. Use per calorie if you are eating to a calorie target, and per 100g if the limit is how much food you can get through.

Does spinach iron absorb as well as iron from meat?

No, and no nutrition table can tell you the difference. Spinach, chard and lentils contain non-heme iron, which is absorbed considerably less efficiently than the heme iron in oysters, mussels and liver, and spinach is also high in oxalates, which bind iron. USDA FoodData Central reports total iron, not absorbed iron, so we do not publish an absorption-adjusted ranking — any tidy adjusted figure is a study average applied to a food it was never measured on. Eating vitamin C alongside non-heme iron does measurably increase its absorption.

Why is beef liver not at the top of the iron per calorie list?

Because it ranks on a per-calorie basis like a real food rather than like a leaf. Raw beef liver has 4.9mg of iron per 100g and 135 calories (USDA FDC 169451), giving 3.6mg per 100 calories — 13th on our list. That is well behind spinach at 11.8mg, but it arrives in 74g rather than 435g, and its iron is heme iron. On the measure that matters for a meal rather than a spreadsheet, liver is one of the strongest rows in the table.

Get a personalized nutrition plan

Find out exactly what and how much to eat for your goals. Takes 60 seconds.

Take the free quiz

More from the Blog