Ice cream is great and snow cones are good, but for me the ultimate summer dessert is halo-halo. The refreshing, multi-layered, shaved-ice-based Filipino dessert is packed with incredible flavors and textures — icy, creamy, chewy, crunchy, sweet, syrupy. I’ve been lucky to eat halo-halo here in the United States and all over the Philippines and it still thrills me every time. That’s because no two halo-halos are the same, thanks to the myriad mix-ins that make each and every bite an adventure. To bring a little bit of that joy to your summer, I created my ultimate halo-halo recipe based on the very best of my experiences. Once you give it a try, I bet you’ll be a huge halo-halo fan, too.
What Is Halo-Halo?
Halo-halo is a popular dessert in the Philippines that’s a combination of shaved ice layered with a variety of different ingredients: tropical fruits, ice cream, gelatin-based candies made from coconut water, and so much more. The frosty treat is the perfect antidote to the hot, humid weather.
The words “halo-halo” translate to “mix-mix” because before you eat the treat, you mix everything up. And while shaved ice is essential, the mix-ins are really the stars here. Those ingredients vary depending on who’s making your halo-halo, which is sold everywhere from street carts to five-star hotels. Ranging from creamy to chewy to gelatinous and even crunchy, the textural contrasts are what make this treat so much fun to eat.
Variations of shaved ice desserts can be found throughout Asia. Halo-halo has roots in the Japanese shaved ice dessert kakigori, which is shaved ice that is traditionally topped with a flavored syrup and a creamy component, like sweetened condensed milk. Shirokuma is a type of kakigori made with different fruits, sweet adzuki bean paste, and mochi.
My Favorite Halo-Halo Mix-ins
When I was creating this recipe, I wanted to include the mix-ins that I crave the most. For me, shaved ice plus these seven components add up to the icy, creamy, chewy, halo-halo of my dreams.
Minatamis na saging (bananas in syrup): Razon’s of Guagua, a popular Filipino restaurant chain and halo-halo maker, makes their halo-halo with minatamis na saging, which are saba bananas cooked in a caramel syrup. They add shaved ice, evaporated milk, and macapuno (or coconut sport), then top the halo-halo with a couple of pieces of leche flan. Their halo-halo is famous in the Philippines. In my version, I add small tapioca pearls to the sweet bananas.
Macapuno: Also known as gelatinous mutant coconut, macapuno is chewy, soft coconut meat with a jelly-like texture. It adds coconut flavor and coconut texture to the dessert.
Milk mixture: In my recipe, I bring in the flavors of leche flan by using a milk mixture made of coconut milk, evaporated milk, and sweetened condensed milk. For a vegan version, you can use coconut-based evaporated and condensed milk or omit all together.
Ube halaya: Some versions of halo-halo will include ube, or purple yam, whether that’s in ice cream form or by using ube halaya (purple yam jam). Ube is a popular ingredient in Filipino desserts. I use ube halaya because I felt it was easier to source than ube ice cream.
Coconut ice cream: If you can’t find ube ice cream, I recommend using an ice cream with a flavor profile that pairs well with tropical flavors. The ice cream brings creamy, milky textures to the dessert and it’s delicious once things begin to melt and combine in the glass. In this recipe, I use coconut ice cream, but you could also try mango sorbet or vanilla ice cream. Need a vegan option? Vegan coconut ice cream would work well here, too. As long as the ice cream complements the rest of ingredients, you’ll be fine.
Jackfruit: Jackfruit (nangka in Tagalog) is a fruit native to South Asia that can be eaten in both unripened and ripened form. The unripened form is used in savory cooking and has been used as a faux-meat alternative. The ripened version is used in sweet form. Here, I add chopped canned jackfruit in syrup. The jackfruit is delicious but also has a lightly firm texture that plays with the palate.
Nata de coco: This coconut water gel has a firm gelatinous texture that I love. It is sometimes scented with flavors or food coloring; however, they do make a dye-free version, if you happen to be dye-sensitive, like me. For me, it’s not halo-halo without jackfruit and nata de coco. Those textures are essential to my halo-halo experience.
Shopping for Halo-Halo
Most halo-halo ingredients can be found at your local mom-and-pop Filipino market. Johnny Air Mart in Manhattan has a section of halo-halo ingredients in the back of their store. If you don’t have access to a Filipino market, you can also buy the ingredients online.
When it comes to the shaved ice, it’s easier to make at home than you may think. There are a variety of machines that you can buy, but my favorite is the one from Hawaiian Shave Ice. It’s the machine I used to develop this recipe and is affordably priced at around $40.
Building Your Halo-Halo
Feel free to use whatever mix-ins you like best. In the Philippines, there are seemingly infinite halo-halo combos. Beans, such as garbanzo, adzuki, or mung beans, in syrup show up, as well as corn treated in the same way. Adding diced mango, diced sweet potato, large tapioca or sago pearls, and plain sliced bananas are also common. However you fill up your glass is up to you. When assembling, the measurements are arbitrary. I include them here as a guideline but feel free to add more or less of anything. As long as it tastes good to you, you’re doing it right!
Have you had halo-halo? What are your favorite mix-ins?
How To Make Halo-Halo
Prep time 15 minutes
Cook time 20 minutes
For the minatamis na saging (sweetened bananas) and tapioca:
- 1/4 cup
small tapioca pearls (optional)
saba bananas, or 2 regular bananas
- 1 cup
water, plus more for the pearls
- 3/4 cup
packed light brown sugar
- 1/4 teaspoon
- 1/4 teaspoon
- 1 (20-ounce) can
jackfruit in syrup
- 2/3 cup
canned full-fat unsweetened coconut milk
- 3 tablespoons
- 3 tablespoons
sweetened condensed milk
Minatamis na saging and tapioca (recipe above)
- 4 scoops
coconut or ube ice cream
- 1/2 cup
macapuno (coconut sport strings)
- 1/2 cup
- 1 1/2 cups
- 4 cups
shaved ice, plus more
Make the minatamis na saging and tapioca:
Cook the tapioca (optional). Bring a medium saucepan of water to a boil over medium-high heat. Add 1/4 cup small tapioca pearls, stir to combine, and reduce the heat to maintain a simmer. Simmer until the tapioca is al dente (translucent with small white centers), about 7 to 8 minutes. Drain through a fine-mesh strainer.
Slice the bananas. Peel and slice 3 saba or 2 regular bananas crosswise into 1/4-inch-thick rounds.
Make the syrup. Place 1 cup water, 3/4 cup packed light brown sugar, and 1/4 teaspoon kosher salt in a large saucepan. Stir and bring to a boil over medium-high heat. Reduce the heat to maintain a simmer and cook for 5 minutes.
Add the bananas. Add the bananas and bring to a boil. Reduce the heat to maintain a low simmer and cook until tender and translucent, about 5 minutes. Add 1/4 teaspoon vanilla extract and tapioca if using, and stir to combine, breaking up any clumps. Transfer to a medium bowl and let cool to room temperature. Cover and refrigerate until cold, about 2 hours.
Prepare the ingredients for assembly:
Cut the jackfruit. Remove the jackfruit from a 20-ounce can, leaving the syrup behind. Coarsely chop the jackfruit into bite-sized pieces. Return the jackfruit back to the can.
Make the milk mixture. Place 2/3 cup coconut milk, 3 tablespoons evaporated milk, and 3 tablespoons sweetened condensed milk in a small bowl or liquid measuring cup and stir to combine.
Assemble the halo-halo. For each serving, layer the ingredients in a 16-ounce glass in the following order: 1/3 cup minatamis na saging, 1 scoop coconut or ube ice cream, 2 tablespoons macapuno, 2 tablespoons ube halaya, 1/4 cup jackfruit and syrup, and 1/3 cup coco de nata. Top with 1 cup shaved ice and drizzle with 3 tablespoons of the milk mixture. Add more shaved ice to fill the glass if needed.
Serve and enjoy. Serve with a long spoon and mix it all up before eating.