Home » All Recipes » Dessert » Biji Salak (Sweet Potato Balls with Palm Sugar Porridge and Coconut Milk)
| | | | | | |

Biji Salak (Sweet Potato Balls with Palm Sugar Porridge and Coconut Milk)

Jump to Recipe Rate & Review

This post may contain affiliate links. Please read my disclosure policy for details.

Biji Salak is a popular Indonesian takjil dessert that consists of sweet potato-tapioca balls and served with palm sugar porridge and coconut milk.

biji salak 3

This month is the holy month of Ramadan. In Indonesia, the country with the world’s largest Muslim population in the world, Muslims typically wake up before dawn to eat a suhoor meal, fast through the day and nourish throughout the day during the iftar, or evening meal for 30 days during Ramadan. This time is actually the best time to taste some Indonesian traditional foods and snacks. Only in Ramadan, we can see pop-up street food stalls during the afternoon selling seasonal takjil (light iftar snacks that are served for breaking the fast) and traditional snacks. Biji Salak is actually a popular traditional takjil dessert you can easily find and my must-eat food only during Ramadan, maybe because I grew up with it.

About Biji Salak

Biji Salak is a traditional dessert from West Sumatra, Indonesia. The name literally means salak/snake fruit seed. Salak is a species of palm tree native in Indonesia. The dessert is not actually made from snake fruit seed and it is probably named because the shape and color bear some resemblance to the seed.

Biji Salak is sweet potato – tapioca balls served with palm sugar porridge and coconut milk. The sweet potato balls are soft and chewy while the sweet palm sugar porridge is balanced with savory coconut milk. It is one of the most popular takjil desserts you can find in Indonesia and you can find it sold everywhere only in Ramadan. Just for notes that it is absolutely gluten-free and vegan-friendly.

To describe the dessert, the soft and chewy sweet potato balls remind me of sweet potato balls topping you find in a Taiwanese dessert called Bao Bing (刨冰/shaved ice). The texture and taste are pretty similar, but Biji Salak is commonly made from tapioca flour, while the Taiwanese sweet potato balls are made from glutinous rice flour or sweet potato flour (*correct me if I am wrong). The porridge part in Biji Salak is actually palm sugar syrup infused with pandan leaves and thickened until it reaches porridge consistency. Then, we usually put coconut milk on top to balance the sweetness of the porridge.

Tips on Making Biji Salak

Making Biji Salak seems like an easy feat, but it is actually pretty complicated. Here are some tips to tackle making it perfectly.

1. Palm sugar substitute

Palm sugar (I use Indonesian Javanese sugar or gula Jawa) is the main ingredient in the porridge. It is produced by boiling and solidifying the collected sap. Then, it is sold in the form of bricks or cakes. Gula Jawa has an earthy aroma and deep sweetness with a darker color closely resembling molasses. It has a deeper and richer flavor than refined white sugar, which allows it to give dishes a distinctive taste.

For palm sugar alternatives that can provide the right flavor notes, consider substituting with gula Melaka, coconut sugar, or dark brown sugar. They simply have more molasses to give it a deeper brown color and stronger caramel flavor. You can simply use them as a 1:1 replacement for palm sugar in any recipe.

how to make biji salak 1

2. Do not skip adding pandan leaves

Pandan leaves also hugely play an important part in making this recipe. They have a nutty, botanical fragrance that is used as a flavor enhancer in many Asian cuisines, especially in Indonesia. The leaves are usually tied in a bunch and steeped until the fragrance and taste impart to the dishes. There is no substitute for these leaves. If you do not have fresh Pandan leaves, you can use pandan flavoring or essence instead.

3. Prevent the coconut milk from curdling

You can use either thick or thin coconut milk for making this recipe. For personal preference, I like thick coconut milk because it tastes more savory and creamier. I usually make my own coconut milk by straining grated coconut meat with water. The first extract is the thick coconut milk. However, coconut milk has the tendency to separate after being left to sit for a while and if you do not cook it right, your dessert will end up with the sauce mixture separating. It looks like it has curdled and grainy, although it still tastes good.

To minimize the risk of curdling, simmer coconut milk rather than boiling it vigorously. Aside from that, keep stirring the mixture frequently to break up bonds between the protein molecules even as they form. You can also either a thickening agent like cornstarch to stabilize and bind the protein molecules.

how to make biji salak 3

4. Substitute the sweet potato for different colors

The original balls in Biji Salak are made from a mixture of sweet potatoes, tapioca flour, and salt. You can interchangeably replace the sweet potatoes with potatoes, yams, taros, purple sweet potatoes, and even pumpkins, just like my Purple Sweet Potato Biji Salak recipe. Please note that the color of the balls will accordingly change based on the color of your substitute. In addition, I recommend you to put a little bit of sugar into potato and yam dough to bring out the flavor. The reason is potatoes and yams taste less sweet if compared with sweet potatoes.

