Bua Loy Recipe: Thai Rice Balls in Coconut Milk

Bua Loy (บัวลอย) is a traditional Thai dessert made with small glutinous rice flour balls served in lightly sweet and salty coconut milk. Their soft, pleasantly chewy texture contrasts with the creamy sweetness of the coconut milk.

The rice balls can be left white or naturally coloured with taro, kabocha squash, pandan or other plant-based juices. Bua Loy is best eaten on the day it is made, either warm or at room temperature.

Bua Loy Thai dessert with colourful glutinous rice balls in coconut milk

At the table with Portail Asie

Traditional Bua Loy

Make traditional Bua Loy, a Thai dessert of tender glutinous rice balls served in lightly sweet and salty coconut milk.

Prep time
30 min
Cooking time
15 min
Total time
45 min
Servings
6
Difficulty
Easy
Spice level
0/5
Cuisine
Thailand
Dish type
Dessert

Last checked: September 23, 2026

About this recipe

Version: Traditional

Bua Loy is a classic Thai dessert made with small balls of glutinous rice flour served in sweet and lightly salted coconut milk. The balls can be naturally coloured with taro, kabocha squash, pandan or other plant-based ingredients.

Do not substitute: Do not replace glutinous rice flour with regular rice flour, as the texture would become crumbly instead of soft and chewy. Also avoid cooking the rice balls for too long in the coconut milk, as they will eventually become too soft.

Ingredients

For the rice balls

  • 100 g Glutinous rice flour
  • ½ cup Cooked and mashed taro or kabocha squashor pandan juice for another colour
  • 60 to 120 ml Wateradd gradually depending on the moisture of the dough

For the sweet coconut milk

  • 480 ml Coconut milkfull-fat, unsweetened
  • 240 ml Water
  • ¾ cup Palm sugarchopped, adjust to taste
  • ¾ tsp Salt
  • ½ Pandan leafoptional, tied in a knot

Preparation steps

  1. Mix the glutinous rice flour with the mashed taro or kabocha squash until evenly combined.

  2. Add the water very gradually while kneading until you have a soft, smooth dough that does not stick to your fingers. If it becomes too sticky, add a little more glutinous rice flour.

  3. Flatten the dough into a rectangle slightly less than 1 cm thick, then cut it into strips and finally into small pieces about 1 cm in size.

  4. Roll each piece between your fingers or palms to form small balls. Keep them covered so they do not dry out while you prepare the rest of the recipe.

  5. Prepare the coconut milk mixture. Pour the coconut milk, water, palm sugar, salt and pandan leaf into a saucepan. Heat over medium heat, stirring until the sugar has completely dissolved, then remove from the heat and discard the pandan leaf.

  6. Bring another saucepan of water to a vigorous boil. Prepare a large bowl of cold water alongside it.

  7. Cook the rice balls in small batches in the boiling water. As soon as they float to the surface, remove them with a slotted spoon and immediately transfer them to the cold water.

  8. Drain the rice balls thoroughly and add them to the coconut milk. Gently reheat until the first signs of a simmer so the balls absorb some of the coconut mixture, then immediately remove from the heat.

  9. Serve Bua Loy warm or at room temperature. It is best eaten on the day it is made, while the rice balls remain tender and slightly chewy.

Common mistakes and how to avoid them

The dough sticks to your fingers

Probable cause: Too much water was added or the mashed ingredient contained a lot of moisture.

Solution: Add a little glutinous rice flour and knead until the dough is soft but no longer sticky.

The dough cracks and crumbles

Probable cause: It does not contain enough moisture.

Solution: Add a few drops of water at a time and knead until the dough becomes smooth again.

The rice balls are too soft

Probable cause: They were cooked for too long or left in the hot coconut milk for too long.

Solution: Remove them from the water as soon as they float, then only reheat the finished dessert briefly.

The coconut milk is too sweet

Probable cause: Too much palm sugar was added before tasting.

Solution: Start with a smaller amount and adjust gradually according to taste.

The rice balls dry out before cooking

Probable cause: They were exposed to the air for too long.

Solution: Keep them covered until you are ready to cook them in boiling water.

Portail Asie tips

Add the water gradually, as the amount required varies depending on the moisture content of the taro or squash. The dough should remain soft without sticking to your fingers. For several colours, divide the dough into portions and use ingredients such as taro, kabocha squash or pandan juice. Remove the rice balls as soon as they float to the surface, then cool them immediately. Finally, avoid boiling them for a long time in the coconut milk, as they can become too soft.

Substitutions and alternatives

Taro or kabocha squash
You can use pandan juice or another plant-based juice to colour the dough naturally. If using juice, reduce or omit the additional water.
Palm sugar
If unavailable, use coconut sugar or light brown sugar, although the flavour will be slightly different.
Pandan leaf
It is optional. The dessert remains traditional and flavourful without pandan.
Glutinous rice flour
Do not replace it with regular rice flour. The characteristic soft and chewy texture of Bua Loy depends on glutinous rice flour.

Watch the preparation

The video is loaded from YouTube after you click.

Order this dish in Thailand

Thai name:บัวลอย

Say it simply:Bua Loy

Show this:ขอบัวลอยหนึ่งถ้วยครับ/ค่ะ

ขอบัวลอยหนึ่งถ้วยครับ/ค่ะ

Meaning:One bowl of Bua Loy, please.

Where to find the ingredients

Glutinous rice flour, coconut milk, palm sugar, taro and pandan leaves are available in most Asian grocery stores. Check the flour label carefully: it should say “glutinous rice flour” or “sticky rice flour”, not simply “rice flour”.

Related recipes