This recipe tastes like greasy take out, but it's healthy, vegan, easy to make, and so super delicious! Skip the fuss of working with wrappers, and using a fatty deep fryer, and make a vegan egg roll in a bowl instead! This dish tastes just like an egg roll but without the wrapper. Seasoned tofu crumbles, stir fried cabbage, tossed in a sweet and salty sauce. Serve this stir fry over rice or rice noodles for an easy weeknight meal.
30-minutes to make with ingredients you might already have in your kitchen. Vegan egg roll in a bowl is great served fresh, but it also makes super yummy leftovers served hot or cold, which is perfect for meal prepping or packing your lunch box. If you're not into tofu, you can replace it with crumbled tempeh, sliced mushrooms, or any kind of veggie ground that you enjoy.
Traditionally egg rolls are stuffed with stir fried cabbage and carrot with some kind of ground meat. To make this vegan version I subbed the ground meat with crumbled tofu. The tofu is pressed and sautéd so that when the marinade is added it become super juicy and flavourful. And speaking of the marinade, often egg rolls are served with plum sauce for dipping, so I added it directly into the marinade for that authentic taste!
To Make Vegan Egg Roll in a Bowl:
To prep the tofu: Prepare the tofu by draining it, and then pressing it for 15 to 30 minutes. I love using my Tofuture tofu press, but you can also follow these instructions for a DIY tofu pressing method. Pressing the tofu squeezes excess water out so that the tofu can suck up more of the marinade and become more flavourful.
Make the sauce: Add all of the sauce ingredients to a small bowl and whisk to combine. Set aside.
Prepare the filling: In a large skillet or non-stick pan heat 1 tablespoon sesame oil over medium-high heat. Add the onion, garlic, and ginger. Sauté for about 5 minutes until the onions turn translucent and begin to brown.
Reduce the heat to medium and use your hands to crumble the tofu into the pan. Cook for about 5 minutes until the tofu begins to brown. Tip: don't stir the tofu too much, let it cook for a couple of minutes without stirring so that the bottom can brown. Stirring too often will make it difficult for the tofu to brown. Pour in about ½ of the prepared sauce and stir to combine. Remove the tofu mixture from the pan and set aside.
Return the pan to medium-high heat and add the remaining tablespoon of sesame oil. Add the cabbage and carrot and sauté until the cabbage is tender, about 5 minutes more.
Add the tofu mixture and all of the remaining sauce and heat through.
Serve hot with rice (if using) and garnish green onions, peanuts, and dress with more soy sauce, plum sauce, or hot sauce to taste if you like.
Bon appetegan!
Sam Turnbull.

(click stars to vote)
Vegan Egg Roll in a Bowl!
Servings:
PRINT
PIN
Video
COMMENT
Ingredients
For the sauce:
- ¼ cup soy sauce, (gluten-free if preferred)
- 3 tablespoons plum sauce or sweet and sour sauce
- 1 tablespoon rice vinegar
- 1 teaspoon cornstarch
For tofu and cabbage:
- 2 tablespoon sesame oil,, divided
- 1 yellow onion,, sliced
- 4 cloves garlic,, minced
- 1 inch fresh ginger, minced
- 1 12 oz block extra-firm or firm tofu,, drained and pressed (see step 1)
- 16 oz cabbage (green, purple, or a combo), (16oz), finely shredded
- 1 large carrot,, peeled and grated
Optional:
- 2 green onions,, sliced
- ½ cup roasted salted peanuts
- an extra drizzle of plum sauce, soy sauce, or Sriracha
- cooked rice or rice noodles, for serving
Instructions
- To prep the tofu: Prepare the tofu by draining it, and then pressing it for 15 to 30 minutes. I love using my Tofuture tofu press, but you can also follow these instructions for a DIY tofu pressing method. Pressing the tofu squeezes excess water out so that the tofu can suck up more of the marinade and become more flavourful.
- Make the sauce: Add all of the sauce ingredients to a small bowl and whisk to combine. Set aside.
- Prepare the filling: In a large skillet or non-stick pan heat 1 tablespoon sesame oil over medium-high heat. Add the onion, garlic, and ginger. Sauté for about 5 minutes until the onions turn translucent and begin to brown.Reduce the heat to medium and use your hands to crumble the tofu into the pan. Cook for about 5 minutes until the tofu begins to brown. Tip: don't stir the tofu too much, let it cook for a couple of minutes without stirring so that the bottom can brown. Stirring too often will make it difficult for the tofu to brown. Pour in about ½ of the prepared sauce and stir to combine. Remove the tofu mixture from the pan and set aside.
- Return the pan to medium-high heat and add the remaining tablespoon of sesame oil. Add the cabbage and carrot and sauté until the cabbage is tender, about 5 minutes more.
- Add the tofu mixture and all of the remaining sauce and heat through. Serve hot with rice (if using) and garnish green onions, peanuts, and dress with more soy sauce, plum sauce, or hot sauce to taste if you like.


















