Sapin-Sapin is as tasty as it is pretty! Soft, chewy, and topped with golden latik, this Filipino steamed glutinous rice cake is a delicious midday snack or after-dinner dessert.

I’ve wanted to make sapin-sapin for the longest, but I was intimidated by what I thought to be a very complicated process. So when I went home to the Philippines a few years ago, I asked our suking magkakanin to teach me, along with other kalamay recipes.
As it turned out, I didn’t need a 7,185-mile trip to learn how to make this Filipino steamed cake. The whole process is easy; it’s almost child’s play!
Sapin-sapin, which means layers, is one of the easiest Filipino desserts you can make. All it takes is mixing glutinous rice flour, coconut milk, condensed milk, and sugar into a smooth batter which you then divide into three portions, color, and steam one on the top of the other.
I had so much fun making it again this afternoon; adding in the extracts and watching everything come together into one colorful sweet treat!
Half of the work in the recipe is making the latik. Although you can skip this step and use toasted coconut shreds instead, I urge you to take the extra effort. These golden curds taste so much better than dried coconut, and their rendered oil can be brushed on the sapin-sapin to add aroma and flavor.
To speed up the process, use coconut cream or kakang gata (first extraction) as it’s more concentrated and will reduce quicker.
Cooking tips
- The rice batter is about 6 cups which fits perfectly in an 8 x 2 round baking pan. You can also use an 8 x 8 square pan which has an 8-cup capacity.
- Liberally grease the inner sides and bottom of the baking pan to be able to remove the sticky rice cake easily after steaming. You can also use wilted banana leaves to line the pan or parchment paper if you like.
- To make the sapin-sapin extra special and more traditional, stir in about 1/2 cup of mashed cooked ube to the purple-colored mixture and 1/4 cup finely chopped jackfruit (langka) to the yellow-colored mixture.
- I use about 3 to 4 drops of each extract to achieve the color I like. Note that the colors of the tinted batters will be light but will deepen when steamed and cooked.
- Do not cover the kalamay until sufficiently cooled as the steam will cause water puddles on the cake.
Give this sticky rice cake a try. You’ll be amazed at how something so gorgeous and delicious can be put together in less than an hour. It will be the perfect centerpiece for your next party!
For more kakanin using glutinous rice flour, check out my Palitaw, Kapit, Royal Bibingka, and Kalamay Hati recipes. Enjoy!
Ingredients
For the Latik
- 1 cup coconut cream (kakang gata)
- 3 1/2 cups glutinous rice flour
- 2 cans (13.5 ounces each) coconut milk
- 1 can (14 ounces) condensed milk
- 1 cup sugar
- 3 drops ube flavor extract
- 3 drops langka flavor extract
Equipment
Instructions
- In a pan over medium heat, add coconut cream and bring to a boil. Cook, stirring occasionally until liquid starts to thicken.
- Lower heat and continue to cook. As oil starts to separate and solids begin to form, regularly stir and scrape sides and bottom of the pan to prevent from burning. Continue to cook and stir until curds turn golden brown.
- Drain latik from the oil and store in separate containers until ready to use.
- Generously brush inner sides and bottom of an 8-inch round baking pan with the oil.
- In a large bowl, combine glutinous rice flour, coconut milk, condensed milk, and sugar. Stir together until sugar is dissolved and mixture is smooth and well blended.
- Strain the batter using a fine-mesh sieve and divide evenly into three bowls.
- In one bowl, add ube extract and stir until color is well dispersed. In another bowl, add Langka extract and stir until color is well dispersed. The remaining portion will be white and plain.
- Pour ube-flavored batter into the prepared baking pan. Steam for about 10 minutes or until set and toothpick inserted comes out clean.
- Carefully pour langka-flavored batter over purple layer. Steam for about 10 minutes or until set and toothpick inserted comes out clean.
- Gently pour plain batter over yellow layer. Steam for about 10 minutes or until set and toothpick inserted comes out clean.
- Remove cake pan from steamer and allow to cool completely.
- Run a knife around the sides of the pan to loosen the rice cake. Place a wide, flat serving platter over cake pan and gently invert. Tap the pan a few times to release the sapin-sapin onto the platter (purple layer will now be the top layer).
- Liberally brush top and sides of sapin sapin with coconut oil. Sprinkle latik on top and cut the cake into serving portions.
Notes
- The rice batter is about 6 cups which fits perfectly in an 8 x 2 round baking pan. You can also use an 8 x 8 square pan which has an 8-cup capacity.
- For easy removal of steamed cake, liberally grease the inner sides and bottom of the baking pan. Or use wilted banana leaves to line the pan or parchment paper.
- To make the sapin-sapin extra special, stir in about 1/2 cup of mashed cooked ube to the purple-colored mixture and 1/4 cup finely chopped jackfruit (langka) to the yellow-colored mixture.
- Allow the kalamay to cool completely before covering as the escaping steam might cause water puddles on top of the cake.
Video

