Sweet and sour tofu with pepper and onion over steamed rice

If you appreciate a simple and tasty tofu stir fry, you can’t miss this sweet and sour tofu. I’ve posted a few Chinese takeout style tofu recipes in the past, such as General Tso’s Tofu, Tofu and Broccoli, and Black Pepper Tofu. I’ve gotten so many requests for sweet and sour tofu, so I finally developed one for you. I can’t believe it took me so long to get to making this dish, because it tastes SO GOOD! The tofu cubes are golden crispy, extra crunchy on the outside, and tender inside. The sauce is very fragrant and rich. Serve it over steamed white rice – it is truly an indulgent feast. 

So let’s jump in and learn how to make this delicious dish!

The secret to extra flavorful and crispy tofu

I rarely press tofu. But I have a few tricks that helps you create the best tofu texture:

  1. Use a bit of salt to marinate the tofu before cooking. The salt draws moisture out of the cut tofu and seasons it at the same time. All you need to do is pat the tofu dry right before cooking. It will not be waterlogged and will have a better taste. 
  2. Cornstarch adds the best crunchy crispy texture. You can actually directly pan fry the tofu until golden brown and crispy. But by using cornstarch, it gives you the extra crunchiness and a delicious taste, one that is like deep fried battered tofu but without deep frying.
  3. Pan fry the tofu long enough to crisp it up. You do not need a wok or deep fryer for this heavenly crispy texture. All you need is a nonstick skillet and a thin layer of oil that is just enough to cover the whole skillet. The key is to let the tofu cook long enough so it has time to crisp up. 
Take-out style crispy tofu with pepper and onion in sticky sauce
Sweet and sour tofu over steamed rice close up

Best pan for sweet and sour tofu

I highly recommend a 12” (or larger) nonstick skillet to make sweet and sour tofu. It simply saves you so much trouble because the tofu won’t stick to the skillet and fall apart when you try to pry it up.

It is entirely possible to use a cast iron skillet or a carbon steel skillet. But you will need to use a bit more oil. Also make sure to cook the tofu until fully browned before moving it, to keep it intact. 

Ingredients 

Your table should have marinated tofu, cornstarch, oil, mixed sauce, aromatics in a bowl, and pepper and onions on a plate.

I prefer to group ingredients together if I plan to add them at the same time during cooking. It saves some cleanup and it makes me less likely to forget to add them. 

PS. I always love a colorful sweet and sour tofu so I used a third of three different colored peppers. Feel free to use any color(s) you prefer!

Ingredients for making sweet and sour tofu
Sweet and sour tofu over steamed rice

How to cook sweet and sour tofu

Cooking sweet and sour tofu couldn’t be easier!

  1. Mix the oil and cornstarch with the tofu. It’s totally OK if the tofu is not coated evenly. It creates a nice texture this way.
  2. Pan fry the tofu. Take time to make sure the bottom is browned before flipping it.
  3. Cook the other side of the tofu. Separate it with chopsticks if you can, because it tends to stick together due to the cornstarch. Once done, remove the tofu so it crisps up a bit more before mixing with the sauce.
  4. Fry the aromatics until fragrant.
  5. Add the sauce and cook until slightly thickened.
  6. Add back the tofu with vegetables. Stir to mix well and serve!

NOTE: I prefer to cook my vegetables very briefly, so they stay vibrant and crisp. If you prefer the vegetables a bit more softened, you can add them after you fry the aromatics. Quickly stir frying them for a minute will do the job. Then proceed to add the sauce and tofu.

Cooking sweet and sour tofu step-by-step

Afterthoughts

Granted, this sweet and sour tofu does contain quite a bit of sugar. But it is still much healthier than the restaurant version. I used plenty of aromatics to make the sauce fragrant without using too much sugar. If you have a family member who doesn’t usually like tofu, I think this one will be a great introduction to the magical world of tofu!

Take-out style crispy tofu with pepper and onion in sticky sauce

More delicious tofu recipes

Chinese Cooking Made Easy

Are you new to this website? This free email series is a great place to start. I’ll walk you through a few of my most popular recipes and show you how and why they work. You’ll quickly start to cook better Chinese food in your own kitchen.

Extra crispy sweet and sour tofu served with crunchy, colorful vegetables and a rich, sticky sauce makes a delicious Chinese dinner! The result is so good that you won’t want to order takeout again. {Vegetarian, Vegan, Gluten-Free Adoptable}

Sweet and Sour Tofu (糖醋豆腐)

4.94 from 15 votes
Prep Time: 18 minutes
Cook Time: 12 minutes
Total Time: 30 minutes
Servings: 4 servings
Extra crispy sweet and sour tofu served with crunchy, colorful vegetables and a rich, sticky sauce for a delicious Chinese dinner! The result is so good that you won’t want to order takeout again. {Vegetarian, Vegan, Gluten-Free Adoptable}
To make the dish gluten-free, use dry sherry to replace the Shaoxing wine. Use tamari to replace the soy sauce.

Ingredients 

Tofu

  • 1 block (16 ounces / 450 g) extra firm tofu , cut into 1/2 inch (1 cm) squares
  • 1/4 teaspoon salt
  • 1 tablespoon peanut oil
  • 4 tablespoons cornstarch