ELIZABETH says
I think it's called cook mode. Thanks
ELIZABETH says
Sam when this was amazing, and I'm now cooking everything from your website. I'm not even looking anywhere else. I put in the ingredient that I have like cabbage and I came up with this wonderful Egg Roll in a bowl. I was even able to download the recipe to my Weight Watchers app and give me the correct points without having to build a recipe. One suggestion. Would you please put a recipe mode on the recipe, so that your screen does not turn off all the time. Would be much appreciated.
Sam Turnbull @ It Doesn't Taste Like Chicken says
That makes me so happy to hear Elizabeth, thank you!! 😊 And yes, “cook mode”, is automatically enabled on my site, so it should work without you needing to do anything! 🙂
Delia Fey says
I couldn't find plum sauce so I used Thai Sweet Chili sauce and I served it over gluten free ramen. I had store bought faux ground round that I had to use up so used that but I look forward to trying it with tofu. It's fast & easy & delish! I'll definitely be making this again.
Sam Turnbull @ It Doesn't Taste Like Chicken says
Hi Delia! Those swaps sound delicious, and I love the ramen idea. So glad it worked well for you!
Dcb says
Delicious! Even the meat eaters in my family thought it was great.
Sam Turnbull @ It Doesn't Taste Like Chicken says
Love it! So happy everyone enjoyed it Dcb! 🙂
Ed K says
This recipe is extremely satisfying! Such great flavor! I took a shortcut and substituted a bag of coleslaw blend for the cabbage and carrots. Loved this dinner!
Jess @ It Doesn't Taste Like Chicken says
Terrific!
Lyndsay Sawchuk says
This is very tasty. I grate the tofu instead of crumble.
Sam Turnbull @ It Doesn't Taste Like Chicken says
Thanks Lyndsay! Grating is such a great idea.
Aubrey says
This recipe is just always SO GOOD! I always use the pre-cut slaw mix in a bag and add extra sweet and sour sauce on top with sriracha 🙂
Jess @ It Doesn't Taste Like Chicken says
Great ideas, thanks for sharing!
marge says
love this recipe! I make it all the time when cash is tight and i need something filling that can stretch a few meals. i've subbed all kinds of veggies into this recipe and it's never failed me as long as i have enough cabbage for the base.
one tip: add a sprinkle of MSG!! its a game changer and takes the whole thing to the next level
Sam Turnbull @ It Doesn't Taste Like Chicken says
Thanks so much, Marge! I love that this one’s become a budget-friendly staple for you. And MSG is a great flavor hack 👌
Rosie says
this was delish! it was even better as leftovers, if that's even possible. I'll definitely be making this more often. it makes a huge batch, so I served it with rice the first night and then the leftovers with ramen noodles. yum! thanks for such easy, mouthwatering, savory, filling, complete meals, Sam!
Sam Turnbull @ It Doesn't Taste Like Chicken says
Woohoo! I am soo happy you love it Rosie!! Thank you for the review 🙂
Emma k says
It is no joke that I have eaten this at least once a week for the past 2 years. It’s that good!
-hoisin sauce is a good sub for plum sauce
-use a bagged cole slaw mix if you’re in a rush
-make an aioli of (vegan) Mayo + sriracha and drizzle on top. Trust me!
Sam Turnbull @ It Doesn't Taste Like Chicken says
Ooooh love that aioli idea! So happy this has been a staple recipe for you Emma! Thank you for sharing your tweaks 🙂
Wendi Fisher says
I like that this was easy to make and healthy, but overall the dish was too bland. I used sweet and sour sauce because I couldn't find plum sauce. I might try it again if I can find the plum sauce, but this one probably won't make it into my meal rotation.
Sam Turnbull @ It Doesn't Taste Like Chicken says
Hi Wendi, blandness usually is due to lack of salt. So next time feel free to add more soy sauce or salt to taste. You can also up the other seasonings to you preferred taste. I hope that helps!
Tiffany says
I am adding Chinese 5 spice to mine
Sam Turnbull @ It Doesn't Taste Like Chicken says
Enjoy Tiffany!
MPB says
I just made this minutes ago and boy, am I glad I did! I love this recipe. So filling and tasty, and easy to make. This is going into heavy rotation in my kitchen!
Tanya says
This was really good and easy to make! My husband really liked it and asked me to make it again. Win-win!!
Nathalie says
Just love this recipe it is easy and soooo flavorful!
I would eat it every week
Jorie Belisle says
Always a hit in this house!
Jorie Belisle says
This was supposed to be 5 stars rating!
Sandy P says
Fantastic and flexible recipe, I subbed lots of veggies and it was delicious
I would say don't omit the soy sauce and plum sauce drizzled on top, it definitely gives it the the fast food flavour. Thanks for this recipe!!
Nisha says
The whole family loved this, even the non-veg people. Added a handful of coriander leaves as a garnish. Looking for something crunchy to add on top just for the texture because we didn't have peanuts but couldn't think of anything.
Jess @ It Doesn't Taste Like Chicken says
Terrific! Great alternatives to peanuts to get that crunch would be any other nut or seed (almonds, cashews, pine nuts, sunflower seeds) or even roasted chickpeas!
Tiffany says
Store bought wonton strips in produce typically.
Nisha says
Oohh, great idea!
Steph says
Could you sub 1 cup dehydrated soy curls for the tufu? If so. would you need to rehydrate first, then soak in the marinade?
Sam Turnbull says
Sure, it would be a different recipe but you could try that, and yes you would need to rehydrate them first. Enjoy!
Eileen Sammon says
My husband loved the Vegan egg roll recipe just as much as I did! We love your recipes. Are the recipes on this website included in your cookbooks?
Jess @ IDTLC Support says
We're happy to hear it! Most of the recipes in the cookbooks are unique to the books and not on the website.
Bianca says
So much like Table Cat I HATE vegetals and tofu. However I made this tonight extra salt and it's delicious! I used extra plum sauce in the bowl. So good! Thank you for another amazing recipe!
Jess @ IDTLC Support says
We're glad you gave it a try and enjoyed it too!