Nutrition Information
“This website provides approximate nutrition information for convenience and as a courtesy only. Nutrition data is gathered primarily from the USDA Food Composition Database, whenever available, or otherwise other online calculators.”
Bethany Elmedulqn says
Pls.send me all kinds of glutanious recipe..I would love to cook for business.thank you
Alika says
Sorry. Dumb question. Is it regular Condensed Milk, or Sweetened Condensed Milk?
Lalaine Manalo says
No such thing as a dumb question. 🙂 It’s sweetened condensed milk.
Dan Rivero says
Hi Lalaine,
Your Sapin sapin is the most requested mirienda in my family and friends. I followed your recipe very well but twice the last layer comes out undercooked. I have to add an extra 10 minutes ( from your 10 minutes for the last layer. Comes out okey. Thanks for your recipes.
Dan Rivero says
I’m on my second sapin sapin, I finally get the color, consistency and flavoring with purple (top layer) using ube essence, orange ( middle) using 1/4 tsp vanilla, green ( bottom) using pandan essence. It was much easier now making the “latik” this time, I stop when it was golden brown for the topping. Thank you so much Lalaine for your recipe.
Dan Rivero says
Thank you very much for this user friendly, easy to follow recipe for sapin sapin. My wife and I thought we were back in our beloved country after tasting this delicious Sapin sapin.❤️
Ruby says
This recipe worked perfect to me. I like the sticky and chewy texture. The sweetness and the taste is perfect! I just did a twist and added langka and buko bits.. so yummy. Thanks so much for the recipe.
Ana Marie Merano Raymundo says
I love sapin sapin!
Chef KDE says
What if lanka extract is not available? Can i use Buko pandan extract or mango extract ?
Ellen Patiag says
can you keep the remaining sapin sapin in the freezer?
Cherrylyn rempis says
Hello maam..i want to try your recipe po pandagdag sa mga niluluto kong kakanin but i dont know the exact measurement of the wet ingredients po..like yung ounce po..di ko po alam inquivalent po nila sa ml or sa cups po..wala po kasi akong ibang pang measure kundi yung cups po..pls help po..thanks
Jane says
Hi! Is it also possible to bake Sapin-Sapin in the oven if placed in a water bath? At what temperature and how many minutes should each layer be cooked in the oven? Also, should it be covered so the water won’t get inside? What about baking it without the water bath? Thanks.
Norman Tecson says
Hi Lalaine,
A pleasant good day to you. I am a big follower of “kawaling pinoy” since your recipe is simple and no marketing with it. plain and straight cooking.
However, i followed your Sapin2x recipe and it seems the ingredients needs 2 cups more coconut milk plus you have to cover with cheesecloth/or any replacement while steaming. It turns out following your recipe, my sapin2x looks raw and the layers didnt blend it as one.
Just relaying my 1st time sapin2x recipe experience using yours.
Stay safe and peace to all mankind!
kris says
Hi thanks for the recipe, but mine turned soggy even with the cover. So I guess when I try it again I will add rice flour maybe 1/2 or 1/4 cup.
Thank you,
Kris
Pam says
Hello Lalaine,
I love your blog and have tried your recipes. Your work is greatly appreciated!
My question is about the ube and langka extracts. If we add the cooked ube and chopped langka, is it possible to just food coloring instead? Or will the flavors not stand out?
Thanks again,
Pam
Kris says
Followed this recipe and its perfect!!!! Thank you
I put cloth on the lid and the last layer I steamed it for around 19mins and its perfect!