Bua Loy Recipe (Glutinous Rice Balls in Coconut Milk)

As an Amazon Associate, I earn from qualifying purchases. Read the full disclosure here .

This authentic bua loy recipe makes the best glutinous rice balls in coconut milk youโ€™ll ever taste. Iโ€™ve tried so many different versions at food markets in Thailand, but the one my Thai grandmother taught me is truly something else!

Bua loy with soft poached egg, colorful rice flour balls, and fragrant pandan in a rustic coconut bowl.

Bua loy is a traditional Thai dessert of glutinous rice balls in coconut milk. Itโ€™s sweet and creamy, with rice balls often flavored with taro, pumpkin, or pandan. The name means โ€œfloating lotusโ€ in Thai, describing how the balls float in the milk.

About this recipe

Making bua loi starts with steaming and mashing your base ingredients. I used taro, sweet potatoes, and purple potatoes. I also used pandan, which I blended and strained to get a naturally green pandan juice.

Once everythingโ€™s prepped, we make the dough. Glutinous rice flour gets mixed with the mashed ingredients to form a soft, colorful dough.

Spoonful of colorful Thai bua loy glutinous rice balls served in sweet coconut milk, held over a coconut bowl.

I usually make a few colors at once because it looks better in the finished bowl. Like with khanom tom and ruam mit, the more colors, the prettier! You can also use food coloring if thatโ€™s all you have.

Once the dough feels smooth and not too sticky (think playdough but softer), roll it into small balls. This part takes a bit of time, but itโ€™s easy, and the kids can join in! I usually do it while watching Youtube.

Then all thatโ€™s left is to heat the coconut milk with sugar and salt. Scoop in the colorful rice balls and thatโ€™s it. I also like to crack in an egg at the end (this version is called bua loy kai wan), but that’s optional.


Ingredient notes and substitutes

You can find everything you need at most Asian grocery stores or local Asian markets. Full measurements are in the recipe card below.

For making the dough

Bird's eye view of bua loy ingredients; glutinous rice flour, tapioca flour, cold water, sweet potato, purple sweet potato, pandan, and taro.
  • Purple sweet potatoes
  • Sweet potatoes
  • Pandan
  • Taro
  • Glutinous rice flour – For each sticky rice dough, you will need glutinous rice flour and tapioca flour to give the dough a chewy and stretchy texture. Both flours are gluten-free.
  • Tapioca flour
  • Cold water – Cold water is important for achieving the ideal consistency.

Note: No need to use four different flavoring/coloring ingredients for the dough if you don’t have so many; you can just use one.

For making the sweet coconut milk

Bird's eye views of glutinous rice balls, water, pandan leaves, salt, egg, sugar, and coconut milk arranged on a banana leaf.
  • Coconut milk – I like to use dairy-free Aroy-D.
  • Pandan leaves (optional)
  • Water
  • White sugar
  • Salt
  • Egg (optional) – An egg is sometimes poached into bua loy dessert for flavor.
  • Pandan leaves (optional)

How to make bua loy

Step 1: Steam the base ingredients

  • Wash taro, sweet potatoes, and purple potatoes. Cut into small, even pieces.
  • Steam until fork-tender.
  • Wash pandan leaves and blend with water. Strain through a sieve to get pandan juice.
Top-down view of taro, potatoes, and pandan plus a steamer with pieces of taro and potatoes cut into small shapes.

Step 2: Make the taro dough

  • Mash the steamed taro in a mixing bowl.
  • Add glutinous rice flour and tapioca flour.
  • Mix by hand until crumbly.
  • Gradually add cold water and knead into a soft, clay-like dough.
Instructions steps for kneading the dough.

Repeat for sweet potato and purple potato. Wrap each dough in plastic wrap to prevent drying.

Pandan dough: Mix flour as above, but gradually add pandan juice instead of water to form the dough. No extra water needed here.

Colorful glutinous rice balls dough in a clear bowl.

Step 3: Roll into balls

  • Dust a tray with glutinous rice flour.
  • Roll each dough into small balls and place them on the tray.
  • Bring a pot of water to a boil. Add the balls in batches.
  • Stir gently. When they float, simmer 2โ€“3 more minutes.
  • Transfer to a bowl of room temperature water to stop the cooking.
Cooking glutinous rice balls step-by-step.

Step 4: Make sweet coconut milk

  • In a pot, add coconut milk, water, sugar, optional pandan leaves, and salt. Heat gently.
  • Crack an egg directly into the coconut milk (optional). Simmer 3โ€“4 minutes without stirring.
  • Add rice balls and serve warm. If making ahead or serving chilled, keep the rice balls and coconut milk separate until serving. Optionally, garnish with toasted coconut flakes, coconut meat, or black sesame seeds.
Top-down view of a pot with coconut milk, sticky rice balls, egg, and pandan leaves.

How to store and reheat

  • Eat fresh for the best chewy texture.
  • Store up to 1 day in the fridge, in an airtight container.
  • Keep coconut milk and rice balls separate if making ahead.
  • Reheat gently on the stove over low heat.
  • Can be eaten cold.

More Thai desserts with coconut milk

