Jump to Recipe
This crispy tofu stir fry has about 40 g of protein per serving and takes 50 minutes, including a 20-minute press for the tofu. The protein comes from extra-firm tofu, edamame and peanut butter, not powder, so it tastes like a normal stir fry.
Two 14 oz blocks of tofu supply about 80 g of the 160 g in the whole pan. Edamame adds roughly 33 g, and peanut butter, broccoli and rice cover the rest.
Soggy tofu is the one thing that goes wrong. If you skip the press or crowd the skillet, the cubes steam and the cornstarch coat turns gummy, so I fry in two batches.
It’s a big plate at about 770 calories with rice, and the sauce leans salty from the soy sauce. Cut the soy sauce to 2 tbsp if it tastes too salty to you.
Why You’ll Love This Recipe
- About 40 g protein per serving from whole foods, no powder
- The cornstarch crust holds up if you add the sauce last
- Tofu, vegetables and rice are done in 50 minutes
- Vegan as written, with a sauce from pantry staples
Ingredient Notes
- extra-firm tofu: Protein runs about 8 to 14 g per 100 g depending on brand, and I count 10 g. Check your label. Firm tofu works if you press it 30 minutes.
- cornstarch: It makes the dry, crackly crust. Potato starch or arrowroot work in the same amount.
- creamy peanut butter: Use a smooth one, natural or conventional. If it’s the natural kind, stir the oil back in first so the sauce doesn’t split.
- frozen shelled edamame: Add it straight from frozen, no thawing needed. It supplies about 33 g of the protein in the pan.
- soy sauce: Swap in tamari for a gluten-free version, and check that the label says wheat-free.

Crispy Tofu Stir Fry with Edamame and Peanut Sauce
Ingredients
Method
- Drain the tofu and wrap each block in a clean towel. Set a heavy pan on top and press for 20 minutes, swapping in dry towels once if they soak through.
- While the tofu presses, put the rinsed rice and 1 cup / 240 ml water in the 3-quart / 2.8 L saucepan and bring to a boil. Cover, cook on the lowest heat for 15 minutes, then leave it covered off the heat for 5 minutes.
- Whisk the peanut butter, soy sauce, maple syrup, rice vinegar, lime juice, sesame oil, sriracha, garlic and ginger in a bowl. Whisk in 4 tbsp / 60 ml hot water, adding up to 2 tbsp more, until the sauce drips off the whisk in a slow ribbon. Cut the broccoli, slice the pepper and scallions, and chop the peanuts.
- Pat the pressed tofu dry and cut it into 2 cm / 3/4 inch cubes. Toss with the cornstarch and salt in a bowl until every cube looks dry and chalky.
- Heat 1 1/2 tbsp oil in the 30 cm / 12-inch deep skillet over medium-high heat until it shimmers. Add half the tofu (about 325 g) in a single layer and fry for 6 minutes, turning every 90 seconds, until golden and crisp. Move to a plate, then repeat with the remaining 1 1/2 tbsp oil and tofu.
- Wipe out the skillet and heat 1 tbsp oil over high heat. Add the broccoli and stir for 2 minutes, then add 3 tbsp / 45 ml water, cover and steam for 2 minutes. Add the edamame and red pepper and cook uncovered for 2 minutes, until the broccoli is bright green and tender-crisp and the edamame is hot.
- Tip the vegetables into the 4-quart / 3.8 L bowl, add the sauce and scallions, and toss. Fold in the tofu last, then serve over the rice and top with the chopped peanuts.
Notes
- Press the tofu for 20 minutes, since wet cubes spatter and steam instead of crisping.
- Fry about 325 g of tofu per batch in the 30 cm / 12-inch skillet.
- Tofu protein varies from 8 to 14 g per 100 g, so check your label.
- Keep the heat at medium-high so the cornstarch browns without scorching.

