This Thai basil tofu stir-fry is a quick, fragrant, and satisfying weeknight dinner that pairs crisped cubes of tofu with crunchy green beans, sweet red pepper, and a punchy soy-oyster-chili sauce. It’s the kind of dish that smells like a street stall in Bangkok the moment the basil hits the hot pan—perfect for when you want bold flavor without a lot of fuss. If you’re exploring similar Southeast Asian stir-fries, you might also enjoy this take on Thai basil beef rolls and Vietnamese spring rolls, which share many of the same aromatic notes.
Why you’ll love this dish
This recipe brings bold Thai flavors to a simple, plant-forward plate. It’s fast, budget-friendly, and flexible: press the tofu for a meatier bite, dial the chili to your tolerance, or swap in seasonal vegetables. The holy basil gives a peppery, clove-like aroma that sets the dish apart from other basil sautés.
“A weeknight lifesaver—crispy tofu, punchy sauce, and that basil finish make it feel special without special effort.” — home cook review
Perfect occasions: busy weeknights, casual dinner parties, meal-prep lunches (keep the rice separate), or anytime you crave bright, savory comfort food.
How this recipe comes together
Short overview so you know what to expect:
- Press and cube firm tofu, then pan-fry until golden and crisp.
- Sauté aromatics and stir-fry the vegetables until tender‑crisp.
- Return the tofu, add the soy/oyster/chili sauce, and cook briefly so everything is coated.
- Toss in holy basil just before serving so it wilts and releases fragrance.
This sequence keeps tofu crispy while ensuring the vegetables stay lively and the basil remains aromatic.
What you’ll need
- 14 oz firm tofu — drained and pressed (or extra-firm for best results)
- 2 tablespoons vegetable oil (neutral oil with a high smoke point)
- 3 cloves garlic, minced
- 1 red bell pepper, sliced into strips
- 1 cup green beans, trimmed and halved if large
- 2 cups fresh holy basil leaves (Thai basil can substitute if holy basil isn’t available)
- 3 tablespoons soy sauce (use low-sodium if preferred)
- 1 tablespoon oyster sauce (or vegetarian mushroom-based oyster sauce for vegan)
- 1 tablespoon chili sauce (adjust to taste; sambal oelek or sriracha work well)
- Cooked rice, for serving
Ingredient notes: if you need gluten-free, use tamari and a gluten-free oyster alternative. For crisper tofu, toss cubes lightly with 1 tablespoon cornstarch before frying.
Step-by-step instructions
- Press the tofu: wrap the block in paper towels or a clean kitchen towel and press under a weighted pan for 15–30 minutes to remove excess moisture. Cut into 1-inch cubes.
- Heat the pan: warm 2 tablespoons vegetable oil over medium-high heat in a large skillet or wok until shimmering.
- Crisp the tofu: add tofu cubes in a single layer without overcrowding. Let them brown undisturbed 2–3 minutes per side, turning to get an even golden crust (about 5–7 minutes total). Remove tofu to a plate and set aside.
- Sauté garlic: using the same pan, lower heat slightly if needed and add minced garlic. Sauté for about 30 seconds until fragrant—don’t let it burn.
- Stir-fry vegetables: add sliced red bell pepper and trimmed green beans. Toss and stir-fry on high heat for 3–4 minutes until they’re tender-crisp with a nice sear.
- Combine tofu and sauce: return the tofu to the pan. Pour in 3 tablespoons soy sauce, 1 tablespoon oyster (or vegetarian) sauce, and 1 tablespoon chili sauce. Stir gently to coat everything. Cook another 2–3 minutes to let the sauce reduce slightly.
- Finish with basil: add 2 cups fresh holy basil leaves. Toss for about 30–60 seconds until the basil wilts and releases its aroma. Remove from heat.
- Serve: plate the stir-fry over hot cooked rice and enjoy immediately.
Timing tips: use a hot pan and work quickly once the veggies hit the heat to preserve texture. If your pan feels crowded, cook in two batches.
Best ways to enjoy it
Serve piping hot over jasmine rice for classic comfort. For lighter options, try cauliflower rice or a bed of brown rice for more fiber. Top with a fried egg for richness and extra protein, or squeeze a lime wedge over the finished dish for brightness.
If you like green‑bean-forward stir-fries with a savory sauce, compare textures and flavors with a chicken and green bean stir-fry to see how different proteins change the dish’s profile.
Garnish ideas: extra basil leaves, sliced fresh chilies, toasted sesame seeds, or a drizzle of sesame oil.
Storage and reheating tips
- Refrigerator: cool within 2 hours, then transfer to an airtight container. Keeps 3–4 days.
- Freezing: not ideal—the tofu will change texture and the basil will lose color. If you must freeze, remove basil and freeze just the tofu/vegetables in sauce for up to 2 months; thaw overnight in the fridge.
- Reheating: for best texture, reheat in a skillet over medium heat with a splash of oil to re-crisp the tofu and wake the sauce. Microwaving is faster but will soften the tofu and vegetables; add a squeeze of lime after reheating to freshen flavors.
Food safety: always cool and refrigerate leftovers promptly and reheat to steaming hot before serving.
Pro chef tips
- Pressing matters: more pressing time gives a firmer, chewier tofu that crisps better. Aim for at least 15 minutes.
- Don’t crowd the pan: overcrowding causes steaming instead of browning—fry tofu in batches if necessary.
- High heat, quick tosses: use a hot pan and keep stir-fries moving to get that wok hei (charred aroma) while preserving crispness.
- Sauce balance: if your sauce tastes too salty, add a teaspoon of sugar or a splash of coconut water; if it’s flat, a squeeze of lime brightens it up.
- Basil timing: add basil at the very end to preserve its fragrance—overcooking it will make the leaves limp and dull the aroma.
Creative twists
- Protein swaps: use tempeh, seitan, or thinly sliced chicken or beef for a non-vegetarian version.
- Vegetable variations: add snap peas, baby corn, sliced zucchini, or mushrooms. Adjust stir time for root vegetables.
- Heat and sweetness: stir in a teaspoon of palm sugar for a Thai-style balance, or add fresh Thai bird’s eye chilies for more authentic heat.
- Make it saucier: double the sauce quantities and serve extra over rice or noodles for a saucier bowl.
- Low-carb option: serve over cauliflower rice or in lettuce wraps for a lighter meal.
Common questions
Q: Can I use regular basil instead of holy basil?
A: Yes—Thai (holy) basil has a peppery, slightly anise-like flavor, while Thai sweet basil will be milder and more sweet-anisey. Use what you can find; add a small amount of fresh cilantro or a splash of fish sauce (if not vegan) to recreate complexity.
Q: How long does pressing tofu take, and is there a shortcut?
A: At least 15 minutes is recommended for extra-firm tofu and 30 minutes for firm blocks. A shortcut: freeze and thaw the tofu first—this changes texture and makes it chewier, then press briefly after thawing to remove moisture.
Q: Is this recipe vegan?
A: It can be. Use a vegetarian oyster sauce (mushroom-based) or a mix of soy sauce + mushroom powder instead of traditional oyster sauce. Check your chili sauce for non-vegan additives.
Q: Can I meal-prep this for lunches?
A: Yes. Store tofu and veggies in one container and rice in another to avoid sogginess. Reheat in a skillet for best texture.
Q: What if my tofu falls apart when frying?
A: Use firm or extra-firm tofu, drain and press well, and handle gently. Let one side brown before flipping so it firms up from the searing.
If you want more stir-fry inspiration or a protein-heavy green-bean dish, check the earlier suggestion for a similar flavor profile to compare techniques and timing.
PrintThai Basil Tofu Stir-Fry
A quick and fragrant Thai basil tofu stir-fry that features crispy tofu, vibrant vegetables, and a punchy soy-oyster-chili sauce.
- Prep Time: 30 minutes
- Cook Time: 15 minutes
- Total Time: 45 minutes
- Yield: 4 servings
- Category: Main Course
- Method: Stir-Frying
- Cuisine: Thai
- Diet: Vegetarian
Ingredients
- 14 oz firm tofu, drained and pressed
- 2 tablespoons vegetable oil
- 3 cloves garlic, minced
- 1 red bell pepper, sliced into strips
- 1 cup green beans, trimmed and halved if large
- 2 cups fresh holy basil leaves or Thai basil
- 3 tablespoons soy sauce
- 1 tablespoon oyster sauce (or vegetarian alternative)
- 1 tablespoon chili sauce (adjust to taste)
- Cooked rice, for serving
Instructions
- Press the tofu by wrapping it in paper towels and placing a weighted pan on top for 15–30 minutes.
- Cut the pressed tofu into 1-inch cubes.
- Heat oil in a large skillet over medium-high heat until shimmering.
- Add tofu cubes in a single layer and brown for 2–3 minutes per side, then remove to a plate.
- Sauté minced garlic in the same pan for about 30 seconds until fragrant.
- Add red bell pepper and green beans; stir-fry for 3–4 minutes until tender-crisp.
- Return tofu to the pan, then stir in soy sauce, oyster sauce, and chili sauce. Cook for another 2–3 minutes.
- Finish by adding holy basil and tossing for 30–60 seconds until wilted and aromatic.
- Serve over hot cooked rice.
Notes
For crisper tofu, toss with cornstarch before frying. Use low-sodium soy sauce for a lighter dish. Adjust chili sauce to your preference for heat.