Did you try this bua loy dessert recipe? Iโ€™d love to know how it turned out! Leave a star rating or a comment below. Follow me onย Facebook,ย Instagram, andย Pinterest.

ย 

Bua Loy Recipe (Glutinous Rice Balls in Coconut Milk)

Thai bua loy dessert with poached egg, pandan leaves, and multi-colored rice balls in coconut milk.
This is an authentic Thai bua loy recipe for a deliciously sweet dessert with glutinous rice balls in coconut milk. Naturally colored with pandan, taro, and sweet potato.
Praew
Cook Time 1 hour
Total Time 1 hour
Cuisine Asian, Thai
Course Dessert
Serving Size 6 people

Equipment

  • Measuring cups and spoons
  • Cutting board and sharp knife for slicing taro, sweet potato, etc.
  • blender for pandan water
  • steamer for steaming root vegetables
  • Mixing bowls for making dough
  • Plastic wrap to cover dough while resting
  • Large flat tray or plate for placing rolled dough balls (dust with flour)
  • Cooking pots (x2) one for boiling the balls, one for heating coconut milk
  • Sieve or slotted spoon to scoop and rinse the cooked balls

Ingredients

TARO DOUGH

  • just over 1/4 cup glutinous rice flour
  • 1 tbsp tapioca flour
  • 3 oz taro
  • 3 tbsp cold water

PURPLE POTATOES DOUGH

  • just over 1/4 cup glutinous rice flour
  • 1 tbsp tapioca flour
  • 3 oz purple potatoes
  • 3 tbsp cold water

SWEET POTATOES DOUGH

  • just over 1/4 cup glutinous rice flour
  • 1 tbsp tapioca flour
  • 3 oz sweet potatoes
  • 3 tbsp cold water

PANDAN DOUGH

  • just over 1/4 cup glutinous rice flour
  • 1/4 cup tapioca flour
  • about 6 pandan leaves, chopped
  • just under 1 cup water

SWEET COCONUT MILK

  • just over 2 cups coconut milk
  • 1/2 cup white sugar
  • just under 1 cup water
  • 1 tsp salt
  • 2 pandan leaves, chopped
  • egg, optional, to taste

Instructions

Prepare the Ingredients

  • Wash and slice taro, sweet potatoes, and/or purple potatoes into small, even pieces.
  • Steam until fork-tender.
  • Blend pandan leaves with water, then strain to extract pandan juice.

Make the Dough

  • In a mixing bowl, mash the steamed taro (or other base).
  • Add glutinous rice flour and tapioca flour.
  • Mix by hand, then gradually add cold water (or pandan juice) until a soft, clay-like dough forms.
  • Repeat for each flavor or color, wrapping dough in plastic wrap to prevent drying.

Roll the Balls

  • Dust a tray with glutinous rice flour.
  • Roll dough into small balls and place on the tray.
  • Bring a pot of water to a boil. Add the balls in batches, gently stirring.
  • When they float, simmer 2โ€“3 more minutes.
  • Scoop out and transfer to a bowl of room temperature water.

Make Sweet Coconut Milk

  • In a second pot, combine coconut milk, water, sugar, pandan leaves, and salt. Bring to a gentle boil.
  • Optional: Crack an egg into the pot and let it poach for 3โ€“4 minutes (donโ€™t stir).
  • Add the cooked rice balls to the coconut milk and serve warm.
  • If storing for later, keep rice balls and coconut milk separate.

Notes

  • Flavor options: This recipe uses taro, sweet potatoes, purple potatoes, and pandan, but feel free to mix and match. You can even use food coloring if you prefer simplicity or donโ€™t have fresh ingredients on hand.
  • Dough moisture tips: Some ingredients hold more water than others. If you're using pumpkin or another watery vegetable, you may need less cold water (or none at all) when forming the dough.
  • Keep it simple: Donโ€™t feel like you have to make four doughs! One flavor, like sweet potato, works just fine on its own.
  • Ball size: Roll the dough into small balls, theyโ€™ll puff up slightly as they cook.
  • Storage: Best eaten fresh, but leftovers can be kept in the fridge for up to 1 day. Store the coconut milk and rice balls separately for the best texture.
Calories: 311kcal | Carbohydrates: 40g | Protein: 2g | Fat: 18g | Saturated Fat: 16g | Polyunsaturated Fat: 0.2g | Monounsaturated Fat: 1g | Sodium: 411mg | Potassium: 371mg | Fiber: 1g | Sugar: 21g | Vitamin A: 1901IU | Vitamin C: 4mg | Calcium: 29mg | Iron: 3mg

Similar Posts

3 Comments

  1. Hi! This is a super interesting recipe but Iโ€™m confused by the egg – is it poached and then broken into the coconut milk? Or removed after cooking? Or something I havenโ€™t thought of?

    1. Hey Jenn, thank you! In step 2 of ‘make sweet coconut milk’, the egg is added to the coconut milk.
      “Crack the eggs in the boiling coconut milk, cook for 3โ€“4 minutes or until the egg is done. Don’t stir, this will break the egg.”
      I will definitely take a look at the instructions later to see if I can make things more clear, thank you!

5 from 3 votes (2 ratings without comment)

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating