This post may contain affiliate links. Please read our disclosure policy.
These moist and tender tofu meatballs come in the most delicious sweet, sour, and spicy sauce! It’s super saucy and ready in 50 minutes! Serve with rice or noodles for a delicious weeknight dinner!

Looking for a different way to use tofu? I’ve got you covered!
Inspired by Vietnamese meatballs called “Xiu Mai”, these tofu balls are super simple to prepare and packed with flavor! It’s amazing served on top of white rice with steamed broccoli on the side!
Did I mention this dish is also protein-packed (think 27g per serving) but also gluten-free and grain-free? Let’s do it!
⭐️ Why You Should Try It
- It requires just 10 basic, easy-to-find ingredients and comes together in about 30 minutes. Perfect for any weeknight dinner!
- Ultra moist and tender: Tofu keeps these “meatballs” moist and soft.
- It comes with the tastiest sauce: The sauce has the perfect balance of sweet and sour with a hint of spiciness. Plus, it’s prepared from fresh tomatoes!

🥣 How to Make It
The base for these meat-free balls is, you guessed it, tofu! Start by pressing the tofu through a nut milk bag to remove excess moisture; this step will help the balls hold together better.
Next, we have the seasonings, which consist of shallot, garlic, black mushrooms, maple syrup, soy sauce, and a lot of ground black pepper for some kick. I also added half a teaspoon of saté paste, it is not essential though, but it adds a subtle lemongrass flavor.
Try to mince the mushrooms, shallot, and garlic as finely as possible.


Combine everything together before shaping into balls! If you find the tofu mixture doesn’t hold together well, you can add a couple of tablespoons of cornstarch. Personally, I didn’t use any here.
I recommend using a cookie scoop to scoop out some of the tofu mixture, and then shape it into a ball between your hands.
Next, you have two options:
- Bake: The healthiest option and the easiest one. Place the tofu balls on a baking sheet lined with parchment paper and bake for about 20 minutes, flipping once halfway through baking.
- Fry: If you want slightly crispier and richer meatballs, you can deep-fry them until golden brown, about 5 minutes.


🍅 How to Make Sweet & Sour Sauce
Now, let’s talk about the sauce! It is a key element of this recipe as it will coat the tofu balls, giving them an addicting sweet and sour flavor.
To make the sauce, fry minced chili for a couple of minutes, I went with one small Thai chili, as I wanted it spicy. If you are not used to spicy dishes, I recommend starting with half of one.
Next, add the tomato purée and cook until the tomato no longer smells raw and has turned into a deeper red color.


Stir in the soy sauce, maple syrup, and five-spice for a subtle Chinese flavor. To thicken the sauce, pour in diluted cornstarch and cook for 1 more minute.

Finally, add the tofu balls to the sauce, stir to coat, and cook for another 3-5 minutes. It’s now ready to serve! You can then garnish with chopped green onions and toasted sesame seeds.

💬 FAQ
Firm tofu works best for this recipe. Stay away from extra firm tofu, as you will end up with very crumbly balls.
Black mushrooms, also called wood ears mushrooms, are dried mushrooms that are available in most Asian stores. Here, I used shredded wood ear mushrooms, but you can substitute them with one whole dry mushroom.
No, they won’t. The tofu balls are moist and very tender but will hold almost as well as regular meatballs.
It will keep for up to 3 days in the refrigerator. Reheat in a skillet over low-medium heat for 10-15 minutes.

If you are looking for a new way to use tofu, or simply want a protein-packed meal that is rich in flavor, you should definitely try these! Serve on top of rice with sautéed or steamed greens on the side for a complete meal!
🥢 More Asian-Inspired Recipes
⭐️ Did you like this recipe? Let us know in the comments below, and tag us on Facebook, Instagram, or Pinterest!
Update February 2022: New photos with step-by-step added, and recipe improved.


Save this recipe!
Enter your email below and I’ll send it to your inbox!
Plus, you will receive new recipes every week!
Tofu Meatballs in Sweet & Sour Sauce
Ingredients
Tofu Balls
- 21 ounces (600 g) of white firm tofu
- 1 shallot or 1/2 onion
- 2 cloves of garlic
- 1 tbsp dry minced wood ear mushrooms soaked in warm water for 20 minutes
- 1 tbsp maple syrup
- 1 tbsp (15 ml) soy sauce
- 3/4 tsp ground black pepper
- 1/2 tsp salt
- 1/2 tsp saté optional
Sweet & Sour Sauce
- 1 tbsp (15 ml) oil
- 1 small chili finely chopped
- 2 ripe tomatoes
- 1/4 cup water
- 1 clove of garlic
- 2 tbsp (30 ml) soy sauce
- 2 tbsp (30 ml) maple syrup
- 1/4 tsp five-spice powder
- 1 tsp cornstarch diluted in 4 tbsp water
- 3 tbsp chopped green onions
Instructions
Tofu Balls
- Preheat oven to 350°F (180°C) and line a baking sheet with parchment paper.
- Place the tofu in a nut milk bag and press it to drain excess water, depending on the tofu, you should remove 1/4 cup to 1/3 cup of water. This step is essential; otherwise, the balls won't hold together if the tofu is too moist. Transfer the drained tofu to a mixing bowl and set aside.
- Very finely mince the shallot, garlic, and dried mushroom. If you have a food processor, pulse a few times to get a fine mixture. Make sure the shallot and mushrooms are finely minced; otherwise, the balls won't hold together well. Add the minced onion, garlic, and mushroom to the tofu bowl.
- Next, add the seasonings: maple syrup, soy sauce, ground black pepper, salt, and saté if using. Mix well until fully combined. You should have a soft mixture.
- Form 2 and 1/2 tbsp balls and roll them gently between your hands. The balls will be quite soft but should hold together well. Place the tofu balls on the prepared baking sheet. Bake for about 20 minutes, flipping halfway through baking (be gentle when flipping to not break them). Remove from the oven and let cool for at least 10 minutes before removing from the baking sheet.
Sweet & Sour Sauce
- Cut off the core of the tomatoes and place them in a blender with 1/4 cup of water and a clove of garlic. Blend until you get a smooth tomato purée.
- Heat the tablespoon of oil in a large skillet over medium heat. Once hot, fry the chili for about 2 minutes. Reduce the heat to low and add the tomato purée. Bring back the heat to medium and cook for about 5 minutes, or until the tomato purée has turned into a deep red color.
- Pour in the soy sauce, maple syrup, and five-spice, and cook for 2 more minutes. Add the diluted cornstarch and stir to combine. Cook for one more minute, or until the sauce has thickened.
- Next, add the tofu balls, and cook for 5 more minutes, stirring regularly to coat the balls with the sauce.
- Top with chopped green onions, and serve on top of rice, noodles, or with sautéed greens! Tofu balls are best served immediately but will keep for up to 3 days in the refrigerator.
Nutrition

About the Author
Thomas Pagot is the founder, photographer, and recipe developer behind Full of Plants. He created the blog in 2016 as a personal cookbook for vegan recipes. Through years of recipe development, Thomas has successfully grown Full of Plants into a trusted resource for plant-based recipes.






Leave a Comment