Main Courses
This creamy caldereta pork ribs recipe panlasang Pinoy brings the soul of Filipino comfort food to your table—rich, velvety coconut curry that melts into tender meat. 💛 I first tasted it in Manila at my abuela's kitchen, where the slow-braised ribs fell off the bone, swimming in a sauce that balanced sweet, tangy, and smoky notes.
That memory still makes my mouth water, and now I'm sharing the exact technique that delivers that restaurant-quality magic at home.
The secret lies in the sauce: a perfect marriage of coconut milk, tomatoes, and peanuts that simmers for hours to develop deep, complex flavors. Unlike quick versions, this recipe takes time—3-4 hours—because that's what transforms tough ribs into melt-in-your-mouth perfection.
The sauce starts with a simple tomato-peanut base, then builds layers of richness with coconut milk and just a touch of vinegar for brightness.
What you'll end up with is a dish that's equal parts comforting and impressive—golden, tender ribs nestled in a glossy, creamy sauce that clings to every bite.
The aroma alone will have your whole house gathering around the table, and the first taste will explain why this is a Sunday dinner staple in Filipino homes. It's the kind of meal that tastes like love, handed down through generations.
Serve it with steamed rice to soak up every last drop of that luscious sauce, or pair it with garlic fried rice for extra texture. The leftovers?
Even better the next day as the flavors meld even deeper. Let's get cooking—your taste buds are about to go on a trip to the Philippines.
Ingredients for caldereta pork ribs recipe panlasang pinoy
Sixteen ingredients for a dish that tastes like home—creamy, smoky, and full of Filipino soul.
| Ingredient | Amount | Notes |
|---|---|---|
| Pork Ribs 🍖 | 3 lb | Baby back or spare ribs, cut into 2-inch pieces |
| Coconut Milk 🥥 | 2 cans | Full-fat, 13.5 oz each (Thai Kitchen brand preferred) |
| Tomatoes 🍅 | 2 whole | Medium, ripe, chopped (San Marzano if available) |
| Peanuts 🥜 | ½ cup | Raw, unsalted, lightly toasted (Trader Joe's brand) |
| Onion 🧅 | 1 whole | Yellow, roughly chopped (1 cup yield) |
| Garlic Cloves 🧄 | 6 cloves | Fresh, minced (or 1 tsp garlic powder in pinch) |
| Canned Tomatoes 🍅 | 1 can | 14.5 oz, crushed (Muñoz brand if possible) |
| White Vinegar 💧 | 2 tbsp | For tangy brightness (apple cider works too) |
| Sugar 🍯 | 2 tbsp | White or brown (balances acidity) |
| Bay Leaves 🍃 | 2 whole | Dried, for aromatic depth |
| Black Peppercorns 🌶️ | 1 tsp | Freshly cracked (or ground) |
| Salt 🧂 | 1 ½ tsp | Diamond Crystal kosher salt (adjust to taste) |
| Olive Oil 🫒 | ¼ cup | Extra-virgin, for searing ribs |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for garnish (optional) |
The ribs are the heart of this dish, so don't skimp on quality. Trader Joe's or Costco usually have the best deals on baby back ribs—look for good marbling and avoid any with a sour smell. Spare ribs work too, but baby backs stay more tender. If you're using frozen ribs, thaw them overnight in the fridge—never under running water, or they'll start cooking. The coconut milk is non-negotiable—Thai Kitchen brand has the perfect balance of creaminess without being too watery. For the tomatoes, San Marzano makes all the difference with their sweet, meaty texture, but regular vine-ripened works fine too.
No fresh garlic? Garlic powder at half the amount gets you close, but fresh is ideal. Running out of peanuts? Cashews or almonds toasted work in a pinch, though they'll change the texture slightly. The vinegar is key for that tangy kick—apple cider vinegar adds a fruity note if you're feeling fancy. For the sugar, white or brown both work, but brown adds a subtle caramel depth. If you're making this ahead, the sauce actually improves overnight, so make extra—it's perfect for rice bowls the next day. The bay leaves add incredible aroma, so don't skip them, but remove them before serving.
This sauce gets better with time, so make it a day ahead if possible. Store it in an airtight container in the fridge for up to 5 days, or freeze portions for 3 months. The ribs reheat beautifully—just warm the sauce gently and add the ribs back in. For serving, I always garnish with fresh cilantro and a drizzle of extra coconut milk. The leftovers? Even better the next day as the flavors meld into pure comfort food magic. If you're serving a crowd, double the sauce—it disappears fast!
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe because it’s literally one pot—no chopping boards, no extra pans, just ribs, coconut milk, and a handful of tomatoes simmering together. The onions caramelize right in the sauce while you stir, and by the time the peanuts toast at the end, the whole kitchen smells like a Filipino comfort food dream.
- Creamy Crunch Perfection: That balance of rich coconut milk and crunchy peanuts? It’s what makes this dish ridiculously good. The pork ribs fall off the bone, but the sauce—thick, slightly tangy from the tomatoes—clings to every bite like it’s hugging you. (Yes, even on a Tuesday night.)
- Leftover Goldmine: Between us, this recipe begs to be made in bulk. The sauce thickens beautifully the next day, and reheated ribs? Even better—more tender, flavors deeper. I freeze portions too; just thaw and simmer, and it’s like making fresh again. My lazy Sundays thank me every time.
- Budget-Friendly Feast: Pork ribs and coconut milk might sound fancy, but they stretch far—this feeds four for under $15, easy. The onions and tomatoes bulk it up, and the peanuts add that satisfying crunch without breaking the bank. Honestly, it’s my go-to when I need a hearty meal that won’t drain my wallet.
Step-by-step instructions for creamy coconut curry pork ribs
Here's how to create that velvety, coconut-rich caldereta that's pure comfort in every bite.
🔥 Step 1: Sear the Ribs Until Deeply Browned
Heat the 0.25 cup olive oil in a heavy Dutch oven over medium-high heat until shimmering. Pat the 3 lb pork ribs completely dry with paper towels—this ensures maximum crispiness. Working in batches if needed, sear the ribs for 4-5 minutes per side until they develop a deep golden-brown crust.
Don't crowd the pan or you'll steam the ribs instead of searing them. You're looking for color that's almost mahogany—this caramelized exterior will form the flavor base for your creamy sauce. Once browned, transfer the ribs to a plate and set aside.
🍳 Step 2: Build the Flavor Base with Aromatics
In the same Dutch oven, add the 1 whole onion and 6 cloves garlic cloves, cooking for 3-4 minutes until softened and fragrant. Add the 2 whole tomatoes and 1 can canned tomatoes, stirring to combine with the rendered pork juices. Cook for 5 minutes until the tomatoes begin to break down and release their juices.
Here's where the magic happens: stir in the 2 tbsp white vinegar and 2 tbsp sugar. The vinegar brightens while the sugar balances the acidity—this creates the perfect foundation for your creamy sauce. Add the 2 whole bay leaves and 1 tsp black peppercorns (cracked if using whole), letting them infuse for 1 minute before adding the coconut milk.
🥘 Step 3: Simmer the Ribs in Coconut Milk
Pour in the 2 cans coconut milk, stirring to combine with the tomato mixture. Return the ribs to the pot, bone-side up, and add 1.5 tsp salt. Bring to a gentle simmer over medium-low heat, then reduce to the lowest heat setting that maintains a bare simmer. Cover partially and cook for 1 hour 15 minutes, turning the ribs occasionally.
This slow cook is crucial—it allows the ribs to become fork-tender while the coconut milk transforms into a luscious, velvety sauce. You'll know it's ready when the ribs slide off the bone easily and the sauce has thickened noticeably. Real talk: don't rush this step or you'll end up with tough meat and thin sauce.
🔪 Step 4: Finish with Toasted Peanuts and Fresh Herbs
Remove the ribs from the pot and set aside. In a dry skillet over medium heat, toast the 0.5 cup peanuts for 2-3 minutes until golden and fragrant—this adds that signature crunch to cut through the creaminess. Transfer the peanuts to a plate to cool slightly.
Strain the cooking liquid through a fine-mesh sieve to remove bay leaves and peppercorns, then return it to the pot. Stir in the toasted peanuts and let the mixture simmer for 2-3 minutes to incorporate their nutty flavor. Remove from heat and stir in the 0.25 cup fresh cilantro.
🍽️ Step 5: Serve with Perfectly Balanced Sauce
Return the ribs to the pot and spoon the creamy sauce generously over them. Let sit for 5 minutes to allow the ribs to absorb some of that rich sauce. Serve immediately with steamed jasmine rice—each bite should deliver tender pork, velvety coconut sauce, and crunchy peanuts in perfect harmony.
Pro tip: If the sauce seems too thick after resting, stir in 1-2 tablespoons of water to loosen it slightly. The ribs should be moist but not swimming in sauce—you want every forkful to be perfectly balanced. Garnish with extra cilantro if you're feeling fancy!
Pro Tips For Making Caldereta Pork Ribs Recipe Panlasang Pinoy
- Brown the Ribs First: Skip the direct coconut milk dump—sear the ribs in a dry pan until deeply caramelized. That Maillard reaction gives the stew its rich, savory depth before the creamy coconut milk even hits the pot. (Yes, it takes 10 extra minutes, but the flavor difference is night and day.)
- Blend Your Tomatoes Rough: No food processor? Crush tomatoes by hand with a pinch of salt and let them sit 10 minutes before adding. The salt breaks down the texture, and the raw, chunky pulp adds a brighter acidity than store-bought sauce. (I used to strain them—big mistake.)
- Simmer Slow and Low: Caldereta needs time to meld, not boil. After adding coconut milk, reduce heat to a gentle simmer (tiny bubbles, occasional skimming). Rushing this step makes the peanuts turn greasy and the sauce separate. Patience here guarantees a velvety, cohesive stew.
- Toast Peanuts Separately: Dry-toast raw peanuts in a separate pan until golden and fragrant before adding them to the stew. This step prevents them from soaking up all the coconut milk and turning bland. (Pro move: crush half after toasting for extra crunch.)
Serving suggestions for this dish
Rice Pairing Perfection
Steamed jasmine rice is the classic partner for caldereta, soaking up every drop of that rich coconut sauce. I always cook up a big batch of long-grain rice—about 2 cups uncooked per pound of ribs—because the sauce disappears fast.
For extra fluffiness, rinse the rice 3 times before cooking, and use a 1:1.5 rice-to-water ratio with a pinch of salt. 💛
For a modern twist, try garlic fried rice with day-old rice stir-fried in 1 tbsp butter and 3 minced garlic cloves until golden. The nutty aroma complements the creamy sauce beautifully—this was Nana Mae's secret for using leftovers!
Vegetable Sides
Light, fresh vegetables balance the richness of the ribs. A simple steamed green bean salad with 1 tbsp sesame oil and 1 tsp soy sauce adds brightness.
I also love sautéed bok choy with garlic and a splash of coconut milk—just 3 minutes in a hot pan with 1 tsp olive oil until wilted. 🥗
For heartier sides, roasted eggplant slices at 400°F for 20 minutes with 1 tsp smoked paprika and ½ tsp salt adds smoky depth. The caramelized edges contrast perfectly with the creamy sauce.
Beverage Pairings
A crisp Filipino San Miguel beer cuts through the richness, while mango soda adds a tropical sweetness that mirrors the sauce's flavors. For non-alcoholic options, hibiscus tea (tsamba) with honey enhances the dish's natural sweetness. 🍺
If you're feeling fancy, a glass of Pinot Noir from California balances the coconut's creaminess with its earthy notes. I always keep a bottle chilled in the fridge for special occasions—it's become a family tradition!
Garnish Game-Changers
Fresh cilantro leaves scattered on top add a vibrant pop of color and freshness. For extra crunch, sprinkle toasted sesame seeds—just 1 tsp in a dry pan over medium heat for 1 minute. The nutty aroma elevates every bite. 🌿
Don't overlook the power of a lime wedge on the side. A quick squeeze brightens the dish and cleanses the palate between bites. I also keep hot chili oil (like Lao Gan Ma) nearby for guests who want heat.
Make-Ahead Magic
This dish tastes even better the next day, so I always make extra. Store the ribs and sauce separately in airtight containers for up to 5 days in the fridge. Reheat gently on the stove—never microwave, or the sauce will split. 🔥
For meal prep, portion the sauce into ziplock bags and freeze for up to 3 months. Thaw overnight in the fridge, then reheat with the ribs. The leftovers make amazing rice bowl fillings or tacos with corn tortillas!
Nutrition facts
Frequently asked questions about Filipino caldereta pork ribs
Can I use spare ribs instead of baby back ribs for this recipe?
Yes, you can absolutely use spare ribs! They're more flavorful and slightly meatier, though they may take 15-20 minutes longer to become tender. The key is patience—keep them covered and simmering gently. Spare ribs have more connective tissue, which breaks down beautifully in the creamy coconut sauce. Just be sure to trim excess fat to keep the sauce rich rather than greasy.
How do I know when the ribs are fully cooked and tender?
Ribs are done when they slide off the bone with minimal effort—no forking required! For baby back ribs, they should be fork-tender after 1 hour 15 minutes of simmering. Spare ribs may need 1 hour 45 minutes. The meat should pull away cleanly from the bone, and the sauce should coat the back of a spoon thickly. If you're unsure, cut into one rib—juices should run clear, not pink.
Can I make this recipe without coconut milk? What would substitute?
While coconut milk is traditional, you can substitute with 2 cups heavy cream or 1 cup Greek yogurt + 1 cup whole milk for a similar richness. For a dairy-free option, blend 1 cup cashews + 1 cup water until smooth. Just note the texture will be slightly lighter, and the flavor will lack the tropical depth. The sauce will still be delicious, but the authentic Filipino taste will be altered.
Why does my sauce look too thin or watery after cooking?
This usually happens if you used too much coconut milk or didn't reduce the sauce enough. To fix it, remove the ribs and simmer the sauce uncovered over medium heat for 5-10 minutes until it thickens. If it's still too thin, mix 1 tbsp cornstarch with 2 tbsp water, stir into the sauce, and simmer for 2 more minutes. The ribs will absorb some sauce while resting, so don't worry about it being perfect—just balanced.
Can I prepare the sauce ahead of time without the ribs?
The sauce actually tastes better when made a day ahead. Simmer all ingredients except the ribs and peanuts, then cool completely and refrigerate in an airtight container for up to 5 days. When ready to serve, reheat gently, add the ribs, and toast fresh peanuts. The flavors meld beautifully overnight, and reheating preserves that creamy texture. It's perfect for meal prep—just store ribs separately and combine when ready to eat!
