Beans, lentils and soy compared

Lentils, chickpeas, the common beans, split peas, tempeh and tofu, on the same scale.

Short answer

Per 100 calories, Lentils has the most protein (7.9g) and Navy Beans the most fiber (7.5g). Lentils has the fewest calories per 100g (114).

The numbers

Cooked rows, per 100g and per 100 calories. Sorted by protein per 100 calories.
Foodkcal /100gProtein /100gFiber /100gProtein /100 kcalFiber /100 kcal
Lentils1149g7.9g7.9g6.9g
Split Peas1168.3g8.3g7.2g7.2g
Red Kidney Beans1278.7g7.4g6.8g5.8g
Black Beans1328.9g8.7g6.7g6.6g
Pinto Beans1439g9g6.3g6.3g
Navy Beans1408.2g10.5g5.9g7.5g
Chickpeas1648.9g7.6g5.4g4.6g

These rows are listed in a different state (or none), so their per-100g figures are not directly comparable with the cooked rows above. Per 100 calories is the fair comparison. A dash means the USDA row has no figure.

Other state or none stated, per 100g and per 100 calories.
Foodkcal /100gProtein /100gFiber /100gProtein /100 kcalFiber /100 kcal
Tofu14417.3g2.3g12g1.6g
Tempeh19220.3g—10.6g—

Source: USDA FoodData Central rows, as listed on each food's page.

Know how much you need first

The free quiz shows your daily calorie and protein target before it asks for anything else.

Take the free quiz

Every head-to-head

Common questions

Which has the most protein per 100g: beans, lentils and soy?

Lentils has the most protein per 100g among the 7 cooked foods compared here, at 9g.

Which has the most protein for the calories?

Lentils: 7.9g of protein per 100 calories. Counting per calorie, not per gram, keeps dry and cooked foods comparable.

Which has the fewest calories?

Lentils has the fewest calories per 100g, at 114.