Vegan Mapo Tofu Buns (麻婆豆腐包)

Pillowy soft buns with a spicy, meaty, and umami Mapo Tofu filling. A perfect marriage between Taiwanese-style buns and Sichuanese flavor.

Wait.. Vegan Mapo Tofu (麻婆豆腐) in a bun?! Believe it or not, I actually came across these gems at a street vendor specializing in plant-based buns in Taipei, Taiwan. While the idea of stuffing tofu in buns seems intuitive (given its meaty texture is just like minced pork), it really came from a place of hardship and poverty. Those who couldn’t afford to have meat on their dinner tables resorted to tofu as protein, leading to an explosion of plant-based recipes as people tried to replicate meatless versions of the foods they were familiar with, including this invention that I’m showcasing today. Perhaps this is why people often dub Taiwan as “Vegan Heaven.”

I love making these buns because I could make a bunch of them at a time, then freeze all of them for whenever I need a quick & delicious bite. They are re-heat-able by microwave (2 mins on high heat), but you could also re-steam them for arguably better texture.

Vegan Mapo Tofu Buns (麻婆豆腐包)

5 from 6 votes
Recipe by George L. Course: SnackCuisine: TaiwaneseDifficulty: Medium


Prep time




Cooking time



Pillowy soft buns with a spicy, meaty, and umami Mapo Tofu filling. A perfect marriage between Taiwanese-style buns and Sichuanese flavor.


  • Dough
  • 500 grams 500 all-purpose flour

  • 280 grams 280 warm water

  • 5 grams 5 instant yeast

  • 4 grams 4 sugar

  • Tofu Filling
  • 3 cloves 3 garlic, finely minced

  • 1 teaspoon 1 fresh ginger, grated

  • 3 3 dried chilis, finely minced

  • 1 block 1 (400 g) firm tofu, crumbled

  • 30 grams 30 carrots, finely minced

  • 35 grams 35 TVP, or textured vegetable protein (substitute: 8-10 shiitake mushrooms)

  • 2 tablespoon 2 fermented garlic black bean paste, I used Lee Kum Kee’s

  • 2 tablespoon 2 doubanjiang, or spicy bean paste, I used Lee Kum Kee’s

  • 2 tablespoons 2 light soy sauce

  • 1 tablespoon 1 dark soy sauce

  • 1/2 teaspoon 1/2 ground five spice

  • 1 teaspoon 1 ground Sichuan peppercorns

  • 3 3 scallions, chopped

  • 1 tablespoon 1 cornstarch

  • fine sea salt, to taste


  • Prepare the Dough: In a large mixing bowl, first combine flour, instant yeast, and sugar. Slowly stream in the warm water, and mix until a dough forms. Once a rough dough forms, turn it onto a generously floured surface and knead until smooth, around 7 minutes. Place the dough back into the bowl, then cover and let rest for 1-1.5 hours.
  • Prepare the TVP: Soak the TVP in warm water for 10 minutes. After 10 minutes, drain the water and squeeze out excess liquid from the re-hydrated TVP. Set aside.
  • Prepare the Mapo Tofu Filling: First, drain the firm tofu well & mash it up with a fork (or crumble with your hands). In a pan or wok, heat up about 1 tablespoon of a neutral-flavored oil on medium-heat, and fry together garlic, ginger, and dried chilis until aromatic, about 1 minute. Add TVP, carrots, and tofu and cook until most liquid evaporates, around 7 minutes. Follow with soy sauces, fermented black bean paste, doubanjiang, ground Sichuan peppercorns, five spice, and cook for 2-3 more minutes. Finish by evenly distributing the cornstarch (you don’t need to make a slurry), as well as sprinkling on scallions. Taste and adjust seasoning with salt, then place finished filling in the refrigerator to chill while you finish preparing the dough.
  • Make the Buns: Take your rested dough and press it down to squeeze out excess air. Note: It’s crucial that you squeeze out as much air as possible, so that the gas distribution would be even after the second proof. Make a hole in the middle of the dough and stretch it until it resembles a large donut, then tear at any point of the dough to get long log. Squeeze the dough through a gap made with your thumb and forefinger (or just use a knife) to get 20 equally-sized pieces of dough (see picture above for visuals). Roll and gather each piece of dough into a round, smooth ball. Take a ball of dough and first gently press it to flatten. Then take a floured rolling pin and roll the dough out on all sides into a round sheet, thickest at the center. Take each flattened dough and place around two tablespoons of filling in the middle. Fold the dough up by pleating the sides (like an accordion) in a counter-clockwise motion. Towards the end, keep your thumb in the middle and press down while spiraling to seal. Pinch off excess dough on top if desired (but not too much). Place the completed buns into your bamboo steamer while you prepare the rest.
  • Second Proof and Steam: Proof the completed buns, this time uncovered, for another 45-60 minutes. Note: proofing uncovered develops a hardened “shell” on top of your bun, which will help keep all the pleats visible after steaming. Finally, steam the buns for 13-15 minutes. Once time is up, remove the bamboo steamer from the heat and wait for 5 minutes before opening it. Enjoy warm with extra doubanjiang and/or black bean sauce as desired.


  • Freezer Option: After steaming the buns, you may freeze them for later. Simply place all the steamed buns on a parchment-lined baking tray and freeze completely. Once all the buns are frozen, transfer them to a large container or a large freezer-safe bag. To re-heat the buns, simply microwave them (while frozen) on high heat for around 2 minutes. Best enjoyed within 3 weeks.
Notify of

Inline Feedbacks
View all comments
Mark Nanna
Mark Nanna
3 years ago

Why is the fermented black bean crossed out on the recipe? This looks great! BTW 🤗

Mark nanna
Mark nanna
3 years ago

Yep I think you’re right- I must’ve accidentally touched that ingredient and it crossed it out 🤷🏻‍♂️🤣

Grace A
Grace A
3 years ago

These turned out so good! We made too many vs the filling we had, and decided to put apple cinnamon in them as a dessert. You can put almost any combination you want as the insides. A++!

Last edited 3 years ago by Grace A
Tam V
Tam V
2 years ago

Made these last night and really loved both the texture and the flavour. Thank you for sharing. I struggled with a couple of aspects of the recipe, which others may encounter, too: if your settings allow it, it may be helpful to add proofing time (i.e. 2 hours) to the prep time. Likewise, it may be more accurate to increase the cooking time to reflect both the cooking for the fillling and the steaming + resting time for the buns (i.e. closer to 30min in total). I’m a bit of a novice with buns and still struggle with how best… Read more »