Spicy Tofu Stir-fry

This one-pot, vegetarian stir-fry uses cubes of extra-firm tofu fried until the surface is crispy. It’s then tossed with crunchy vegetables and a lightly sweet, spicy, and sticky orange sauce.

One Pot Vegetarian Stir Fry with tofu served in a bowl.
Jessica Gavin

One of the fastest ways to get a satisfying dinner on the table is to make stir-fry. You can cook the protein, vegetables, and sauce all in one pan!

For this quick vegetarian version, I used cubes of extra-firm tofu lightly pan-fried to create a beautiful, crispy, golden crust. The inside remains soft and the contrasting texture is lovely! I finish it off with fresh, colorful vegetables like shiitake mushrooms, sugar snap peas, and chopped bell peppers.

A sweet and spicy orange sauce adds a burst of flavor that coats all of the ingredients. Meatless meals just got more exciting!

What’s the Best Tofu for this Recipe?

Extra firm tofu works best for stir-fry. The curd is pressed for longer when manufacturing, which yields a more compact soy protein product.

It’s still soft but it doesn’t crumble with gentle pressure. This prevents the tofu from falling apart as it fries in the hot oil and makes it easier to flip. When added back to the pan to toss with the sauce, the protein keeps its cube shape.

Vegetarian Stir Fry with Tofu served in a bowl with chopsticks.
Jessica Gavin

Tips and Tricks for Working with Tofu

To create a crispy crust, you have to remove as much surface moisture as possible from the tofu. The process outlined below takes about 10 minutes.

  • Cut the block into 3/4-inch sized cubes.
  • Line a baking sheet with paper towels then place the cubes on a baking sheet. Top with more paper towels.
  • Place another baking sheet on top with a weight, like a heavy can or jar. This will force some liquid out and dry the tofu’s exterior allowing for a crispy exterior.
  • Gently dry the pieces with dry paper towels right before frying to soak up any remaining water. 

What’s in this Sweet and Spicy Sauce?

Tofu is neutral in flavor, which means we can add a bold sauce to bump up the taste. I used honey and orange juice for sweetness, rice vinegar for a delicate acidity, and soy sauce for a savory umami element. 

The final flavor touch comes from garlic chili sauce, which leaves a gentle lingering heat. If you don’t have garlic chili sauce, use Sriracha or red chili flakes.

A cornstarch slurry added at the end of cooking thickens the sauce creating a glaze that clings to the tofu and vegetables.

Vegetarian Stir Fry with Tofu with snap peas.
Jessica Gavin

Best Swaps and Substitutions for Tofu Stir Fry

This recipe is pretty versatile. You can swap the tofu or a different protein source or replace the vegetables with almost anything you have in the house.

To switch up the vegetables:

  • Bok choy
  • Green beans
  • Snow peas
  • Zucchini
  • White, brown, or small portobello mushrooms
  • Napa cabbage
  • Red cabbage or carrots add a nice pop of color and crunch

To switch up the protein:

Other sources of vegetarian protein can be substituted for the tofu.

  • Seitan, made from wheat protein, offers a chewy meat like texture.
  • Slices or cubes of tempeh, pressed fermented cooked soybeans have a robust texture that’s good for frying and provides a nutty and grain flavor.
  • If you aren’t a vegetarian and want to use chicken that would work too.
Easy Tofu Stir Fry served with rice.
Jessica Gavin

What Would You Serve with This?

Serve this spicy tofu stir-fry with white or brown rice. For a low carb option, pair it with sautéed cauliflower rice.

A hot bowl of hot and sour soup or egg drop soup would be a great appetizer to enjoy before the main dish.

More Great Vegetarian Recipes

Spicy Tofu Stir-fry