I actually found some recipes calling for glutinous rice flour in their sweet potato balls. It seems like a good substitution as it is also gluten-free and tastes neutral, but I do not recommend it unless you cannot find tapioca flour anywhere. I have never tried making Biji Salak with glutinous rice flour before. However, I expect that the texture of the sweet potato balls you make with it will be less chewy and denser based on my experience in handling the glutinous rice flour dough.

5. Do not overwork the sweet potatoes

Overworking the sweet potatoes can happen in a couple of ways: either by simply handling them too much or by using a food processor, which mixes them too aggressively. When sweet potatoes are mashed, starch is released. The more you work them, the more starch gets released and the balls will become gummy and denser. For smooth and chewy texture, I recommend masing the sweet potatoes while still hot to make the process easier and quicker.

how to make biji salak 4

6. How to cook sweet potato balls

Firstly, you need to knead mashed sweet potatoes, tapioca flour, and salt with your hand until fully incorporated. Then, I like to roll the dough into a thin long log, cut it into several equal small segments, and shape them into balls.

how to make biji salak 5

Make sure the water is already boiling before adding the balls, otherwise the balls will disintegrate to form a starchy slurry. When the balls float on the surface, it means that they are fully cooked. Strain the balls and toss them into palm sugar water once cooked to keep them separated from each other.

7. Adjust the porridge sweetness

After tossing the balls into palm sugar water, boil the mixture for a few minutes so that the balls absorb the sweetness from the sauce. Then, add the mixture of tapioca flour and water to make the sauce thicker and rich little by little until you reach the consistency you want.

how to make biji salak 7

8. How to serve Biji Salak

To serve, ladle some sweet potato balls along with the thickened porridge into a serving bowl and drizzle with a generous amount of coconut cream. You can serve Biji Salak either warm or cold. For my preference, I love it warm when the sweet potato balls are still soft and chewy. When it gets cold, the balls will eventually get less chewy over time.

biji salak 5

More Indonesian Dessert Recipes

If you don’t know, I have tons of Indonesian dessert recipes on my blog. Try out these recipes!

biji salak
5 from 6 votes

Biji Salak (Sweet Potato Balls with Palm Sugar Porridge and Coconut Milk)

Biji Salak is a popular Indonesian takjil dessert that consists of sweet potato-tapioca balls and served with palm sugar porridge and coconut milk.
Author: Jaja Bakes
Course: Dessert
Cuisine: Indonesian
Servings: 6
Tap or hover to scale!
Prep Time25 minutes
Cook Time35 minutes
Total Time1 hour


Sweet Potato Balls

  • 1.1 lbs (500 gr) sweet potato, peeled, cut into chunks
  • 1 cup (125 gr) tapioca flour
  • 1/2 tsp salt

Palm Sugar Porridge

  • 4 cups (1 liter) water
  • 1 cup (200 gr) gula Jawa/palm sugar block, shaved and minced
  • 1/4 cup (50 gr) granulated sugar
  • 1/2 tsp salt
  • 3 pandan leaves, chopped or knotted
  • 2 tbsp tapioca flour
  • 3 tbsp water

Coconut Milk


  • Cut peeled sweet potatoes into big chunks. Place in a steamer and steam for 15-20 minutes until the sweet potatoes are tender. Check this by poking the sweet potatoes with a fork/skewer.
  • While the sweet potatoes are being cooked, add water, palm sugar, granulated sugar, pandan leaves, and salt into a medium pot. Bring to a boil and turn off the heat. Strain to remove pandan leaves and any residual from the palm sugar. Set aside.
  • Add coconut milk, salt, and pandan leaves in a small saucepan. Simmer with low heat while stirring constantly. Turn off the heat and set aside.
  • After the sweet potatoes are cooked, put them in a medium bowl and mash until smooth while still warm. Add tapioca flour and salt and knead the dough with hand until fully incorporated. Roll the dough into thin long logs, cut them into small segments, and roll the segments into 1-1.5 inch balls.
  • In a medium pot, add enough water to reach half of the pot. Let it boil and add sweet potato balls into the water. Cook until the sweet potato balls float to the top. Using a strainer, transfer the cooked sweet potato balls into the palm sugar water.
  • Bring the palm sugar water to boil. In a small bowl, mix 2 tbsp tapioca flour and 3 tbsp water until incorporated. Pour the mixture into the palm sugar water until the porridge thickens and starts to bubble. Remove from the heat.
  • To serve, ladle some sweet potato balls along with the palm sugar porridge into a serving bowl. Drizzle with a generous amount of coconut milk.


Serving: 1serving | Calories: 385kcal | Carbohydrates: 71g | Protein: 2g | Fat: 12g | Saturated Fat: 11g | Polyunsaturated Fat: 0.1g | Monounsaturated Fat: 1g | Sodium: 704mg | Potassium: 417mg | Fiber: 4g | Sugar: 31g | Vitamin A: 11731IU | Vitamin C: 3mg | Calcium: 38mg | Iron: 2mg
Did You Make This Recipe?I love hearing how you went with the my recipes. Leave a comment below or tag @jacintahalim on Instagram.

Similar Posts

5 from 6 votes (5 ratings without comment)

Leave a Reply

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

Recipe Rating

One Comment