
My Filipino coworker brought ube halaya to our office potluck, and I couldn’t stop eating it. The vibrant purple color immediately caught my eye, but the flavor—sweet, creamy, with a subtle nuttiness—was what made me go back for thirds. When I asked her about it, she laughed and said making it from scratch was a labor of love that took over an hour of constant stirring. She shared her family’s ube halaya recipe with me, warning that my arm would be tired but promising it was worth every minute. She was right on both counts. Now I make this stunning Filipino dessert for special occasions, and it never fails to impress with its gorgeous color and rich, smooth texture.
Why You’ll Love This Ube Halaya Recipe
This ube halaya recipe creates a traditional Filipino dessert with an incredibly rich, creamy texture and naturally vibrant purple color that looks almost too beautiful to eat. The flavor is uniquely sweet with subtle vanilla and coconut notes, plus an earthy quality from the purple yam that’s unlike anything else. While it requires patience and arm strength for all that stirring, the technique is straightforward with no complicated steps. The result is a versatile dessert spread that works as a topping for toast, ice cream, or pastries, or can be enjoyed by the spoonful straight from the jar. Ube halaya makes an impressive gift when jarred beautifully, and people are always amazed when you tell them you made it from scratch. It’s also naturally gluten-free and can be made vegan with simple substitutions. Best of all, this stunning purple dessert is absolutely delicious and introduces you to one of the Philippines’ most beloved flavors.
What Is Ube Halaya?
Ube halaya is a classic Filipino dessert made from purple yam (ube), condensed milk, evaporated milk, butter, and sugar, cooked down into a thick, pudding-like consistency. This ube halaya recipe produces what’s also called ube jam, though it’s thicker and richer than typical jam. The word “halaya” means “to mix” in Tagalog, referring to the constant stirring required during cooking. Ube is a purple yam native to the Philippines with a naturally vibrant purple color and sweet, nutty flavor. It’s different from purple sweet potato, though they’re sometimes confused. Traditional ube halaya has been made in Filipino homes for generations, often served during special occasions and holidays. The dessert has gained international popularity recently as ube flavoring has become trendy in cafés and bakeries worldwide. Authentic ube halaya has a smooth, thick texture that holds its shape, similar to very thick pudding or soft fudge.
Common Mistakes to Avoid
The biggest mistake with this ube halaya recipe is not stirring constantly enough. The mixture will burn and stick to the bottom of the pot if you don’t stir continuously. This isn’t a dish you can walk away from.
Using fresh ube without proper preparation creates problems. Fresh purple yams must be peeled, boiled until tender, and mashed or pureed completely smooth before using. Lumps will remain throughout the finished halaya.
Not cooking the mixture long enough results in runny halaya that won’t set properly. You need to cook until the mixture is very thick and pulls away from the sides of the pan cleanly.
Using low heat to avoid burning actually prolongs the process unnecessarily. Medium heat with constant stirring is better—it cooks faster and develops better flavor.
Substituting regular sweet potato or taro changes the entire dish. While you can make similar desserts with those ingredients, they’re not ube halaya and taste completely different.
Not using a heavy-bottomed pot increases the risk of burning. A thin pot distributes heat unevenly and makes scorching much more likely despite your stirring efforts.
Finally, stopping the cooking too early because your arm is tired means the halaya won’t have the right consistency. Push through—the last 10 minutes make all the difference.
How to Know When Your Halaya Is Done
The ube halaya is ready when the mixture is very thick and pulls away cleanly from the sides and bottom of the pan as you stir. You should see the bottom of the pan briefly with each stir.
The texture should be similar to thick mashed potatoes or very soft fudge—it should hold its shape when you scoop it but still be smooth and spreadable.
When you drag your spoon across the bottom of the pan, the trail should stay visible for a few seconds before the mixture slowly flows back together. If it immediately runs back, it needs more cooking.
This ube halaya recipe typically requires 45-60 minutes of constant stirring over medium heat. The exact time depends on your pot, heat level, and how thick you want the final product.
The color will have deepened during cooking, becoming more vibrant and saturated. The mixture will also develop a slight sheen from the butter.
If you place a small amount on a plate and it holds its shape without spreading or running, it’s ready. This is the best test for proper consistency.
The mixture will have reduced significantly in volume and will feel heavy when you stir it. It should coat your spoon thickly rather than dripping off.
What to Serve With Ube Halaya
This ube halaya recipe creates a versatile dessert that’s delicious spread on warm toast or pandesal (Filipino bread rolls) for breakfast. The sweet, creamy spread transforms simple bread into something special.
Use it as a topping for vanilla ice cream or frozen yogurt. The contrast between cold ice cream and rich, room-temperature halaya is absolutely wonderful.
Ube halaya is the traditional filling for Filipino pastries like hopia and is perfect spread between layers of cake or rolled into sweet bread.
Serve it by the spoonful as a dessert with a cup of hot coffee or tea. Many Filipinos enjoy it this way, savoring small bites alongside their beverage.
It makes an excellent addition to a cheese board, particularly with mild, creamy cheeses. The sweet halaya contrasts beautifully with savory cheese.
Spread it on waffles or pancakes for a unique breakfast twist that’s much more interesting than regular syrup.
Fresh coconut shavings sprinkled on top add traditional Filipino flavor and pleasant textural contrast to the smooth, creamy halaya.
Storage Tips
Store your ube halaya in clean, airtight glass jars in the refrigerator for up to 2 weeks. Make sure the jars are completely dry before filling to prevent spoilage.
Press plastic wrap directly onto the surface of the halaya before sealing the jar. This prevents a skin from forming and keeps the top layer fresh.
For longer storage, freeze the halaya in freezer-safe containers for up to 3 months. It thaws beautifully overnight in the refrigerator.
This ube halaya recipe makes a large batch that’s perfect for sharing. Consider jarring it in smaller portions to give as gifts—everyone appreciates homemade Filipino treats.
Always use clean utensils when scooping halaya from the jar. Introducing contaminants shortens its shelf life considerably.
If you notice any mold or off smells, discard the entire jar. The high dairy content means it can spoil if not stored properly.
Frozen halaya may be slightly less smooth than fresh after thawing, but the flavor remains excellent. Stir it well after thawing to restore consistency.
Estimated Nutrition (Per 2-Tablespoon Serving)
Calories: 145 | Total Fat: 5g | Saturated Fat: 3g | Cholesterol: 15mg | Sodium: 35mg | Total Carbohydrates: 24g | Dietary Fiber: 1g | Sugars: 20g | Protein: 2g
Note: Nutritional information is approximate and varies based on specific ingredients used.
Recipe Overview
Prep Time: 15 minutes
Cook Time: 60 minutes
Total Time: 1 hour 20 minutes (including cooling)
Difficulty: Medium
Servings: About 24 servings (3 cups)
Ingredients
- 2 pounds fresh purple yam (ube), or 2 cups frozen grated ube, thawed
- 1 (14-ounce) can sweetened condensed milk
- 1 (12-ounce) can evaporated milk
- ½ cup unsalted butter
- ½ cup granulated sugar
- 1 teaspoon vanilla extract
- ¼ teaspoon salt
Step-by-Step Instructions
Step 1: If using fresh ube, peel the purple yams and cut them into chunks. Place in a large pot, cover with water, and boil for 25-30 minutes until completely tender when pierced with a fork.
Step 2: Drain the cooked ube and let it cool slightly. Transfer to a food processor or blender and puree until completely smooth with no lumps. You should have about 2 cups of smooth puree.
Step 3: In a large, heavy-bottomed pot or wok, combine the ube puree, condensed milk, evaporated milk, butter, and sugar. Stir everything together over medium heat.
Step 4: Cook the mixture, stirring constantly with a wooden spoon or heat-resistant spatula. The constant stirring is crucial to prevent burning and sticking.
Step 5: Continue stirring for 45-60 minutes. Your arm will get tired, but don’t stop. The mixture will gradually thicken and darken in color as it cooks.
Step 6: As the mixture thickens, it will start to pull away from the sides of the pan. Keep stirring, scraping the bottom and sides to prevent any burning.
Step 7: The halaya is ready when it’s very thick and you can see the bottom of the pan when you drag your spoon through it. The trail should stay visible for a few seconds.
Step 8: Add the vanilla extract and salt, stirring them in thoroughly. Cook for 2 more minutes while stirring constantly.
Step 9: Remove from heat. The halaya will continue to thicken slightly as it cools. Stir for another minute or two off the heat to help it cool down.
Step 10: While still warm, transfer the halaya to clean jars or a serving dish. Use a spatula to scrape every bit from the pot—it’s too delicious to waste.
Step 11: Smooth the top with a spatula or the back of a spoon. If desired, dot the top with additional butter that will melt into the surface for a traditional finish.
Step 12: Let cool to room temperature, then cover and refrigerate for at least 2 hours before serving. The halaya will firm up beautifully as it chills.
Enjoy this stunning purple Filipino delicacy that’s worth every minute of stirring!