Prep Time 30 mins
Cook Time 20 mins
Total Time 50 mins
Servings 4 servings


  • 16 ounces extra-firm tofu, cut into 1/2-inch cubes

  • 1/2 cup orange juice

  • 1/3 cup vegetable stock

  • 1/4 cup soy sauce

  • 3 tablespoons honey

  • 2 teaspoons rice vinegar

  • 1/2 teaspoon garlic chili sauce, add more for a spicier sauce

  • 1 tablespoon cornstarch

  • 2 tablespoons water

  • 4 teaspoons vegetable oil, divided

  • 1 teaspoon sesame oil

  • 4 ounces shiitake mushrooms, stems removed, 1/2-inch thick slices

  • 2 cups sugar snap peas

  • 1/2 large red bell pepper, 1/2-inch dice

  • 1/2 large green bell pepper, 1/2-inch dice

  • 1 tablespoon minced garlic

  • 2 teaspoons minced ginger

  • 1 tablespoon green onion, thinly sliced

  • Kosher salt, to taste

  • Black pepper, to taste


  1. Prepare the baking sheets:

    Line a large baking sheet with paper towels, have another baking sheet ready and a weight like a jar of sugar or flour.

  2. Press the tofu:

    Drain tofu and dry with paper towels. Arrange the tofu in a single layer on the baking sheet lined with paper towels. Cover with additional paper towels. Place a second sheet pan on top. Place a heavy can or jar on the pan to lightly press out the excess moisture from the tofu. Leave it for about 10 minutes.

    A canister with a spice blend to make a Healthy Stir Fry.
    Jessica Gavin
  3. Dry the tofu:

    After pressing, use dry paper towels to gently pat each piece of tofu dry to remove as much residual moisture as possible. Set the pieces aside on dry paper towels.

    Cubed tofu on a baking sheet to make Vegetarian Stir Fry with Tofu.
    Jessica Gavin
  4. Make the sauce:

    In a medium-sized bowl whisk together orange juice, vegetable broth, soy sauce, honey, rice vinegar, and garlic chili sauce. In a small bowl whisk together cornstarch and water, set aside.

    Whisking a sauce for One Pot Vegetarian Stir Fry.
    Jessica Gavin
    Whisking water and cornstarch to make an Easy Tofu Stir Fry
    Jessica Gavin
  5. Fry the tofu:

    Heat a wok or 12-inch nonstick skillet over medium-high heat. Add 3 teaspoons vegetable oil and sesame oil and heat until shimmering but not smoking. Swirl the pan to coat with the oil.

    Working in two batches, add tofu to the pan in a single layer. Cook until golden brown, about 2 to 3 minutes. Flip over and cook the other side until golden browned, another 2 to 3 minutes. Transfer to a clean plate lined with a paper towel, then fry the remaining tofu.

    Cubed tofu in a wok to make Healthy Stir Fry.
    Jessica Gavin
  6. Stir-fry the vegetables:

    Add the remaining 1 teaspoon of vegetable oil to the pan. Add the mushrooms and sugar snap peas, stir-fry for 2 minutes. Add the diced bell peppers, cook for 1 minute. Add the garlic and ginger, stir-fry for 30 seconds.

    Snap peas, mushrooms, and red peppers in a wok to make an Easy Tofu Stir Fry.
    Jessica Gavin
  7. Cook the sauce:

    Add the sauce mixture to the pan, simmer for 30 seconds. Mix the cornstarch mixture, then gradually add to the pan, stir constantly until thickened, about 30 seconds.

    Stir fried vegetables with sauce poured on top to make a One Pot Vegetarian Stir Fry.
    Jessica Gavin
    Cornstarch added to a wok for a Vegetarian Stir Fry with Tofu.
    Jessica Gavin
  8. Add the tofu back to the pan:

    Turn off the heat and add the tofu back to the pan, stir to coat and warm through, about 1 minute. Season tofu stir-fry with salt, pepper, and garlic chili oil to taste.

    A spoon mixing tofu and vegetables for a Vegetarian Stir Fry with Tofu.
    Jessica Gavin
    Tofu and vegetables mixed with sauce in a wok to make a Healthy Stir Fry.
    Jessica Gavin
  9. Serve:

    Serve tofu stir-fry with rice and garnish with green onions.

Nutrition Facts (per serving)
214 Calories
8g Fat
32g Carbs
8g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 4
Amount per serving
Calories 214
% Daily Value*
Total Fat 8g 10%
Saturated Fat 1g 4%
Cholesterol 0mg 0%
Sodium 1031mg 45%
Total Carbohydrate 32g 12%
Dietary Fiber 4g 16%
Total Sugars 22g
Protein 8g
Vitamin C 125mg 627%
Calcium 123mg 9%
Iron 3mg 16%
Potassium 574mg 12%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
Nutrition information is calculated using an ingredient database and should be considered an estimate. In cases where multiple ingredient alternatives are given, the first listed is calculated for nutrition. Garnishes and optional ingredients are not included.