Soups & Stews
This batchoy soup recipe brings the soul-warming flavors of Filipino comfort food to your kitchen, where tender pork, silky noodles, and perfectly poached eggs create a symphony of textures. The secret lies in the slow-simmered broth, infused with garlic, ginger, and pork bones, which transforms tough cuts into melt-in-your-mouth pieces.
I’ve perfected this version to deliver that signature crispy pork and delicate egg yolks that break into the broth at the first sip—every spoonful is a taste of home.
The recipe begins with a rich, aromatic broth that forms the heart of batchoy, where pork ribs and bones release their collagen for a velvety consistency. While the broth simmers, the pork is seared until crispy, then finished in the broth to absorb its deep, savory flavors.
Fresh egg noodles are boiled just shy of al dente, ensuring they hold their shape when submerged in the hot broth. The final touch? Toppings like garlic, chives, and century egg add layers of texture and umami that elevate this dish from simple to extraordinary.
What makes this batchoy recipe special is its balance—crispy pork that contrasts with the silky noodles and tender eggs, all swimming in a broth that’s rich yet not overpowering.
The dish is hearty enough to satisfy a crowd but simple enough to prepare on a weeknight, making it a go-to for family meals or cozy gatherings. The aroma alone will have everyone gathering around the table, eager for their first taste of this Filipino classic.
Serve it with extra chili oil for heat lovers, or a side of steamed rice to soak up every last drop of that flavorful broth. This is more than a soup—it’s a celebration of Filipino flavors, where every ingredient plays a part in creating comfort in a bowl.
Let’s get cooking!
Ingredients for batchoy soup
Pork bones and ribs build the soulful broth, while eggs and noodles create the signature textures of this Filipino classic.
| Ingredient | Amount | Notes |
|---|---|---|
| Pork Ribs 🥓 | 2 ½ lb | Bone-in, cut into 2-inch pieces |
| Pork Bones 🦴 | 1 ½ lb | Marrow-rich for broth richness |
| Fresh Egg Noodles 🍜 | 1 lb | Batchoy noodles preferred |
| Large Eggs 🥚 | 6 whole | Fresh, room temperature |
| Garlic Cloves 🧄 | 10 cloves | Minced, for broth and topping |
| Fresh Ginger 🌿 | 2 tbsp | Grated, peeled (about 1 oz) |
| Green Onions 🧅 | ½ cup | Sliced, for garnish |
| Century Eggs 🥚 | 4 whole | Sliced, optional for depth |
| Chili Oil 🌶️ | ¼ cup | For serving, spicy kick |
| Soy Sauce 🍶 | ½ cup | Dark soy for color |
| Sesame Oil 🌿 | 1 tbsp | Toasted, for aroma |
| Black Peppercorns 🌶️ | 1 tsp | Crushed, for depth |
| White Peppercorns 🌶️ | 1 tsp | Crushed, for contrast |
| Salt 🧂 | 2 tsp | Kosher, adjust to taste |
The pork bones and ribs are the heart of this dish—marrow-rich bones create that velvety broth that defines batchoy. Look for pork ribs with good fat cap at your local Asian market or butcher shop; the fat renders beautifully during the long simmer. Fresh egg noodles are non-negotiable here—batchoy noodles if you can find them, but fresh egg noodles from a reputable brand like King Noodle work in a pinch. The century eggs add that signature umami depth, but if you can't find them, extra soy sauce will bridge the gap. For the garlic, peel and mince it all at once—it keeps better when stored in the fridge for a few days.
No century eggs? Increase soy sauce to 0.75 cup and add a splash of fish sauce for umami. The chili oil can be swapped for sriracha or gochujang if you prefer a different heat profile. Fresh ginger is essential—dried won't cut it—but if you're out, galangal at half the amount works surprisingly well. For the pork, pork shoulder can replace ribs if needed, but increase cooking time by 20 minutes. The eggs should be room temperature when poached—cold eggs tighten up and won't break properly in the broth.
Broth keeps for 3 days in the fridge, but it's even better the next day as flavors meld. The pork can be pre-cooked and stored separately for 2 days. Noodles should be cooked just before serving—they soften too much if left in the broth. For meal prep, portion the broth into containers and store it with a layer of fat on top to preserve freshness. The chili oil and century egg slices can be added fresh when serving. This dish tastes even better reheated—low heat only to avoid breaking the eggs.
Why You'll Love This Recipe
- No Chopping Chaos: I swear by this recipe because it’s one of those rare dishes where the prep is almost nonexistent. You’re basically tossing pork ribs and bones into a pot, letting the bones do all the heavy lifting while you mince garlic and crack eggs—no julienne skills required.
- Garlic Bomb Flavor: Between us, nothing beats the punch of fresh garlic simmered into pork broth until it’s sweet and mellow, then topped with runny eggs and chewy noodles. That first sip? Pure, salty, umami heaven—like a hug in soup form.
- Leftovers That Don’t Suck: Batchoy actually tastes better the next day—honestly. The broth deepens, the noodles soften just right, and you can reheat it in minutes. I make a double batch on Sundays and eat it for lunch all week.
- Budget-Buster Crowd-Pleaser: Pork bones and ribs stretch this soup into a feast for half the cost of takeout. Feed four people for the price of two meals, and everyone leaves happy—even the picky eaters (yes, my teenage nephew included).
Step-by-step instructions for batchoy soup
Here's how to create a rich, egg-drowned broth with perfectly tender pork and silky noodles.
Prepare the Pork and Build Deep Flavor
In a large stockpot, combine the 2.5 lb pork ribs and 1.5 lb pork bones. Add 10 cloves minced garlic, 2 tbsp grated ginger, 1 tsp crushed black peppercorns, 1 tsp crushed white peppercorns, and 2 tsp salt. Cover with 12 cups cold water and bring to a boil over high heat. Once boiling, reduce to a simmer and skim off any foam that rises to the surface for the first 15 minutes. This ensures a clean, clear broth.
Simmer uncovered for 2 hours until the pork is fork-tender and the broth reduces slightly, intensifying its flavor. The pork should release easily from the bones, and the broth should have a deep amber color. If the broth isn't rich enough after 2 hours, continue simmering for another 30 minutes—patience here makes all the difference in the final result.
Strain and Season the Broth
Remove the pork from the broth and set aside. Strain the broth through a fine-mesh sieve into a clean pot, pressing on the solids to extract as much flavor as possible. Discard the bones. Return the broth to the pot and stir in the 0.5 cup soy sauce and 1 tbsp toasted sesame oil. Taste and adjust seasoning with additional salt if needed—this broth should be deeply savory but not salty.
Bring the broth back to a gentle simmer over medium heat. This is where the magic happens: the soy sauce will deepen in color, and the sesame oil will infuse the broth with nutty aroma. Keep the broth at a low simmer—never a rolling boil—so it doesn't become cloudy or lose its delicate flavors.
Cook the Noodles and Prepare the Eggs
While the broth simmers, bring a separate pot of salted water to a boil. Add the 1 lb fresh egg noodles and cook for 2-3 minutes until just tender but still slightly firm. Drain and set aside, reserving 1 cup of pasta water. The noodles should be al dente—they'll finish cooking in the hot broth.
In a bowl, whisk the 6 whole large eggs until well combined. This is the heart of batchoy: the eggs will poach directly in the broth, creating a silky, custard-like texture. Keep the eggs at room temperature for best results—they'll cook more evenly and create a smoother texture.
Assemble and Finish the Soup
Return the cooked pork to the pot of simmering broth. Add the 1 cup reserved pasta water to the broth to help the noodles cook gently. Working quickly, pour the whisked eggs into the pot in a slow, steady stream. Stir gently but constantly for 1-2 minutes until the eggs form soft, silky ribbons—this is the "egg-drowning" technique that gives batchoy its signature texture.
Add the cooked noodles and stir to combine. The noodles should soften slightly in the hot broth. If the soup seems too thick, add a splash more of the reserved pasta water to loosen it. Taste and adjust seasoning one last time—this is your chance to balance the flavors before serving.
Serve with Toppings and Garnishes
Ladle the soup into bowls, dividing the pork evenly among servings. Top each serving with 4 slices of century eggs (if using), 0.5 cup sliced green onions, and a drizzle of 0.25 cup chili oil. The century eggs add a unique, briny depth, while the chili oil brings a spicy kick that cuts through the richness of the broth.
Serve immediately, encouraging diners to mix everything together before eating. The contrast of the crispy pork, silky egg ribbons, and tender noodles creates a truly comforting experience. Each bite should deliver layers of flavor—savory broth, tender pork, creamy eggs, and a hint of spice from the chili oil.
Pro Tips For Making Batchoy Soup
- Simmer Pork Bones First: Start with just the pork bones in cold water—no ribs or other ingredients—then bring to a rolling boil. This pulls out the bitter marrow flavors early, so they don’t overpower the broth later. I used to add everything at once, and the soup always tasted muddy.
- Blanch Eggs in Hot Broth: Crack the eggs directly into the simmering batchoy broth (not a bowl) and let them poach gently for 2–3 minutes. The heat from the soup cooks them perfectly without scrambling, and they absorb the rich pork flavors. Skipping this step means watery, flavorless eggs.
- Crush Garlic, Don’t Chop: Use a flat side of your knife to smash the garlic cloves into a paste before frying. This releases more aroma and flavor into the oil, giving the batchoy that deep, garlicky punch. I tried mincing once—big mistake.
- Add Noodles Last, Stir Fast: Toss the fresh egg noodles into the hot broth and immediately stir with chopsticks to prevent clumping. The noodles cook in under a minute, so timing is everything. Overcrowding the pot makes them mushy—trust me, I’ve done it.
Creative variations of this batchoy soup
Filipino Home-Style
For an authentic taste of home, skip the century eggs and replace them with 1 cup sliced hard-boiled eggs and 2 tbsp fish sauce stirred into the broth. Add 1 tbsp toasted garlic oil (sauté 10 garlic cloves in ¼ cup neutral oil until golden) to the finished soup.
This version is what I grew up with in Cebu—simple but packed with umami. 🌶️
Spicy Sichuan Twist
Transform batchoy into a fiery Sichuan fusion by adding 1 tbsp doubanjiang (chili bean paste) and 1 tsp Sichuan peppercorns to the broth. Top with 2 tbsp chili crisp and 1 tbsp chopped douchi (fermented black beans).
The numbing-spicy kick from Sichuan peppercorns elevates the dish to new heights. Serve with extra chili oil (Sichuan-style) for heat lovers.
Seafood Batchoy
Swap pork for 1 lb shrimp and 1 lb squid (cleaned and sliced). Add 1 tbsp shrimp paste (kapi) to the broth for depth, and finish with 2 tbsp chopped cilantro and lime wedges.
This version is lighter but still rich, perfect for seafood enthusiasts. For extra umami, add ½ cup fish stock to the broth when simmering.
Vegetarian Adaptation
Create a plant-based version using 1 lb shiitake mushrooms (sliced) and 1 lb king oyster mushrooms (whole) instead of pork. Boost umami with 2 tbsp soy sauce and 1 tbsp mushroom powder.
Top with ¼ cup fried shallots and 1 tbsp black garlic paste for a meaty texture. Serve with extra chili oil and green onions for brightness. 💫
Slow-Cooker Shortcut
Simplify with a 6-quart slow cooker—combine all broth ingredients and cook on low for 8 hours. For the pork, sear 2.5 lb pork ribs in a skillet first, then add to the slow cooker.
The eggs and noodles cook as usual, but the broth will be even more flavorful from the extended simmer. Perfect for busy weeknights!
Century Egg Substitutes
Can’t find century eggs? Try these alternatives: 4 slices salted duck egg (poached) for richness, or ¼ cup pickled mustard greens for tangy crunch. For a cheesy twist, add 4 oz sliced mozzarella (freshly grated)—it melts beautifully into the hot broth.
Each option adds a unique texture and depth to the dish.
Nutrition facts
Frequently asked questions
What makes batchoy different from other Filipino noodle soups like sinigang or misua?
Batchoy stands out with its egg-drowned technique—whisked eggs poached directly in the hot broth create silky ribbons that break into the soup. Unlike sinigang (tangy tomato-based) or misua (wheat noodles with pork), batchoy uses fresh egg noodles and a rich, savory broth made from pork bones and ribs. The crispy pork pieces and century egg toppings also give it a unique texture profile.
Can I use regular pasta instead of batchoy noodles?
While you can substitute fresh egg noodles (like lo mein noodles), they won't have the same delicate texture. For authenticity, look for batchoy noodles (available at Asian markets) or king noodles. If using regular pasta, boil it 1 minute less than package instructions—it'll finish cooking in the hot broth. The noodles should be al dente to avoid turning mushy.
How do I get the pork extra crispy like in restaurant batchoy?
Restaurant-style crispiness comes from double-searing. First, sear pork pieces in a hot skillet until browned, then transfer to a cold plate to set the crust. Add them to the simmering broth, then remove and sear again in the skillet before returning to the soup. The key is high heat for 1-2 minutes per side—this creates a golden, crackling exterior while keeping the inside tender.
What's the best way to store leftovers?
Store the broth separately from the pork and noodles in airtight containers. The broth keeps for 3 days in the fridge (or 3 months frozen), while pork and noodles should be refrigerated for 2 days max. Reheat broth first, then add noodles and pork separately to avoid sogginess. For eggs, store them separately and poach fresh when reheating. The broth actually tastes better the next day!
Can I make batchoy without century eggs?
Skip them or substitute with 4 slices salted duck egg (poached) for richness, or ¼ cup pickled mustard greens for tangy crunch. For umami depth, add 2 tbsp fish sauce to the broth or 1 tbsp toasted garlic oil when serving. The dish will still be delicious—century eggs are just a signature topping.
