Learn how to make Asian bakery style pineapple buns in your own kitchen. These buns are light, soft, and airy, with an extra crispy, buttery, and sugary crust that cracks perfectly into a pineapple pattern. Detailed step-by-step pictures and video are included to walk you through each detail.
Pineapple buns, called Bolo Bao in China, are a popular sweet treat from Hong Kong. They are light, soft, and airy inside. And on top they have this cracked surface with a delightfully crispy texture.
Perhaps the most fascinating thing about these sweet pineapple buns is that there is no pineapple inside of them. None! They have the name ‘pineapple buns’ because the cracked exterior somewhat resembles the outside of a pineapple.
I always feel I should warn people about this – if you’re expecting a pineapple filling, you’re going to be disappointed! But just so you know, you can split the buns in half and stuff them with any filling you like.
Why this recipe
From the looks of it, this might seem intimidating, but not to worry! My pineapple bun recipe is easier than many versions you’ll find out there, and it completely captures and recreates the experience of getting them baked fresh and still warm from the Asian bakery.
- Use a KitchenAid mixer to make the kneading process super easy.
- Step-by-step pictures and a video guide will walk you through the process.
- The bread dough is easy to work with, and it creates the airy and fluffy texture.
- Recreate the crispy and buttery topping that cracks naturally.
- The buns hold up well in the freezer. You can make them in advance and serve them later, and the texture will be just as great.
Following my recipe, your pineapple buns will turn out every bit as heavenly as the real deal that you’d find at busy street stalls and bakeries lining the streets of Hong Kong.
Cooking process
Pineapple buns are made of two parts: a bread dough on the bottom and a cookie dough on top. You will need to work on them one at a time.
Make the cookie dough – topping
My recipe starts with the topping. I found out the dough will be easier to work with if it’s chilled in the fridge (not in the freezer). Starting with the cookie dough will ensure you have enough time to chill the dough before cutting it.
- Combine the melted butter, milk, egg yolk, vanilla, and sugar.
- Stir until it forms an even and smooth texture.
- Add the dry ingredients
- Stir until everything is combined
- Press it into a dough log
- Wrap the dough with plastic wrap, then roll it into a cylinder. Chill it in the fridge.
Make the bread dough
- Activate the yeast by combining the warm milk, sugar, and yeast.
- Combine the rest of the dough ingredients in a stand mixer and knead them into dough.
- Add the butter, then knead the dough for 14 minutes in the mixer.
- Once done, cover the dough loosely and let it rest for 1 hour.
NOTE:
- When you cover the stand mixer bowl with plastic, make sure to leave some small gaps so there’s enough oxygen to help the dough rest.
- Try to find a warm place in your room to rest the dough. Depending on your room temperature, it might take 15 minutes, more or less, to reach the desired texture.
Shape the dough
- The dough size will double once it’s done resting.
- Softly punch the dough to push out the air.
- Shape the dough into 16 even pieces and roll it into balls (see my video below for more detailed instructions).
- Cover the dough balls and let them rise again, for 30 minutes.
Cut the topping
While you’re resting the shaped bread rolls, the topping should be chilled completely.
- Cut off both ends of the log, and discard the ends. Mark the dough log with 15 evenly spaced marks, to divide it into 16 even pieces.
- Slice the topping.
- Roll the topping between two pieces of plastic wrap until slightly flattened, just enough to cover the risen bread.
NOTE: The topping dough is very crumbly and fragile (so it will crack naturally and taste very crispy). If you find the rolling too difficult, you can simply press the dough with your fingers to lightly flatten it. In this case, the topping will be thicker and won’t cover the dough completely. But it does not affect the taste after baking.
Assemble and bake
- Once the bread dough has risen, gently place the topping disks onto each bread.
- Brush the egg wash onto the topping. Let it dry slightly, then brush it a 2nd time.
- Bake for 15 to 17 minutes.
NOTE:
- Chilling the egg wash before brushing will help it thicken, so it will coat the dough better.
- Brushing the egg wash twice will help it form a thicker layer, giving you the beautiful golden yellow look of Asian bakery bread.
Serve and store
How to serve
The pineapple buns are ready to serve once they’re out of the oven and hot.
- Traditionally, the pineapple buns are served warm with a piece of butter in between. When the buns are hot, the butter will melt and it makes the buns taste heavenly.
- You can add jam to your buns too.
- Make savory pineapple buns with BBQ char siu pork. I’ve had it in Hong Kong, and OMG, it was SO GOOD.
- I enjoy eating pineapple buns by themselves, because they taste perfect already!
How to store and reheat
To store, place the buns in a ziplock bag and squeeze out as much as much air as possible.
- Store them at room temperature for 2 to 3 days.
- Store them in the freezer for up to 2 months.
PS: I don’t like to store the bread in the fridge, because it dries out the bread. If you plan to store them for a longer time, the freezer method works better.
To reheat:
- Place the buns in a 350° F (176° C) oven until reheated through (no thawing needed).
- When I’m extra lazy, I microwave the buns until heated through. The topping won’t be as crispy, but the buns still taste very good.
Afterthought
Pineapple buns aren’t something you’ll want to make on a weeknight, but you will be happy to make the effort on a weekend. You may find they make a perfect addition to your Sunday brunch spread or a lovely dessert to finish a weekend meal. You’ll likely also use them as a snack. They are worth every bit of effort.
More delicious Asian baking recipes
- Char Siu Bao (Steamed BBQ Pork Buns)
- Chinese Steamed Custard Buns (nai wong bao)
- Easy Milk Bread Rolls
- Soft Cinnamon Rolls with Sesame
- Sesame Checkerboard Cookies
If you give this recipe a try, let us know! Leave a comment, rate it (once you’ve tried it), and take a picture and tag it @omnivorescookbook on Instagram! I’d love to see what you come up with.
Pineapple Buns (Bolo Bao)
Ingredients
Topping
- 60 g (4 tablespoons) butter
- 2 teaspoons whole milk
- 1 egg yolk
- 1/2 teaspoon vanilla extract
- 140 g (2/3 cup) sugar
- 150 g (1 cup) all-purpose flour
- 1/2 teaspoon baking powder
- 1/2 teaspoon baking soda
- Pinch of salt
Bread
- 180 g (3/4 cup) whole milk
- 70 g (1/3 cup) sugar
- 7 g (1 packet) active dry yeast
- 160 g (3/4 cup) heavy cream
- 1 large egg
- 300 g (2 cups) bread flour
- 225 g (1 3/4 cups) all-purpose flour
- 5 g (1 teaspoon) salt
- 50 g (3 1/2 tablespoons) butter , softened
Egg wash
- 2 egg yolks
- 2 teaspoons whole milk
- 1/2 teaspoon sugar
Instructions
Make the bread topping dough
- Heat the butter in the microwave until it melts completely. Once the melted butter is slightly cooled, add the milk, egg yolk, vanila, and sugar. Mix with a spatula until smooth.
- Combine the flour, baking powder, and baking soda in another medium-sized bowl. Stir to mix a few times, then transfer it to the bowl with the wet ingredients.
- Mix with a spoon or fork until a dough forms. The dough should be very crumbly. Use your hand to press the crumbs together until a thick dough log is formed (see picture in the blog post).
- Transfer the dough onto a large piece of plastic wrap and wrap the dough. Continue shaping the dough once wrapped, so it forms a thick cylindrical log, about 2” (5 cm) in diameter.
- Transfer the dough to the fridge until ready to use.
Make the bread dough
- Add the milk into a small bowl and warm it to approximately 100-110°F (38°C), about 30 seconds in the microwave. The milk should be warm, just a bit above body temperature. Pour it into the KitchenAid mixing bowl. Add the sugar and yeast. Stir it slightly and let it sit for 5 minutes to activate the yeast. You can tell the yeast has activated when there are bubbles forming in the liquid and a strong yeasty smell.
- Add the heavy cream, egg, bread flour, all-purpose flour, and salt into the bowl (add the salt at the end to prevent it from directly touching the yeast).
- Install the dough hook on your KitchenAid. Mix at setting 2, until a dough forms, about 2 minutes.
- Turn off the mixer. Add the butter to the dough. Use a spatula to smear the butter into the dough to prevent it from splashing. Turn the mixer to setting 6. Knead for another 14 minutes, until the dough is smooth and stretchable. During mixing, turn off the mixer and scrape the sides as needed to make sure all the butter is incorporated. Test the dough by pulling a piece of it using both of your hands. It should stretch into a very thin and translucent sheet.
- Form the dough into a tight ball by pulling its sides to the bottom, then place back in the mixing bowl. Cover the top of the bowl loosely with plastic wrap and place it in a warm and humid part of your home. Allow to rise until it double in size, about 1 hour.
Shape the bread dough
- Line a large baking sheet with parchment paper.
- Once the dough is rested, punch the dough softly to push the air out. Place the dough onto an unfloured working surface and knead it a few times. Use a bench scraper or a knife to cut the dough in half, then halve it again into four pieces, and cut each piece into four even pieces, so you get 16 pieces in total. For a more accurate result, you can weigh the dough so each piece is 62 to 63 g (2.1 to 2.2 oz).
- Loosely cover all the dough pieces with plastic wrap and work on the dough pieces one at a time.
- Pinch the ends of a dough ball into its bottom and place the pinched side down. Place your hand over the ball, forming a cage with your fingers and working the ball in a circular motion, applying light pressure with all of your fingers, until the ball is well rounded.
- Place the dough ball onto the lined baking sheet. Repeat with the rest of the dough balls. Make sure there is 2” (5 cm) of space between each ball. Cover the dough balls with plastic wrap while you form the rest, to prevent the dough from drying out.
- Once done, make sure the whole tray is loosely covered with plastic wrap. Place it in a warm and humid place. Let it rise for another 30 to 45 minutes, until the size doubles again.
Egg wash
- Make the egg wash by combining the yolk, milk, and sugar in a small bowl. Whisk together until everything is combined.
- Cover with plastic and place in the fridge. Chilling the egg wash will make it slightly thicker so it will stick better when brushed on the dough.
Shape the topping
- Once the topping is chilled, unwrap it. Use a knife to slice off the uneven ends and discard them. Carve marks on the dough so you can slice the log into 16 even pieces (see the blog post for instructional pictures). Then slice the dough accordingly. If the dough is too hard to slice, rest it on the kitchen counter for 10 to 15 minutes to let it soften before cutting.
- Place each piece between two pieces of plastic wrap. Use a rolling pin to flatten the dough without cracking it, until it forms a round disk that is about 2.5” (6 cm) in diameter and 1/4” (5 mm) thick. The dough will be very crumbly and the ends might crack a bit (it’s totally OK!). If you find the dough too difficult to roll out without cracking, you can use your hand to lightly flatten it instead of rolling it. (*Footnote 1)
- Place the rolled/pressed topping disks onto a large sheet of plastic wrap using a thin spatula (you can also stack them together by placing plastic wrap or parchment paper between each piece of dough). Cover with plastic wrap until you’re ready to assemble the buns. (*Footnote 2)
Assemble and bake
- Preheat the oven to 350° F (176° C).
- Once the bread dough has risen again, remove the plastic wrap. Gently place the topping dough disks onto the bread dough rolls.
- Brush all the buns with egg wash. Allow the egg to dry slightly. Then brush them again for a second time to get the beautiful yellow color.
- Bake for 15 to 17 minutes, until the top is golden yellow and the bottom is slightly browned.
- Let the buns rest in the pan for 5 minutes, then transfer them onto a cooling rack.
- Serve warm or at room temperature.
Store
- Once the pineapple buns have cooled completely, you can store them in an airtight container on your kitchen counter for up to 2 days. The rolls will stay delicious at room temperature. You can also warm them up in the microwave for 10 seconds or leave them in a 350° F (176° C) oven to warm before serving.
- For longer storage, place the dinner rolls in a ziplock bag, squeeze out as much air as possible, and store them in the freezer for up to a month. To reheat, bake the rolls at 350° F (176° C) without thawing, until warm throughout, 10 minutes or so.
Notes
- The topping dough will be very crumbly. We’ve tried both rolling the dough and pressing the dough, and found that the rolling method generates a slightly better result. The topping will cover the bread better and the buns will look better. On the other hand, pressing the dough is much easier and the result is just as tasty. Although, the topping will be slightly small and won’t cover the bread fully in that case.
- If your bread has risen while you were working on the toppings, you can place the topping directly onto the bread rolls.
Video
Nutrition
Lilja Walter is a part of the Omnivore’s Cookbook team and worked closely with Maggie to develop and test this recipe.
I love the detail of your recipe. It is great to have step by step as well as video.
My first try to make Bolo Bao and it turned out quite well. The only thing is I followed the instruction on how to activate the yeast and had 2 attempts, both failed. I finally followed another recipe which used a lot less sugar and it worked, as well, I added Tangzhong (湯種) to make the bread softer but other than that, followed you step by step.
Will definitely look into your other recipes to try other things.
Thanks so much
A great recipe! Thank you!! They turned out just as delicious as the ones from my favorite bakery.
Re: storage, I found that storing them for more than a day at room temp makes the top more moist and less crunchy. Freezing has worked way better for me! I just take a bun out and let it come to room temp before eating.
I like the freezing method as well. Next time you can also try warming it up slightly in the microwave or in the oven. I really love the warm buns 🙂
Made my first batch today. The dough didn’t rise as I thought it should have. In the oven it rised. Kids and hubbie approved.
I kneaded the dough by hand and my arms were sore the day after. But they turned out amazing and so yummy. Thank you for the recipe 🙂
Hi
Thank you for your recipe. I would like place the buns in the freezer so I can take them out and bake when craving. Can you tell me how I should store the buns? Should I bake the entire batch and then freeze the buns? OR should I place the uncooked dough in the freezer and then bake them as need. Pls advise .
Thank you
EY
I highly recommend to bake the entire batch and freeze the baked buns. I’ve done the test and these buns freeze really well.
When you plan to serve them, you can thaw them in the fridge and slightly warm them up in the oven. The texture will be really nice just like freshly baked.
Can’t wait to try this! Any suggestions for a lactose free substitute for heavy cream?
hi, I’m just starting this recipe and halved it using your scaling tool. I’m just letting you know that the gram units change but NOT the amount of cups that you have listed in parenthesis. It’s a mistake I caught early on but others might not have success with halving this recipe if they didn’t have a scale to weigh the ingredients. Thank you so much for posting an easier version of this bread.
I love these buns so much! I make them on the weekend and then heat them up in the toaster oven for a snack throughout the week, they keep wonderfully. I actually combine this recipe with your nai wong bao recipe.to make custard filled bolo bao and it is the BEST thing EVER. In a sucker for custard. Highly recommend both of these recipes. Thank you for sharing them! Curious if anyone has done amy other fillings that worked well?
Glad to hear you like this one! Some other readers made the buns with char siu pork filling and they turned out great 🙂
Took forever for me to make but turned out perfect. The topping part was very crumbly when I tried to flatten it out, got me all frustrated during the process but still turned out well.
Thank you for sharing this recipe- it is DELICIOUS! And dare I say, even better than the Chinese Bakery ones (maybe because I put in my own effort)! I’ve made this twice- the first time, exactly as per directions (except with hand- kneading, as I don’t own a stand mixer), and the second time, with brown sugar rather than white. Both are amazing! My only tip for fellow bakers would be to be careful how thinly the topping is rolled- too thin and it will spread down the sides of the bun onto the baking tray, which ruins their aesthetic a bit (but not the taste)!
I don’t usually rate recipes but this is so delicious. Pineapple buns (bolo baos) are my favourite. It does require time to make, but well worth it. I’ve made this recipe 2 times already and it never disappoints. Tastes even better than some pineapple buns I buy from bakeries. I freeze many of the buns, thaw it out overnight on counter and heat up in morning for breakfast/schools snack. I love this recipe. Thanks for sharing!
Hi Maggie! I hope try this soon. Any guidance on adding a coconut filling?
Thanks, in advance 😀
Working on a recipe now and will post it in the next couple of weeks 🙂
Thanks, Maggie! Looking forward to it!
Can I fill them with red bean filling? Will it change the cooking time?
Yes! You can definitely fill it with red bean filling. The cooking time doesn’t change.