The highest-protein vegetable in our data is a fungus. Raw white mushrooms deliver 14.0g of protein per 100 calories — the most of the 38 foods USDA FoodData Central files under Vegetables and Vegetable Products (mushrooms are FDC 169251). Rank the same 38 foods per 100g instead and the winner changes to cooked green soybeans at 12.4g (FDC 170530), which are a legume.
Neither answer is wrong, and that is the problem with the question. "Vegetable" is a shopping category, not a biological one — and once you look at what is actually inside it, the leaderboard stops meaning very much.
The 11 highest-protein vegetables per 100 calories
All 38 foods in the category, ranked. The fifth column is how much food 100 calories actually is — the number most rankings leave out.
| Food | Protein /100g | Calories /100g | Protein /100 kcal | Grams per 100 kcal |
|---|---|---|---|---|
| Mushrooms, white, raw | 3.09g | 22 | 14.0g | 455g |
| Spinach, raw | 2.86g | 23 | 12.4g | 435g |
| Asparagus, raw | 2.2g | 20 | 11.0g | 500g |
| Arugula, raw | 2.58g | 25 | 10.3g | 400g |
| Edamame, frozen | 11.9g | 121 | 9.8g | 83g |
| Swiss chard, raw | 1.8g | 19 | 9.5g | 526g |
| Collard greens, raw | 3.02g | 32 | 9.4g | 313g |
| Brussels sprouts, raw | 3.98g | 43 | 9.3g | 233g |
| Soybeans, green, cooked | 12.4g | 141 | 8.8g | 71g |
| Kale, raw | 2.92g | 35 | 8.3g | 286g |
| Broccoli, raw | 2.57g | 31 | 8.3g | 323g |
Three of the top four are not vegetables in any biological sense
Mushrooms are fungi — a separate kingdom from plants entirely. Green soybeans and edamame are legumes, the same family as the lentils and chickpeas USDA files in a different category altogether. Wakame, which places ninth per 100g in this category, is an alga. Sweet corn is a grain.
The category is doing the deceiving, not the data. USDA's groupings are administrative, and once a fungus, a legume and an alga are all competing for "best vegetable", the winner mostly tells you how the list was drawn up. The clearest illustration is lentils: filed under Legumes and Legume Products, they are excluded from this table by category alone, and yet at 9.02g of protein per 100g and 7.91g per 100 calories (FDC 175254) they would rank third on the per-100g column — ahead of everything except the two soybean entries that USDA did happen to file as vegetables.
Why the two rankings disagree
The per-100-calorie column rewards foods that are mostly water, because dividing by a very small calorie figure makes any nutrient look large. Raw mushrooms are 22 calories per 100g, so reaching 100 calories takes 455g of them. Spinach takes 435g, asparagus 500g, swiss chard 526g. Those are real figures describing portions nobody eats. We walk through the same effect in more detail in the iron-per-calorie ranking, where it puts leaves above shellfish.
Per 100g has the opposite bias: it rewards whatever is dense, which here means the legumes. Cooked green soybeans win that column at 12.4g per 100g, but they cost 141 calories per 100g against mushrooms' 22.
The answer that survives both columns
Edamame is the only food in this category that places near the top of both rankings in a portion a person actually eats: 11.9g of protein per 100g, 9.8g per 100 calories, and 83g gets you those 100 calories (FDC 168411). It is second per 100g and fifth per calorie. Nothing else manages that — mushrooms win one column and finish eighth in the other, soybeans win one and finish ninth.
If the question behind "what is the highest-protein vegetable" is really "what should I put on the plate", edamame is the honest answer, and it is a legume. Among foods that are unambiguously vegetables, brussels sprouts are the best compromise — 3.98g per 100g, 9.3g per 100 calories, and 233g for those 100 calories. Spinach, asparagus and arugula all beat them per calorie, but only by being so light that the portion stops being realistic; raw garlic beats them per 100g, for the reason below.
One row we left out
Raw garlic is fourth per 100g at 6.62g of protein (FDC 1104647) and we have kept it out of the headline claims. The figure is correct and the ranking is meaningless, because garlic is eaten in cloves rather than portions. At 143 calories per 100g it would take a whole head to matter. We are saying so rather than dropping it quietly, so that if you run the same query you know why your list and ours differ. All 38 category foods are in the table's underlying ranking; none were excluded for having bad data.
The pattern worth remembering
Nutrient leaderboards inherit the categories they are drawn from, and food categories are historical accidents. If a ranking's winner changes when you change the basis, and its field changes when you change the category, the ranking is describing the list rather than the food. Ask what you are actually going to eat, and how much of it.
Which is the part that resists being looked up. Knowing edamame beats mushrooms in practice is easy; knowing whether today actually landed near your protein target is the bit almost nobody does reliably. Sunn does that arithmetic from a photo or a sentence — you send "edamame and rice" and the running total updates itself.
More reading: how much protein you actually need, the same computation run across every food we hold, or compare broccoli against kale directly.
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.