Tofu vs Tempeh: Protein by Firmness, Not by Myth
Silken tofu has about 4.8g protein per 100g; a firm calcium-set block reaches 17.3g — 85% of tempeh's 20.3g, and it wins per calorie. The full USDA firmness gradient, plus Canadian per-dollar math nobody else shows.
Part of The Protein Atlas — your complete guide to protein.
A firm, calcium-set block of tofu has 17.3g of protein per 100g — 85% of tempeh’s 20.3g. Silken tofu has 4.8g. (Tempeh is a firm cake of fermented whole soybeans.) That is not two brands disagreeing. It is the same food, the same USDA database, and a spread of 3.6x hiding inside the single word “tofu.”
Every “tofu protein” number you have seen is real — for a different block.
Buy firm or extra-firm block tofu for everyday protein; buy tempeh when you want the bite and the fiber. A firm calcium-set block hits 17.3g protein per 100g — nearly tempeh’s 20.3g, and it actually beats tempeh per calorie (12.0 vs 10.6g per 100 cal, because tempeh carries more fat). In Canada, firm block tofu delivers roughly 2 to 4 times more protein per dollar than tempeh. Silken tofu (about 4.8g/100g) is a sauce and smoothie ingredient — too little protein per serving to build a meal around. The firmness on the label is the whole story — and it is the one number every other comparison leaves out.
Search “tofu vs tempeh protein” and you will get a straight answer that happens to be useless: tempeh has more. Then you notice the tofu number changes on every page — 8 grams here, 15 there, 17 somewhere else — and none of them tell you which tofu they mean. That scatter isn’t sloppiness in one place — it’s the actual answer, and nobody prints it.
So here are USDA’s generic tofu entries across the firmness range — plus tempeh, for comparison — straight from FoodData Central (FDC), the US government’s food-nutrition database (fetched July 12, 2026, each with its FDC ID below). What comes out is a clean ladder from watery silken up to dense pressed block — and once you see the ladder, the “contradictory” tofu numbers stop contradicting. They are just different rungs.
How Much Protein Does Tofu Have?
There is no single answer, and that is the point. Tofu is soy milk curdled and pressed; the more water you press out, the more protein concentrates into what is left. USDA lists tofu at several firmness levels, and the protein mostly climbs as you go from watery to dense:
| Tofu (USDA entry) | Protein /100g | Calories | Calcium | FDC ID |
|---|---|---|---|---|
| Silken, soft (shelf-stable brand) | 4.8g | 55 | 31mg | 174292 |
| Silken, extra firm (shelf-stable brand) | 7.4g | 55 | 31mg | 172462 |
| Soft | 7.2g | 61 | 111mg | 172449 |
| Regular | 8.1g | 76 | 350mg | 172476 |
| Extra firm (nigari) | 10.0g | 83 | 282mg | 174290 |
| Hard (nigari) | 12.7g | 145 | 345mg | 174291 |
| Firm (calcium sulfate) | 17.3g | 144 | 683mg | 172475 |
| Tempeh (for reference) | 20.3g | 192 | 111mg | 174272 |
“Nigari” and “calcium-set” name the salt used to firm the tofu (nigari is magnesium chloride; calcium-set means calcium sulfate) — it moves both the protein and the calcium, and the “Why does every site give a different number?” section below explains how. USDA FoodData Central, per 100g, fetched July 12, 2026. The firm calcium-set row (17.3g) matches this site’s database, re-verified against the live FDC entry in July 2026. Silken rows come from a shelf-stable branded entry because USDA has no generic silken listing.
Three things fall out of that table. Silken tofu (4.8g) has about a quarter of the protein of a firm block (17.3g) — it is mostly water, and the firmness word on a silken carton describes how it slices, not what it feeds you. A firm calcium-set block reaches 85% of tempeh’s protein (17.3 vs 20.3g), close enough that the “tempeh has way more protein” framing quietly falls apart once you pick the right tofu. And the ladder mostly rises in one direction — more pressing, more protein — but it does not sort neatly by the label words, which is the trap the next section is about.
Why Does Every Site Give a Different Tofu Protein Number?
Because they each grabbed one rung and called it “tofu.” A page that says tofu has 8g pulled the regular entry. One that says 15 to 17g pulled the firm calcium-set entry. Both are correct. Neither is wrong. Neither tells you they picked.
Here is the part that trips up even careful writers: the labels do not rank the way you would guess. USDA’s firm calcium-sulfate tofu (17.3g) outscores its extra-firm nigari tofu (10.0g), even though “extra firm” sounds like it should win. What sets the protein number is how much water has been pressed out: that 17.3g block is only 70% water, while the extra-firm nigari block is 82%. A coagulant is the substance that curdles soy milk into curd, and it is either nigari (magnesium chloride, common in Japanese-style tofu) or calcium sulfate (a calcium salt, common in Chinese-style and most North American block tofu). Both are food-grade salts that have set tofu for centuries — not additives to worry about. The choice changes the curd and how much water the block holds, but it is not a protein shortcut on its own. USDA lists another firm tofu made with calcium sulfate and nigari together (FDC 172448) at just 9.0g, barely over half the pure calcium-sulfate block, because that one is 83% water. Firmness names come from the manufacturer, not a lab, and they are not standardized across brands or styles — so “extra firm” on a nigari block and “firm” on a calcium-set block are not measuring the same thing.
The takeaway is simple: ignore any tofu protein number that does not name the firmness and the style. If you want the high number in real life, you want a pressed block tofu — firm or extra-firm — not silken, and you can push it higher still by pressing the block yourself before cooking: wrap it in a clean towel, weigh it down with something heavy for 15 to 30 minutes, and pour off the water it squeezes out. Everything watery on that ladder is a different tool for a different job.
Does Tempeh Have More Protein Than Tofu?
Flip the query to “tempeh vs tofu protein” and the raw numbers look like a clean tempeh win. Per 100 grams, that holds — tempeh’s 20.3g tops the best tofu’s 17.3g. But per calorie, firm tofu wins.
| Per 100g | Firm tofu (calcium sulfate) | Tempeh |
|---|---|---|
| Protein | 17.3g | 20.3g |
| Calories | 144 | 192 |
| Fat | 8.7g | 10.8g |
| Protein per 100 calories | 12.0g | 10.6g |
Protein per 100 calories = protein ÷ calories × 100. Firm tofu: 17.3 ÷ 144 × 100 = 12.0. Tempeh: 20.3 ÷ 192 × 100 = 10.6. USDA FDC 172475 and 174272.
Tempeh is whole fermented soybeans, so it keeps more of the bean’s fat (10.8g vs 8.7g per 100g). That fat drives its calorie count up faster than its protein, so gram for gram of calories, firm tofu is the leaner protein — 12.0g per 100 calories against tempeh’s 10.6g. Protein also carries a thermic tax: your body burns roughly a quarter of protein’s calories just digesting it, versus almost nothing for fat, so a food’s per-calorie protein is worth a little more than the raw number suggests. None of this makes tempeh a bad choice — it means the two foods win on different axes. Tempeh gives you the most protein per bite; firm tofu gives you the most protein per calorie. If you are eating to a calorie target (see protein for weight loss), that distinction matters more than the 3-gram gap in the raw figure.
Which Is Cheaper Per Gram of Protein in Canada?
This is where the two foods stop being close. Block tofu is one of the cheapest complete proteins in a Canadian grocery store; tempeh is one of the priciest ways to buy soy. Here is what the online listings showed on a check of Ontario retailers (July 12, 2026, regular listed prices before sales):
| Product | Size | Price | $/100g |
|---|---|---|---|
| Sunrise Firm Tofu | 500g | $2.89 | $0.58 |
| Sunrise Medium Firm Tofu | 454g | $2.99 | $0.66 |
| Sunrise Silken Tofu | 300g | $2.00 | $0.67 |
| Sunrise Extra Firm Tofu | 350g | $3.69 | $1.05 |
| Lightlife Original Tempeh | 227g | $5.97–$6.49 | $2.63–$2.86 |
Sunrise tofu from Real Canadian Superstore (Ontario); tempeh range spans Walmart Canada’s national online price ($5.97) and RCSS Ontario ($6.49). All July 12, 2026, regular listed prices. These are one-pull, one-to-two-retailer snapshots, not national averages — treat them as “what a shelf looked like on one day,” and expect sale prices to run lower.
Now divide protein into dollars. Multiply the USDA protein per 100g by the package size and divide by price:
| Product | g protein per $ | ~$ per 100g of protein |
|---|---|---|
| Sunrise Firm 500g @ $2.89 | ~17–30 | ~$3–6 |
| Sunrise Medium Firm 454g @ $2.99 | ~12 | ~$8 |
| Sunrise Extra Firm 350g @ $3.69 | ~9–16 | ~$6–11 |
| Sunrise Silken 300g @ $2.00 | ~7 | ~$14 |
| Lightlife Tempeh 227g @ $5.97–6.49 | ~7–8 | ~$13–14 |
Example: Sunrise Firm, 17.3g × 500g ÷ 100 ÷ $2.89 = 29.9g protein per dollar. The firm block shows a range because Sunrise does not publish its coagulant; mapping it to USDA’s firm calcium-set entry gives about 30g/$, the conservative nigari mapping gives about 17g/$. Even the low end beats tempeh by more than 2x. Extra-firm shows a range for the same reason, and it is the priciest tofu per 100g, so it lands lower. The tempeh column uses USDA’s generic entry (20.3g/100g); Lightlife’s own Canadian label lists 18g of protein per serving, and brand figures vary a little either way — but tofu keeps its 2x-plus per-dollar edge across that range.
Firm block tofu delivers roughly 2 to 4 times more protein per dollar than tempeh — about 17 to 30 grams per dollar against tempeh’s 7 to 8. Put another way, a gram of protein from firm tofu costs somewhere around 3 to 6 cents; from tempeh, 13 to 14 cents. Medium and extra-firm blocks land in between: still cheaper per gram of protein than tempeh, but by a slimmer margin, and extra-firm is the most expensive tofu on the shelf per 100g. That firm-tofu gap is wide enough to survive every honest caveat: Sunrise’s own label protein could not be sourced online, so these rows map each product to the closest USDA generic entry by firmness, and the prices still need an in-store check before you bank on the exact cents. But the firm block clears twice the protein-per-dollar of tempeh no matter which reasonable coagulant mapping you plug in. (For where both land against 50 other foods, see the cheapest protein per gram.)
Are Tofu and Tempeh Complete Proteins?
Both are — because both are soy. A complete protein contains all nine essential amino acids — the building blocks your body cannot make and has to eat — in useful amounts. Most single plant foods fall short on one or two (beans are low in methionine, grains low in lysine — two of those nine amino acids), which is why plant-based eating usually leans on combinations. Soy is one of the few plant foods that clears the bar on its own, and processing it into tofu or fermenting it into tempeh does not take that away.
So on protein quality, tofu and tempeh are a tie, and both are in the same league as egg or dairy protein. The choice between them is about quantity, cost, texture, and what fermentation adds — not about whether you are getting a “real” protein. You are, from either one.
Is Tempeh Easier to Digest Than Tofu?
Tempeh is made by fermenting whole cooked soybeans with a Rhizopus mold — an edible, food-safe fungus cultivated on purpose, the same idea as the mold in blue cheese — that binds the beans into a firm cake. That fermentation is often credited with breaking down some of soy’s harder-to-digest compounds — phytic acid (which can bind minerals like iron and zinc) and the oligosaccharides that make beans gassy. The logic is sound and the tradition is old, but the human evidence is thin and mostly small studies, so the honest framing is “commonly credited with helping,” not “proven to improve absorption.” If beans reliably bother your stomach, tempeh is worth trying on that basis; just do not expect a night-and-day difference.
Does Tempeh Have More Fiber Than Tofu?
Fiber is the clearer edge. Tempeh is the whole bean, so it keeps the bean’s fiber — Lightlife’s Canadian label lists about 6g per serving. Tofu strains most of that fiber out with the soy pulp during pressing, leaving very little (USDA entries range from roughly 0.1 to 2.3g per 100g). One honesty note: USDA’s tempeh entry does not report a fiber value at all, so that 6-gram figure comes from the manufacturer’s label, not from FoodData Central. If you are eating soy partly for fiber, tempeh is the one that delivers it.
Does the Coagulant Change More Than Texture?
It changes your calcium intake dramatically, and the ingredient list tells you which you are holding. Look for “calcium sulfate” versus “nigari” or “magnesium chloride”:
- Calcium-set firm tofu: 683mg calcium per 100g (FDC 172475)
- Nigari extra-firm tofu: 282mg (FDC 174290)
- Tempeh: 111mg (FDC 174272)
The calcium-set block carries more than six times tempeh’s calcium and more than twice the nigari block’s. A half-cup serving (about 126g, USDA’s household measure) of calcium-set firm tofu works out to about 860mg of calcium — roughly two-thirds of a day’s target (Health Canada’s Daily Value is 1,300mg), from one ingredient. That is a genuine reason to reach for calcium-set tofu specifically if you do not eat much dairy. Nigari tofu tastes a touch cleaner to some palates and still delivers respectable calcium; it just is not the calcium play. The tell is on the label — “calcium sulfate” in the ingredients is what pushes the calcium up.
Which Firmness for Which Job?
The firmness ladder is really a job chart. Match the block to the task and the protein takes care of itself:
| Type | Best for | Protein /100g |
|---|---|---|
| Silken (soft or extra-firm) | Smoothies, creamy sauces, blended dips, dessert bases, miso soup | 4.8–7.4g |
| Soft | Soups, mapo tofu, gentle braises | 7.2g |
| Medium / regular | Braises, saucy stir-fries where a little crumble is fine | 8.1g |
| Firm | Stir-fry, pan-frying, baking, grilling | 17.3g |
| Extra-firm | Scrambles, skewers, air-frying, meal-prep cubes | ~10g (nigari); higher if calcium-set |
| Tempeh | Crumbles for tacos and pasta sauce, marinated strips, thick steaks | 20.3g |
For the highest-protein everyday cooking, firm and extra-firm blocks are the workhorses. Press the block, cube it, and it crisps: our Crispy Baked Tofu Buddha Bowl lands 36.7g of protein in one bowl, and the Sesame Tofu Stir Fry with Broccoli does 30.3g. For breakfast, crumbled firm tofu scrambles like egg without curdling — see the Tofu Scramble Breakfast Wraps (29.5g). A Miso Ginger Tofu Bowl (31.4g) and a grab-and-go Savory Tofu Snack Box (26.9g) round out the block-tofu rotation.
Tempeh brings something tofu cannot: a nutty, meaty crumble that holds up as taco filling or a thick marinated steak, as in these Sweet Chili Tempeh Stir-Fry Noodles (37.2g). In full disclosure, our recipe library runs six tofu dishes to that single tempeh one — a fair reflection of how much cheaper and more flexible block tofu is in a weekly rotation, but if you came for tempeh recipes specifically, that is the one we have so far.
Which Should You Buy This Week?
Buy firm block tofu if: you want the most protein per dollar (2–4x tempeh in Canada), the most protein per calorie, a high-calcium option without dairy (look for “calcium sulfate” on the label), or a neutral base that crisps, scrambles, and grills. This is the default for most high-protein cooking. Extra-firm does the same jobs with a bit more bite for scrambles and skewers — just note it usually costs more per gram of protein than plain firm.
Buy tempeh if: you want the highest protein per 100g, real fiber (about 6g per serving), a nuttier and meatier bite, or the fermented-soy option — and you are willing to pay two to four times more per gram of protein for it.
Skip silken tofu as a protein source. At about 4.8g per 100g it is a sauce, smoothie, and dessert ingredient. Excellent at that job; not the thing to build your protein around.
Most weeks the smart cart holds both: a couple of blocks of firm tofu for stir-fries, scrambles, and meal-prep cubes, and one pack of tempeh for the nights you want its bite. Unopened, both keep in the fridge to the printed best-before date, usually a few weeks out; once a package is open, use it within a few days (store leftover raw tofu covered in fresh water). Cooked, the clock is set by how fast bacteria build up on a moist, high-protein food — figure three to four days in the fridge, so a Sunday cook covers you through about Wednesday. To lean on a batch the rest of the week, freeze the portion you won’t reach by then; freezing also firms raw tofu into a chewier, marinade-hungry texture many people prefer for stir-fries. But if you are optimizing a single line on the receipt for grams of protein, firm block tofu is the answer, and it is not close.
The Bottom Line
Grab two blocks of firm, calcium-set tofu — check the ingredient list for “calcium sulfate,” the marker for the high calcium (683mg per 100g), and read the Nutrition Facts protein line to catch the well-pressed blocks that hit about 17.3g. Press and cube them for stir-fries, scrambles, and meal-prep; at roughly 3 to 6 cents per gram of protein they are one of the cheapest complete proteins in the aisle, 2 to 4 times better value than tempeh. Add one pack of tempeh only if you want its nutty bite or its fiber (about 6g per serving), and skip silken for protein — it belongs in smoothies and sauces. In store, don’t trust the “firm / extra-firm” adjective alone: the coagulant flags the calcium, and the printed protein number is what pins the protein.
Frequently Asked Questions
Is extra-firm tofu as high in protein as tempeh? Close, on the best blocks. USDA’s firm calcium-set tofu reaches 17.3g protein per 100g, about 85% of tempeh’s 20.3g. Per calorie, firm tofu leads, 12.0 vs 10.6g per 100 calories, because tempeh carries more fat. Note that USDA’s nigari extra-firm entry is only 10.0g — the coagulant and pressing, not the “extra firm” label, set the number.
How much protein is in silken tofu? About 4.8g per 100g (55 calories) for soft silken, roughly a quarter of what a firm pressed block delivers. Even a silken carton labelled “extra firm” only reaches about 7.4g. Silken is a sauce and smoothie ingredient, not something to build a meal’s protein around.
Why does firm tofu sometimes list more protein than extra-firm? Because the number tracks water content and coagulant, not the firmness word on the box. USDA’s firm calcium-sulfate tofu (17.3g per 100g) outscores its extra-firm nigari tofu (10.0g). “Firm” and “extra firm” are manufacturer labels, not lab measurements, so they do not rank consistently across styles.
Is tofu or tempeh cheaper for protein? Tofu, by a wide margin in Canada. Firm block tofu runs about 17 to 30 grams of protein per dollar (roughly 3 to 6 cents per gram), while tempeh runs about 7 to 8 grams per dollar (13 to 14 cents per gram) — a 2-to-4x advantage for firm tofu. Medium and extra-firm blocks cost a little more per gram but still beat tempeh, based on Ontario prices checked in July 2026 before sales.
Are tofu and tempeh complete proteins? Yes, both. Each is made from soy, which supplies all nine essential amino acids in useful amounts. That puts their protein quality on par with egg and dairy, and neither processing nor fermentation removes it.
Does tempeh have fiber, and tofu doesn’t? Roughly. Tempeh is whole fermented soybeans and keeps the bean’s fiber — manufacturer labels list about 6g per serving — while tofu strains most of its fiber out during pressing (USDA tofu entries run about 0.1 to 2.3g per 100g). USDA does not publish a fiber value for tempeh, so the 6-gram figure comes from the product label.
- The Cheapest Protein Per Gram: 52 Foods Ranked — where tofu and tempeh land against beans, chicken, and beef.
- Protein Per Calorie, Ranked — the leanest proteins, where firm tofu’s per-calorie edge fits in.
- How Much Protein Do You Actually Need? — set the target before optimizing the source.
Featured Recipes
All 6 recipes from this article, ready to cook
1. Crispy Baked Tofu Buddha Bowl
Cornstarch-coated tofu bakes golden and crispy. 37g protein, 627 cal, 50 min. Sesame-ginger dressing ties together edamame, brown rice, and fresh veggies.
View Recipe2. Sweet Chili Tempeh Stir-Fry Noodles
Crispy pan-seared tempeh in sweet chili glaze tossed with tender noodles and crunchy vegetables. 37g protein, 714 cal in 30 min.
View Recipe3. Miso Ginger Tofu Stir-Fry Bowl
Pan-seared tofu in savory miso-ginger sauce. Japanese-inspired comfort with 31g protein and 549 cal. Ready in just 30 minutes.
View Recipe4. Sesame Tofu Stir Fry with Broccoli and Bell Peppers
Pan-seared tofu with crisp broccoli and sweet bell peppers in savory sesame sauce. 30g protein, 540 cal, 30 min. Classic Asian wok flavor.
View Recipe5. Hearty Tofu Scramble Breakfast Wraps
Savory seasoned tofu scramble with black beans and spinach in warm tortillas. 48g protein, 633 cal for a filling morning meal.
View Recipe6. Savory Tofu & Veggie Snack Box
Crisp veggies and marinated tofu cubes with sesame-ginger dip. 27g protein, 405 cal, ready in 45 min. Zero cooking, all flavor.
View Recipe


