πŸ₯— FoodData Explorer

Plant-Based vs. Animal Protein Sources: A Data Comparison

Gram for gram, soy and peanuts beat several cuts of meat on protein content β€” the catch only shows up once you check what form the food is actually measured in.

Comparing this database's own cooked-weight values, soy and peanuts deliver more protein per 100 grams than many cuts of meat, while cooked lentils and quinoa fall well behind chicken or beef β€” not because plants are inherently worse protein sources, but because most of that gap is water absorbed during cooking.

How much protein do popular animal foods actually have, per 100 grams?

Using this database's measured values for cooked or ready-to-eat forms (the way these foods are typically consumed, not raw weight): cooked, skinless chicken breast measures 32.1 g of protein per 100 g, pan-browned 85%-lean ground beef measures 27.7 g per 100 g, and plain nonfat Greek yogurt measures 10.3 g per 100 g. Whole milk sits much lower, at 3.27 g per 100 g β€” a reminder that "animal protein" covers an enormous range, from a lean cut of poultry to a beverage that's mostly water.

How much protein do popular plant foods actually have, per 100 grams?

The plant side of the database spans an even wider range. Raw almonds measure 21.5 g of protein per 100 g β€” in the same range as cooked beef. Boiled soybeans measure 18.2 g per 100 g, close to a cut of pork. From there the numbers drop: boiled lentils measure 9.0 g per 100 g, and cooked quinoa measures only 4.4 g per 100 g β€” lower than whole milk. A single "plant protein" label is hiding at least as much range as "animal protein" does.

Why do some cooked plant proteins look so much lower than the dry package suggests?

This is the gap that trips up most gram-counting comparisons. Dry lentils measure 23.6 g of protein per 100 g β€” a number close to cooked chicken β€” but once boiled, that same lentil measures only 9.0 g per 100 g, because the lentil has absorbed water and nearly tripled in weight during cooking. The protein hasn't disappeared; it's just diluted across more total weight. Dry chickpeas show the identical pattern: 21.3 g per 100 g dry, 8.9 g per 100 g cooked. Quinoa, a grain rather than a legume, starts lower to begin with and ends up at 4.4 g per 100 g cooked. None of the animal foods in this comparison carry that same dry-to-cooked gap, since meat, poultry, and fish are already sold and measured close to their cooked, water-retained state β€” which is exactly why a side-by-side "grams of protein per 100 g" comparison only holds up if both foods are measured in the same state.

Which plant foods actually come closest to matching meat, gram for gram?

Nuts and legumes measured in their dense, minimally diluted form close the gap fastest. Raw peanuts measure 25.8 g of protein per 100 g in this database β€” ahead of cooked beef (27.7 g/100 g) by only a couple of grams, and well ahead of cooked cod (22.8 g/100 g). Raw almonds (21.5 g/100 g) and boiled soybeans (18.2 g/100 g) land in the same range as cooked beef and chicken (32.1 g/100 g), because none of the three absorbs much water relative to its starting protein density the way lentils, chickpeas, or grains do during cooking. That's a genuinely different story from quinoa or lentils once all of them are measured the same way (as eaten), and it's the kind of comparison a single food page can't make on its own β€” it only shows up once you line several foods up side by side.

Do fish and other animal foods follow the same pattern as beef and chicken?

Not uniformly β€” "animal protein" has its own internal range, just like "plant protein" does. Canned pink salmon measures 24.6 g of protein per 100 g in this database, and cooked Atlantic cod measures 22.8 g per 100 g β€” both lower than cooked chicken breast, and both close enough to raw almonds (21.5 g/100 g) that the fish-vs-nut comparison comes out nearly even. The animal category spans from lean white fish in the low-to-mid 20s, through poultry and beef in the high 20s to low 30s, down to dairy in the single digits β€” the same kind of internal spread the plant category shows once you move from a protein-dense legume to a water-heavy grain.

Where does each food in this comparison actually rank, side by side?

