This Chinese Milk Bread recipe was inspired by a viewer who wanted to veganize the fluffy buns and loaves from Chinese Bakeries like Maxim’s. The interior texture is soft and silky and comes apart in tender layers. The exterior has some crisp edges and a beautiful deep golden sheen for a delicious contrast. Japanese Milk Bread has the same soft texture that is like the cake of breads. Without being a cake. To be honest, I haven’t tried the Japanese version my self but that’s what I’ve been told.
Click here to skip to the printable recipe.
UPDATE: For an EASIER version of this recipe, try my Easy Vegan Milk Bread. It’s a one-bowl recipe that doesn’t require the stove!
How to Make Vegan Milk Bread Video Tutorial
I was super happy to fulfill this viewer request as it had already been on my to-do list since I went vegan over four years ago. This dough can also be used for other Asian treats such as Curry Beef(less) Buns and Steamed Red Bean Buns. My next goal is to make vegan BBQ pork buns with this. Do you have any Chinese bakery favourites that you’d like to see veganized? Please leave me a comment and let me know!
Vegan Milk Bread and Tangzhong
The first step to this special bread is tangzhong. It’s a mixture of flour and water or milk, cooked over low heat until it turns pudding-like. This technique was first widely publicized in Yvonne Chen’s book called the 65 degree Bread Doctor. The cooked flour mixture helps the bread bake up softer and lighter while locking in moisture so the loaf stays fresh for longer.
How to Make Vegan Milk Bread
While the tangzhong is cooling, mix yeast with warm water and a bit of sugar in a cup or directly in your mixing bowl and let the yeast activate. It’s really important to check that your yeast is alive before proceeding. It’s good if you see it bubbling and foaming after a few minutes.
Then when the tangzhong has cooled to about the same temperature as your yeast mixture, you can mix it into the bowl along with one egg replacer, additional sugar and a bit of salt. I used Ener-G egg replacer powder with water but you can also use aquafaba or a flax/chia egg (one tablespoon of ground flax/chia with two tablespoons of water).
When everything is mixed smooth, you can start adding all-purpose flour. Milk bread is normally made with white bread flour and you can use that if you like. Whole wheat flour will work as well, but it will turn out heavier. For a nice compromise, I like using 50% whole wheat flour and 50% unbleached all-purpose flour.
The amount of flour will always vary in bread recipes. This is because flour can vary so much from brand to brand or even batch to batch. The climate and time of the year will also affect the amount. My recommendation is to go by feel. Add flour a cup or half cup at a time, mix it in thoroughly, then add more if necessary. The goal is just to get everything to stick into a dough ball. It is ok if the dough is a bit sticky. You’ll knead it on a floured surface until it is smooth and just slightly tacky.
At this point, you may want to rest your hands. Letting the dough rest for ten minutes or so will also make the next round of kneading go easier. The rest allows the gluten to relax and the dough gets a bit softer.
To get the soft tender layers in the finished bread, you’ll knead in some vegan butter or coconut oil. Use refined coconut oil if you don’t want your bread to have a coconut aroma.
Once the fat is incorporated, set the dough in a bowl and cover it. Let it rise in a warm, draft-free location for about an hour or until it doubles in size. I like to do this in my oven with just the oven light on. The only risk is that it gets too warm in there and you’ll have over-fermentation (which imparts an unpleasant alcohol aroma). So if you do this technique, consider leaving the oven door open a crack.
After the dough doubles in size, divide the dough up depending if you want to make mini buns or the three mini loaves like I do here. You can also just make one regular sized loaf.
Form each piece into a ball. Pull the drier sides in and the moist cut side will stay on the outside. Just makes for nicer dough balls but again not 100% necessary. Or even 50% if we’re going with percentage point which have nothing to do with this. At all.
Then roll them out long into rectangle shapes and roll up them up before placing them into a greased loaf pan. This will give the buns more layers to pull apart.
Let the rolls rise once more under a moist kitchen towel, brush with a mixture of maple syrup and water (or your fave glaze) then bake in your preheated oven.
Milk bread is all about the soft, stretchy, pillowy texture and this vegan milk bread has it! A beautiful treat or made into an everyday sandwich bread with whole wheat flour, it’s up to you. Please let me know if you try this recipe. Enjoy!
Printable recipe for Vegan Chinese Milk Bread
For Roux (Tang Zhong)
- 1/4 cup all-purpose flour (40g)
- 3/4 cup + 2 tablespoons soy milk (full fat) (200ml)
- 1/2 cup soy milk (full fat) (120ml)
- 2 teaspoons traditional yeast (one envelope)
- 1 teaspoon sugar
- 1/4 cup sugar (55g)
- 1 teaspoon salt
- 1 egg replacer*
- 2 1/4+ cups all-purpose flour (275g or more)
- 2 tablespoons vegan butter (see notes)
- 2 teaspoons maple syrup
- 1 tablespoon water
- In a saucepan, whisk together the roux (tang zhong) ingredients. Cook over medium low heat while continuously whisking. The roux will thicken as it cooks. Remove from heat and set aside to cool after the mixture reaches 65°C. The appearance will be smooth and glossy.
- Heat 120ml of soy milk (or milk of choice) to 43°C. Stir in yeast and a teaspoon of sugar. When the mixture becomes bubbly, you'll know that the yeast is active.
Make Dough + Proof
- When the tangzhong is cooled to about 43°C, combine it with the yeast mixture in a large mixing bowl. Add your choice of egg replacer (see notes for suggestions), sugar and salt. Whisk until smooth.
- Add flour, a half cup at a time. Stir the flour in completely before adding more. You want to add just enough flour for a soft sticky dough to form. Turn the dough on to a floured surface and continue to work in flour until the dough is smooth and only slightly tacky.
- Let the dough rest for 10 minutes to allow the gluten to relax. Knead in the vegan butter (or coconut oil) using only half at first, incorporating completely, then kneading in the rest.
- Transfer the dough to a bowl and cover it with a damp kitchen towel. Place in a warm, draft-free location and let rise for one hour or until doubled in size.
Shape Dough + Proof
- Remove dough from the bowl and divide the dough into equal portions. If making dinner rolls, divide into six. If making mini loaves, divide into three. Or leave it as one dough ball to make a regular loaf. Turn the dough so that the moist cut side is on the outside and pinch ends together. See the video for a demonstration.
- Roll the dough balls out flat. Fold the sides in so that each piece resembles a rectangle. Roll up the pieces and pinch the ends to seal.
- Grease a loaf pan (for mini loaves and regular loaf) or rectangle baking pan (for dinner rolls) thoroughly with oil. Place the pieces into your greased pan, spacing the dough evenly.
- Cover with a damp kitchen towel and allow to rise in a warm draft-free location for 45 minutes or until the dough has doubled in volume. During the last 15 minutes, preheat your oven to 175°C.
Finish + Bake
- Combine the water and maple syrup for the syrup wash. Remove the cloth from the dough. Brush the tops of the dough lightly with the syrup wash.
- Bake at 175°C for 20 to 24 minutes or until the top is a deep golden brown. Let cool on a cooling rack before serving.
- You may use bread flour instead of all-purpose flour if you like.
- I used soy milk but you can use any type of plant-based milk you prefer. For this recipe, full fat versions are preferred.
- For the vegan butter, you may use homemade or store-bought. If you can't get the hard-style of vegan butter, softer vegan margerines can be used.
- You may also substitute with refined coconut oil or unrefined (for a coconuty aroma) but use only 15ml. You may choose to skip the overt fat but adjust your expectations for this recipe. It will not be as moist, tender, or stay fresh as long.
- For sugar, you may use any type you prefer but keep in mind, it will affect the flavour. Make adjustments for sweeteners that are more or less sweet than regular granulated sugar such as stevia or date sugar, respectively.
- *For egg replacer, I used Ener-G powdered egg replacer with water. You may use 45ml of aquafaba or a flax egg (15ml finely ground flax meal with 60ml of water). The flax egg does weigh the dough down a little but it is not as noticeable with golden flax (vs brown flax).
- Learn how to make aquafaba egg replacer here.
Amount Per Serving: Calories: 272Total Fat: 6gSaturated Fat: 3gTrans Fat: 0gUnsaturated Fat: 2gCholesterol: 41mgSodium: 409mgCarbohydrates: 48gFiber: 2gSugar: 11gProtein: 7g
Nutritional Information automatically calculated by a plugin and may not be correct.