Sauce

  • 2 tablespoons ketchup
  • 2 tablespoons Shaoxing wine (or dry sherry)
  • 2 tablespoons rice vinegar
  • 2 tablespoons light soy sauce (or soy sauce)
  • 3 tablespoons brown sugar (*Footnote 1)
  • 2 tablespoons water
  • 1/2 tablespoon cornstarch

Stir-fry

  • 1/4 cup peanut oil (or vegetable oil)
  • 2 cloves garlic , minced
  • 2 teaspoons minced ginger
  • 1/2 small white onion , chopped into 1/2 inch (1 cm squares)
  • 1 sweet pepper , chopped into 1/2 inch (1 cm squares) (I used a mix of colors in this recipe)

Instructions

  • Marinate the tofu: Spread the tofu on a medium-sized baking sheet and sprinkle with salt. Gently mix a few times. Let marinate for 15 to 20 minutes while preparing the other ingredients.
  • For the sauce: Mix all the sauce ingredients together in a small bowl and set aside.
  • Prepare the tofu: When you’re ready to cook, pat the tofu dry with paper towels. Add the peanut oil. Mix a few times. Then add the cornstarch, one tablespoon at a time. Stir gently until all the tofu is coated evenly with a thin paste.
  • To cook the stir fry: Heat oil over medium-high heat in a large skillet until hot. Add the tofu pieces in a single layer.
  • Cook over medium heat until the bottom turns golden, 4 to 5 minutes or so. If using a nonstick skillet, use a pair of chopsticks to separate the tofu as much as you can during the time (*Footnote 2). Flip to brown the other side, another 3 to 4 minutes until turning golden. Transfer the tofu to a big plate and remove the pan from the stove.
  • You should still have 1 to 2 tablespoons of oil in the pan. Wipe off any excess oil with paper towels if needed. Add ginger and garlic. Cook and stir a few times until it releases fragrance.
  • Stir the sauce again to dissolve the cornstarch completely. Pour into the pan. Stir and cook until it thickens.
  • Add the white onion and peppers. Stir a few times, then add back the cooked tofu. Stir to coat everything with the sauce, 30 seconds or so. Transfer everything to a big plate. Serve hot as a main dish.

Video

Ingredient Substitution Guide

Notes

  1. Reduce to 2 tablespoons sugar for a less sweet dish.
  2. The tofu tends to stick together because of the cornstarch, so separating it helps with the later cooking. However, you should not try to separate the tofu if using a carbon steel or cast iron pan, as doing so will break apart the tofu pieces. Wait until the bottom is fully cooked before flipping, and the tofu will release without issue.

Nutrition

Serving: 1serving, Calories: 304kcal, Carbohydrates: 26.5g, Protein: 10.6g, Fat: 18.4g, Saturated Fat: 3.3g, Sodium: 765mg, Potassium: 317mg, Fiber: 2g, Sugar: 13.2g, Calcium: 246mg, Iron: 2mg

Have a question or feedback? Add a Comment

Did you make this? I want to see! Tag @OmnivoresCookbook on Instagram, and rate the recipe below.

The recipe was updated with major changes in 2022. If you want the older version, see the recipe below:

Sweet and Sour Tofu (Old Version)

Sauce

  • 1/4 cup vegetable stock
  • 2 tablespoons light soy sauce
  • 2 tablespoons Shaoxing wine (or vegetable stock)
  • 1 tablespoon rice vinegar
  • 4 tablespoons tomato paste
  • 1 tablespoon maple syrup (or sugar)

Cook

  • 1/2 head small broccoli, cut into bite size florets
  • 2 tablespoons vegetable oil
  • 1 (16-oz. / 450-g) pack extra-firm or firm tofu, drained and cut into bite size pieces (about 1/2″ thick, 1 1/2″ long and wide)
  • 1/2 small onion, sliced
  • 3 cloves garlic, minced
  • 1 teaspoon minced ginger
  1. Mix all the ingredients for the sweet and sour sauce in a bowl. Set aside.
  2. Heat 1/4 cup water in a large nonstick skillet over medium-high heat until boiling. Spread broccoli and cook covered for 1 minute, or until it reaches the desired texture. Transfer the broccoli to a plate and wipe the extra water from the skillet with a few paper towels held in a pair of tongs.
  3. Heat a tablespoon of oil (more oil if using a carbon steel or a cast iron pan, to prevent sticking) in the same skillet over medium-high heat. When the oil is hot, carefully spread the tofu in the skillet. Cook the tofu without disturbing it until the bottom side turns golden brown, about 5 minutes. Flip tofu with a spatula and grill the other side to the same doneness. Transfer the tofu to a plate and set aside.
  4. Add a tablespoon of oil into the same skillet and heat on medium-high heat. Add onion. Stir and cook for 2 minutes, until the edge of the onion turns slightly golden. 
  5. Add the garlic and ginger. Stir a few times until fragrant. 
  6. Add the sweet and sour sauce. Add the cooked tofu back into the skillet. Stir gently to mix well with the sauce. Cook until the sauce has reduced to the desired thickness, another 2 to 3 minutes. 
  7. In a large bowl, add the cooked broccoli. Pour the tofu and all the sauce on top. Serve with steamed rice or noodles on the side.