Cook the rice: Rinse the rice until the water runs clearer, then drain. Add water, salt, and pandan leaves (if using).Bring to a boil, then lower heat. Cover and cook for 15–20 minutes until the water is absorbed.Let cool, then discard pandan leaves.
Prepare the dish: Use an 8×8-inch baking dish. Line with banana leaves or parchment, or grease well.
Make the coconut mixture: From the coconut milk, set aside 1 cup.Pour the rest into a pan, add sugar and salt, and bring to a boil.Cook for about 10 minutes until slightly thickened.
Cook the rice mixture: Add the cooled rice and stir to coat.Cook over medium heat for 15–20 minutes. Keep stirring until thick and sticky.
Transfer: Spread into the prepared dish and smooth the top.Preheat oven to 350°F (175°C).
Make the latik: Using the reserved coconut milk, combine with brown sugar and salt in a pan.Cook over medium-high heat for about 10 minutes until thick and syrupy.
Add topping: Pour the latik over the rice and spread evenly.
Bake: Bake for 30 minutes until set.Broil on low for 5–10 minutes if needed to brown the top.Cool completely before cutting.
Video
Notes
Glutinous rice: Also called sticky or sweet rice; soft and chewy when cooked.
Coconut milk: Fresh or canned works; use coconut cream for a richer taste.
Sugar: White sugar for the rice, brown sugar for the topping; swap with muscovado, panutsa, or coconut sugar.
Pandan (optional): Adds aroma; substitute with vanilla or skip.
Tips
Don’t overcook the rice — it should be cooked but still firm.
Stir the mixture constantly so it doesn’t stick or burn.
Cook until thick and sticky for that chewy texture.
Lower the heat if the bottom starts to stick.
Let it cool completely before cutting so it sets properly.
How to Store and Reheat
To store: Keep in an airtight container at room temperature for up to 1 day, or refrigerate for up to 3 days.
To reheat: Microwave for a few seconds until soft again.