Lined up from highest to lowest protein per 100 g, as measured in this database: cooked chicken breast (32.1 g), pan-browned ground beef (27.7 g), raw peanuts (25.8 g), canned pink salmon (24.6 g), cooked cod (22.8 g), raw almonds (21.5 g), boiled soybeans (18.2 g), plain nonfat Greek yogurt (10.3 g), boiled lentils (9.0 g), boiled chickpeas (8.9 g), cooked quinoa (4.4 g), and whole milk (3.3 g). Plant and animal foods are interleaved from the top of that list to the bottom rather than sorted into two separate tiers β€” peanuts outrank salmon and cod, soybeans outrank yogurt, and only the most water-diluted foods in either category (milk on the animal side, quinoa and the boiled legumes on the plant side) fall to the bottom. A ranking organized by food category would miss that pattern entirely; a ranking organized by actual measured protein content shows it immediately.

Is there a meaningful quality gap between plant and animal protein?

Gram quantity is only half the comparison β€” amino acid completeness is the other half. Most animal foods are complete proteins on their own; most plant foods are not, with soy being a notable exception. According to Harvard T.H. Chan School of Public Health, The Nutrition Source, "'Pure' protein, whether derived from plant or animal foods, probably has similar effects on health, although the mix of amino acids can have health implications." For the specific amino acid math behind that distinction β€” including how soy's lysine and methionine levels actually compare to egg's β€” see our companion guide on complete vs. incomplete proteins.

Does the rest of the food matter as much as the protein number?

A gram of protein is not nutritionally identical no matter where it comes from, because it never arrives alone. The same Harvard Nutrition Source page notes that what surrounds the protein β€” saturated fat and cholesterol in many animal sources, versus fiber and unsaturated fat in many plant sources β€” differs enough between the two categories to matter for long-term health, independent of the amino acid profile itself. That's a separate question from whether a food is a "good protein source," and it's worth keeping the two questions apart when comparing a steak to a bowl of lentils.

So which should you actually choose?

The honest answer the data supports is that "plant vs. animal" is the wrong axis for a single universal ranking. If the goal is maximum protein density per 100 grams, cooked chicken breast and boiled soybeans both outperform whole milk and cooked quinoa, regardless of which category they're in. If the goal is amino acid completeness without combining multiple foods, most animal foods and a short list of plant foods (soy among them) both qualify. And if the goal is weighing what else comes with the protein, that's a different comparison again β€” one where the two categories tend to diverge more consistently. Comparing specific foods against specific goals, rather than entire food categories against each other, is what this database's numbers actually support.


Related database pages

Frequently asked questions

Does cooking reduce a food's protein content, or just its protein concentration?
Cooking does not destroy protein. Boiling beans, lentils, or grains adds water weight to the food, which lowers the amount of protein measured per 100 grams even though the total protein hasn't decreased. Comparing a dry ingredient's protein content to a cooked food's protein content will always understate how protein-dense the cooked food really is relative to its dry starting point.
Which plant food in this comparison comes closest to meat's protein density?
Raw almonds and boiled soybeans came closest in this database's data, both landing in a similar range to pork and not far behind beef, because neither absorbs much water relative to its starting protein content during preparation.
Is dairy protein considered the same as meat protein nutritionally?
Dairy is an animal protein source and, like meat, poultry, fish, and eggs, generally supplies a complete amino acid profile. But the protein density varies enormously within the dairy case alone β€” whole milk measures far lower in protein per 100 grams than Greek yogurt, for example β€” so "dairy" isn't a single data point any more than "plant protein" is.
Should someone eating only plant foods worry about getting enough protein?
Not based on protein quantity alone. Foods like soybeans and almonds supply protein in a similar range to many meats per 100 grams. The more relevant planning question is variety across amino acids and overall calorie intake, not whether plant foods can physically supply enough grams of protein.
Why do some plant foods look much lower in protein than others?
Mostly preparation and water content. A legume or grain's dry-package protein number can be two to three times higher than its cooked-and-eaten number, while a nut like almonds is eaten close to its raw, undiluted state β€” which is why almonds and lentils can look worlds apart even though both are "plant protein."

Written by Phuoc Huynh Β· Reviewed by Phuoc Huynh on 2026-10-04

Last verified against USDA FoodData Central β€” Foundation Foods.

USDA release 2026-04-30. All values are per 100Β g unless stated otherwise.