A beloved Indonesian street dessert built on finely shaved ice, lush coconut milk, and an assortment of tropical fruits, all drizzled with dark palm sugar syrup. Every bowl balances creamy, fruity, and caramelly notes for a refreshing treat on hot days. Assemble it just before serving so the ice stays crunchy and the coconut sauce shivers cold.
Prep Time20 mins
Cook Time10 mins
Total Time30 mins
Servings4
Yield4 bowls
Nutrition Facts
Per serving (estimated)
- 410 kcalCalories
- 22 gFat
- 16 gSaturated Fat
- 52 gCarbs
- 5 gFiber
- 38 gSugar
- 4 gProtein
- 160 mgSodium
- 520 mgPotassium
- 55 mgCalcium
- 2 mgIron
- 9 mgVitamin C
- 85 mcgVitamin A
Ingredients
For the palm sugar syrup
- 200 g dark palm sugar, finely chopped
- 120 ml water
- 2 pandan leaves, tied in a knot
- 1 tbsp lime juice
For the coconut sauce
- 400 ml full-fat coconut milk
- 150 ml water
- 1/4 tsp fine sea salt
- 1 pandan leaf, knotted
- 1 tbsp cornstarch
For the fruit mix
- 1 ripe avocado, peeled and cubed
- 200 g ripe jackfruit arils, seeds removed and shredded
- 150 g young coconut meat, cut into thin strips
- 120 g canned grass jelly, drained and cubed
For assembly
- 800 g finely shaved ice
- 4 tbsp sweetened condensed milk, optional
- Toasted coconut flakes, for garnish
Directions
- Combine the palm sugar, water, and pandan leaves in a small saucepan over medium heat. Stir until the sugar fully dissolves, then simmer for 4-5 minutes until slightly thickened. Stir in the lime juice, remove the pandan leaves, and let the syrup cool completely.
- In a separate saucepan, whisk the coconut milk with the water, salt, pandan leaf, and cornstarch. Cook over medium-low heat, stirring constantly, for 6-8 minutes until gently thickened and steaming. Do not boil. Remove from the heat, discard the pandan, and chill the coconut sauce in the refrigerator until cold.
- While the syrup and sauce cool, prep the fruit: cube the avocado, shred the jackfruit into bite-sized pieces, slice the young coconut, and dice the grass jelly. Keep the avocado covered with a thin film of coconut milk or a squeeze of lime so it does not brown.
- Just before serving, mound about 200 g of finely shaved ice into each of four chilled bowls. The finer the ice, the more traditional the texture.
- Spoon a generous layer of the chilled coconut sauce over the ice, then arrange avocado, jackfruit, young coconut, and grass jelly neatly on top so the colors show through the white.
- Drizzle 2-3 tablespoons of the palm sugar syrup over each bowl, add a ribbon of condensed milk if using, and scatter toasted coconut flakes on top. Serve immediately with a long spoon and an extra syrup boat on the side.
Cook’s Notes
- Es Teler should be eaten fast; once the ice melts it loses its signature crunch and dilutes the sauce, so prep everything in advance and assemble to order.
- If palm sugar is hard to find, dark muscovado sugar is the closest substitute, though the flavor will be slightly more molasses-forward.
- For the most authentic texture, shave ice with a hand-cranked shaver or blend ice cubes briefly so they are snowy rather than crunchy.
- Keep the coconut sauce on the gentlest heat possible; boiling causes the coconut milk to split and turn grainy.
- Add a scoop of attap chee (palm fruit) or a few basil seeds soaked in water for a fancier version seen in Indonesian dessert shops.










