Print
clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon

Filipino Sapin Sapin

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

๐Ÿš Delight in colorful, chewy layers of Sapin Sapin, a Filipino sticky rice cake bursting with coconut richness and tropical flavors for festive treats.
๐ŸŒธ Easy no-bake dessert that’s gluten-free, naturally sweet, and perfect for parties or snacks with creamy latik topping.

  • Total Time: 1 hour 30 minutes
  • Yield: 12-16 servings

Ingredients

– 1 cup coconut cream for latik topping and toasted coconut curds

– 3 1/2 cups glutinous rice flour for the sticky, chewy texture

– 2 cans coconut milk, 13.5 ounces each for creaminess and flavor

– 1 can condensed milk, 14 ounces for sweetness and richness

– 1 cup sugar for adjusting sweetness to taste

– 3 drops ube flavor extract for violet color and ube taste

– 3 drops langka flavor extract for yellow color and jackfruit taste

Instructions

1-First Step: Make the latik topping first. Start by preparing the topping so it has time to cool. Pour 1 cup coconut cream into a small saucepan and cook over medium heat. Stir often as the mixture thickens. After a few minutes, it will begin to separate into oil and solids. Keep cooking until the curds turn golden brown and smell toasted. This usually takes about 10 to 15 minutes. Once the latik is ready, strain it if needed and set it aside on a plate lined with paper towel. Latik gives Filipino Sapin Sapin its classic finish, so do not rush this part. If you like coconut desserts, this is the same kind of flavor base you may enjoy in other tropical recipes like refreshing tropical fruit drinks, where coconut and fruit pair beautifully.

2-Second Step: Prepare the steamer and pan. Fill your steamer with water and bring it to a gentle boil before you start mixing the batter. Lightly grease a round pan or llanera with oil so the cake can be removed easily later. A shallow pan works best because the layers cook more evenly and keep their bright colors. If you want a neat finish, line the steamer lid with a clean cloth or towel. This helps keep water droplets from falling onto the batter and making the top layer wet. It is a small step, but it makes a big difference in texture.

3-Third Step: Mix the batter base. In a large mixing bowl, combine 3 1/2 cups glutinous rice flour, 2 cans coconut milk, 13.5 ounces each, 1 can condensed milk, 14 ounces, and 1 cup sugar. Stir until smooth. The batter should be pourable but not watery. If it looks too thick, add a little more coconut milk. If it seems too thin, let it rest for a few minutes so the flour can absorb the liquid. Divide the batter into three portions. Leave one portion plain, mix 3 drops ube flavor extract into one portion, and mix 3 drops langka flavor extract into another portion. Stir each bowl well so the color spreads evenly. Try not to overmix, because that can make the batter heavy.

4-Fourth Step: Steam the first layer. Pour the purple ube batter into the prepared pan first. Smooth the surface with a spoon or spatula. Steam over medium heat for about 10 to 15 minutes, or until the layer is set on top and no longer looks wet. Keep the heat steady so the layer cooks without bubbling too much. A good sign that the layer is ready is when it feels firm to the touch but still slightly soft in the center. Do not open the lid too often because that can slow the cooking and create uneven layers. Patience gives you cleaner stripes and a prettier finish.

5-Fifth Step: Add the yellow layer. Carefully pour the yellow langka batter over the set purple layer. Spread it gently so the colors stay distinct. Steam again for about 10 minutes. The layer should become smooth and firm before the next one goes in. If you want crisp, clean layers, work slowly and avoid splashing the batter onto the sides of the pan. Some cooks like to gently tap the pan on the counter before steaming to remove air bubbles. This helps the top stay smooth. It is also helpful if you are making this for guests and want a polished presentation.

6-Sixth Step: Finish with the plain layer. Pour the remaining plain batter on top. Steam for another 10 to 15 minutes, or until the top is fully set. In total, the cake usually needs about 30 to 40 minutes, depending on the depth of your pan and the strength of your steamer. The center should feel firm when lightly pressed. When the final layer is done, let the cake rest in the pan for 15 to 20 minutes before unmolding. Cooling helps the layers settle and makes slicing easier. If you cut it too soon, the cake may stick or lose its shape.

7-Final Step: Add the latik and serve. Once the cake is cool, gently loosen the edges with a spatula and turn it onto a serving plate. Sprinkle the latik generously over the top. Slice into diamonds or squares and serve at room temperature. The soft, chewy layers pair beautifully with the crunchy topping. For a prettier table, serve the dessert on a white platter so the colors stand out. This is a lovely choice for holidays, birthdays, and merienda. If you enjoy sweet comfort food like simple homemade baked treats, this dessert offers the same homemade warmth, but with a distinctly Filipino twist.

Last Step:

Please leave a rating and comment letting us know how you liked this recipe! This helps our business to thrive and continue providing free, high-quality recipes for you.

Notes

๐Ÿฅฅ Stir latik constantly at end to prevent burning for perfect golden curds.
๐ŸŽจ Use natural extracts for authentic flavor; food coloring enhances vibrant layers.
๐Ÿ’จ Steam on medium-high heat with lid slightly ajar to avoid condensation sogginess.

  • Author: Brandi Oshea
  • Prep Time: 20 minutes
  • Cooling: 1 hour
  • Cook Time: 50 minutes
  • Category: Dessert
  • Method: Steaming
  • Cuisine: Filipino
  • Diet: Vegetarian, Gluten Free

Nutrition

  • Serving Size: 1 piece
  • Calories: 350 kcal
  • Sugar: 25g
  • Sodium: 50mg
  • Fat: 12g
  • Saturated Fat: 10g
  • Unsaturated Fat: 2g
  • Trans Fat: 0g
  • Carbohydrates: 55g
  • Fiber: 1g
  • Protein: 4g
  • Cholesterol: 10mg