Tips for Success
- Press the tofu for the full 20 minutes under a heavy pan, and swap in dry towels once if the first ones soak through.
- Cut the tofu into 2 cm / 3/4 inch cubes, since smaller pieces dry out and larger ones stay pale in the middle.
- Fry in two batches and leave the cubes alone for 90 seconds per side so the crust sets before you turn them.
- Pour the sauce over the vegetables first and fold in the tofu at the end, since the crust softens the longer it sits in sauce.
- Thin the peanut sauce with hot water a tablespoon at a time until it drips off the whisk in a slow ribbon.
Variations
- Swap soy sauce for tamari to make it gluten-free, and read the label since some brands still contain wheat.
- Use green beans or snap peas instead of broccoli, trimmed to 5 cm / 2 inch pieces, and cook them for the same time.
- Replace the peanut butter with sunflower seed butter and skip the chopped peanuts for a peanut-free plate, which loses about 2 to 3 g protein per serving.
Storage and Reheating
Crispy tofu stir fry keeps 3-4 days in the fridge when you store the tofu, the vegetables with rice, and the sauce in separate containers. Mixed together, the crust goes soft overnight.
Reheat the tofu on a 33 x 46 cm / 13 x 18 inch sheet pan at 220 C / 425 F for 8 minutes, flipping once, until the edges crackle again. Microwave the vegetables and rice for 90 seconds to 2 minutes, stirring once, then combine on the plate with the sauce.
The peanut sauce freezes for up to 2 months, so Sunday prep works well: mix a double batch and chop the vegetables ahead. Thaw the sauce overnight in the fridge and whisk in hot water. Don’t freeze the fried tofu, because it turns spongy.
Serving Suggestions
Crispy tofu stir fry is served over jasmine rice, and the 3/4 cup of dry rice in the recipe gives each plate about 2/3 cup cooked.
A cold cucumber salad dressed with rice vinegar and sesame seeds goes next to it, since the sharp dressing cuts the richness of the peanut sauce. Put lime wedges and extra sriracha on the table so everyone can adjust their own heat.
If someone at the table avoids green vegetables, serve the broccoli on the side and let them dip the tofu in the sauce.

FAQ
Why is my crispy tofu stir fry soggy after I add the peanut sauce?
Soggy tofu usually means the cubes held water or the pan was crowded. Press for 20 minutes, fry in two batches of about 325 g each, and add the tofu to the sauced vegetables at the very end. The cornstarch crust softens the longer it sits in wet sauce.
Can I use firm or silken tofu instead of extra-firm for crispy tofu stir fry?
Firm tofu works if you press it for 30 minutes and flip the cubes gently. Silken tofu falls apart in the skillet, so skip it. Softer tofu also carries less protein per 100 g, which pulls the per-serving number below 40 g.
Can I fry the tofu ahead and re-crisp it later?
Yes, store the fried tofu in a container for 3 to 4 days, then re-crisp it on a sheet pan at 220 C / 425 F for 8 minutes. It’s close to fresh but not identical. Keep the peanut sauce in its own container until you serve.
What goes well with tofu stir fry with peanut sauce besides rice?
Rice noodles or cooked quinoa both work in place of jasmine rice. A cold cucumber salad with rice vinegar cuts the richness of the sauce. I wouldn’t add a second heavy side, since the plate with rice is already about 770 calories.
How do I make crispy tofu stir fry with peanut sauce gluten free?
Use tamari in place of soy sauce, and check the label for wheat since some brands add it. Tofu, cornstarch, peanut butter, edamame and rice are gluten-free on their own. Confirm your sriracha brand too, as formulas vary.
How do you get 40 g of protein in a tofu stir fry without protein powder?
Most of it comes from two 14 oz blocks of extra-firm tofu (about 80 g), 300 g of edamame (about 33 g) and 4 tbsp peanut butter (about 16 g). Rice, broccoli and chopped peanuts fill the gap. Tofu brands vary, so check your label.

