Main image of Sweet and Sour Tofu Stir Fry

Sweet and Sour Tofu Stir Fry

30 min


The sweet and sour stir fry has become a very well-known westernized Cantonese dish, which is especially popular when ordering take-out. It's quick and easy to make, making it a great meal to enjoy on busy days.



30 min


10 min


20 min


Soy symbol


Swap out

Gluten symbol


Free from

Peanut symbol


Treenut symbol

tree nut

Sesame symbol




Sweet & sour sauce


  • 1½ cups (300 g)
    uncooked white rice
  • 2 tsp (10 mL)
    vegetable oil
  • 1
    red onion, thinly sliced
  • 1
    carrot, finely chopped
  • 1
    red bell pepper, thinly sliced
  • ½ cup (126 g)
    canned pineapple chunks

Optional garnish

  • sliced green onion
Buy ingredients on AmazonFresh  



  1. To a large shallow bowl, add the tofu cubes and soy sauce, and gently toss to coat. Then add the cornstarch, salt, and pepper. Gently stir until all the pieces are well coated.
  2. Heat a large pan over medium-high heat, and add in the oil. When hot, add the tofu and cook the tofu for 7 - 10 minutes, or until it's crispy and golden on all sides. Don't disturb the tofu too much while it's cooking, otherwise, it might crumble. Only stir it every couple of minutes.
  3. While the tofu cooks, make the sauce: to a small bowl, whisk together the ingredients for the sauce.
  4. If choosing to enjoy this stir fry with rice, now is the time to start cooking it according to the package instructions.
  5. When the tofu is golden, transfer it to a bowl and set it aside.
  6. Returning the same large pan to the heat, add the oil, onion, and carrot. Cook for 4 - 5 minutes.
  7. Then add the bell peppers and pineapple chunks, and cook for another minute.
  8. Add the sweet and sour sauce to the veggies in the pan, along with the tofu. Let it simmer for 3 minutes, or until the sauce thickens a bit.
  9. Remove it from the heat, serve alongside the rice, garnish, and enjoy!


Plate method

The Plate Method is a visual tool that helps us ensure our dietary needs are on track. Touch the image below to see how this recipe measures up.

Grains 50%

uncooked white rice

Proteins 20%

extra firm tofu

Fruits & Veggies 30%

canned tomato paste

clove garlic

freshly grated ginger

red onion


red bell pepper

canned pineapple chunks


extra firm tofu


vegetable oil

vegetable oil

Nutrition info

We believe that focusing on numbers can harm our relationship with food. Instead, our philosophy is to Nourish the Cells & the Soul. If you require specific nutrition information due to a medical condition, please consult with a dietitian or physician. The nutritional information provided is composed with the utmost care. However, we cannot guarantee the correctness of the displayed values, see also our disclaimer.

Show nutrition info  

Watch it step-by-step!

More for the eyes

image of image of image of

Discussion & Rating

Rate this post

Leigh - April 22, 2021, 1:53 p.m.

Absolutely delicious!
I made this recipe with a few substitutions:
vegan sausages instead of tofu.
pasta sauce and ketchup instead of tomato paste
And apple cider vinegar instead of rice vinegar
Still turned out great regardless, will definitely be making this one again.

PUL Team - April 24, 2021, 1:31 a.m.

Super creative substitutes, Leigh! So glad you enjoyed the dish 🤩

lory - April 19, 2021, 10:56 p.m.

Hi! I'm from Montréal and just find your youtube channel. Thanks to you, my non vegan boyfriend fall in love with this recipe and realise that vegan meal can be delicious.

PUL Team - April 20, 2021, 6:06 a.m.

Hello, lory! The thanks to you for sharing this lovely review 🥰

Deepa - April 5, 2021, 3:38 p.m.

I was so surprised by how simple this recipe was! I ended up not having pineapple juice, so I ended up letting a few pieces of my frozen pineapple sit in the glaze for a bit, not sure if it did anything but still tasted great!

My only issue was getting the tofu to really crisp up and not get slimy with the cornstarch. Still figuring out how to get it to not all stick to my pan, but next time I think I'll try a touch less cornstarch and a different cooking oil.

Overall, SUCH a good recipe. I can't wait to eat it throughout the week!

PUL Team - April 5, 2021, 7:50 p.m.

Hi Deepa, awesome to hear about the pineapple chunks 🍍 Using a non-stick pan, lowering the heat a bit, and adding a touch more oil may help the tofu not stick to the pan. For getting the cornstarch to work its magic, letting the mixture sit at a gentle simmer for longer may help as well! So happy you enjoyed the recipe despite this 😀

Chloe - March 30, 2021, 2:51 a.m.

Tonight was my third time making this recipe and it's still a crowd favorite! I have started to make one edit- I use orange juice instead of pineapple juice and I just leave the pineapple out. I found that the orange juice has the same zip and is easier to find in the grocery store for me. Leftovers of this recipe keep extremely well. I am not vegan or vegetarian, but I enjoy trying Sadia's recipes and I am getting better at cooking tofu!

PUL Team - April 2, 2021, 11:56 p.m.

Mmm orange juice is a lovely idea, Chloe! Thanks so much for sharing 😃

Joey - March 29, 2021, 4:36 p.m.

Delicious!! The tofu glaze tastes amazing and I really ike the addition of pineapple. Yumm!!!

PUL Team - April 2, 2021, 11:32 p.m.

Yay! So happy you enjoyed this one, Joey :D

Maria - March 22, 2021, 8:44 a.m.

Hi, I'm from Spain and I just wanted to say that I love your videos. You're such a good cooker and you make everything look easy! Also I wanted to congratulate you with the new website, it's beautiful, cute and also super helpful. Thank you a lot for the love you put on pick up limes, you have inspired me. ( I had started to be vegetarian 5 months ago, but planning to be vegan)
Sorry for my english, I'm 17 years old and I am still learning it.
Best wishes,

Sadia - March 29, 2021, 5:42 p.m.

Aw thanks so much, Maria - that means so much! 💗 And your English is perfect!

Maria - March 22, 2021, 8:39 a.m.

OMG!! How good is it! Love this recipe!

Sadia - March 29, 2021, 4:23 p.m.

😃 yay!