Soups & Stews
Batchoy soup recipe delivers the ultimate Filipino breakfast experience—crispy pork slices floating over a silky egg broth, topped with chewy noodles and fresh vegetables. This fast one-pot meal captures the soul of Filipino comfort food with its perfect balance of textures and flavors. The secret lies in the broth, where pork bones and meat simmer for hours to create a rich, aromatic base that makes every spoonful irresistible.
The dish starts with tender pork slices that crisp up beautifully when fried, adding a satisfying crunch to the soft, velvety broth. Fresh batchoy noodles—thin, chewy, and slightly translucent—absorb the flavors while maintaining their signature texture.
Garnished with crisp vegetables like cabbage and scallions, this soup is a celebration of Filipino home cooking that’s both hearty and refreshing.
What makes batchoy truly special is its simplicity combined with depth of flavor. The broth’s savory richness comes from slow-cooked pork, while the fried pork adds a smoky, caramelized edge. Each bite offers a harmonious blend of textures—crispy, chewy, and silky—that keeps you coming back for more.
Perfect for breakfast or a cozy dinner, this recipe brings a taste of the Philippines straight to your kitchen.
For those looking to modernize the classic, consider adding a splash of soy sauce for extra umami or swapping pork for chicken. The beauty of batchoy lies in its adaptability—whether you stick to tradition or experiment with variations, the result is always comforting and delicious. Let’s get cooking!
Ingredients for batchoy soup
Pork bones, chewy noodles, and crispy pork slices—this Filipino breakfast delivers all the textures you crave.
| Ingredient | Amount | Notes |
|---|---|---|
| Pork Belly Slices 🥓 | 1 ½ lb | Thinly sliced, crispy-fried |
| Pork Bones 🦴 | 2 lb | For rich broth base |
| Batchoy Noodles 🍜 | 8 oz | Fresh, chewy variety |
| Eggs 🥚 | 4 whole | Fresh, poached in broth |
| Green Onions 🧅 | ½ cup | Sliced, for garnish |
| Fresh Ginger 🌿 | 2 tbsp | Grated, aromatic base |
| Garlic Cloves 🧄 | 6 cloves | Minced, aromatic base |
| Cabbage 🥬 | 4 cups | Shredded, crisp texture |
| Soy Sauce 🍶 | 2 tbsp | For umami depth |
| Fish Sauce 🐟 | 1 tbsp | Authentic Filipino flavor |
| Vegetable Oil 🫒 | ½ cup | For frying pork |
| Salt 🧂 | 1 tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Chicken Broth 💧 | 4 cups | Homemade or store-bought |
The pork bones are your flavor foundation—look for marrow-rich ones at the butcher counter or Asian markets. Costco or Filipino grocery stores often carry them pre-packaged. Fresh ginger and garlic? Peel the ginger first—it’s easier to grate when the skin’s off. The batchoy noodles should be firm to the touch—avoid the mushy kind. For the pork belly, ask your butcher to slice it paper-thin—it’ll crisp up beautifully when fried. If you can’t find pork belly, pork shoulder works too, but slice it extra thin.
No pork belly? Chicken thighs or shrimp make great swaps—they’ll still give you that satisfying crunch. Short on fish sauce? Soy sauce plus a pinch of sugar mimics the umami. The cabbage can be green or red—whatever’s on sale. For the broth, homemade chicken broth makes it richer, but Swanson or Knorr work in a pinch. Fresh batchoy noodles? Asian markets usually carry them frozen—thaw overnight in the fridge. No time? Spaghetti or ramen noodles stretch you over, but they won’t have that signature chew.
This soup tastes even better the next day—make a double batch for leftovers. Store the broth separately if you want to reheat it crispy. The fried pork stays crunchy for 3 days in the fridge if kept in a sealed container. Freeze the broth for up to 3 months—just thaw overnight before reheating. Pro tip: Keep the noodles separate until serving so they don’t get soggy. Garnish with extra green onions right before eating for that restaurant-fresh crunch.
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 the pork bones simmering with pork belly until the broth turns rich and golden. The noodles and eggs slide right in at the end, so you’re not stuck scrubbing a million dishes.
- Rich Without Effort: That deep, savory broth? It’s all thanks to the pork bones and belly—no fancy stock cubes or long marinades. The pork belly adds this unreal melt-in-your-mouth texture, and the eggs? Silky, runny yolks that turn the whole bowl into a creamy, satisfying hug.
- Lunchbox Hero: Between us, this is my go-to for meal prep. The noodles hold up perfectly in the fridge, and I just reheat the broth with a splash of water—boom, instant lunch. My kids bring leftovers to school, and honestly? They’d rather eat this than anything else.
- Budget-Friendly Feast: Pork bones and belly stretch forever, so you’re feeding a crowd without breaking the bank. I’ve made this for 10 people using the same ingredients—just double the portions. Plus, the leftovers? Even better the next day. (Yes, even on a Tuesday night.)
Step-by-step instructions for batchoy soup
This Filipino breakfast classic comes together faster than you'd think—crispy pork belly meets silky egg broth in under an hour.
Build the Rich Pork Broth
Start by rinsing the 2 lb pork bones under cold water and placing them in a large pot. Add the 4 cups chicken broth and bring to a boil over high heat. Once boiling, reduce to a simmer and add the 2 tbsp fresh ginger and 6 cloves garlic cloves. Let this cook uncovered for 30 minutes—you'll see the broth turn cloudy as impurities rise to the surface.
Skim off any foam that forms with a ladle, then add the 2 tbsp soy sauce and 1 tbsp fish sauce. Simmer for another 20 minutes until the broth develops a deep, aromatic flavor. The pork bones should be falling apart slightly at this point. Strain the broth through a fine-mesh sieve into a clean pot and keep it warm over low heat. This rich base is the soul of your batchoy.
Fry the Pork Belly to Crispy Perfection
Heat 0.5 cup vegetable oil in a large skillet over medium-high heat until shimmering. Working in batches if needed, add the 1.5 lb pork belly slices and fry for 2-3 minutes per side until they turn a beautiful golden brown. The pork should be crispy on the outside but still tender inside—this is your texture goal.
Transfer the fried pork to a paper towel-lined plate to drain excess oil. Here's the thing—don't skip this draining step. Leftover oil in the skillet will make your noodles soggy later. Keep the pork warm while you prepare the rest of the soup components.
Prepare the Noodles and Vegetables
Bring a separate pot of water to a boil and cook the 8 oz batchoy noodles according to package directions—usually 3-4 minutes for al dente texture. Drain and rinse briefly under cold water to stop the cooking process. Toss the noodles with 1 tsp salt and set aside.
While the noodles cook, shred the 4 cups cabbage into thin strips. You'll want them to maintain some bite, so don't shred too finely. Also, slice the 0.5 cup green onions into 1-inch pieces—we'll use these for garnish later.
Poach the Eggs in the Broth
Return the strained pork broth to a gentle simmer over medium-low heat. Crack the 4 whole eggs into a small bowl, then carefully slide each egg into the broth using a spoon. The water should be at a barely simmering temperature—too vigorous and the whites will break apart.
Poach the eggs for 3-4 minutes until the whites are set but the yolks remain runny. Use a slotted spoon to transfer them to a plate lined with paper towels. The eggs should be perfectly centered in their whites—this is what gives batchoy its elegant presentation.
Assemble and Serve Immediately
Ladle 1 cup of the warm pork broth into each serving bowl. Add 2 pieces of crispy pork belly and 2 oz of batchoy noodles to each bowl. Place 1 poached egg gently on top of the noodles in each serving.
Finish with a generous sprinkle of shredded cabbage and sliced green onions. The contrast of textures is what makes this dish special—crispy pork, chewy noodles, silky egg, and tender cabbage all in one bowl. Serve immediately while everything is hot and the pork is still crispy. This isn't a dish that waits—every bite should be fresh from the pot!
Pro Tips For Making Batchoy Soup
- CRACK THE BONES FIRST: Don’t just toss pork bones into boiling water—they’ll stew forever and leave you with weak broth. Char them first over a gas flame (or broil for 5 minutes) until they blacken slightly. This unlocks deeper flavor in under 15 minutes of active work—your broth will taste like it simmered all day.
- SALT THE PORK BELLY BEFORE COOKING: I used to skip this, thinking it’d get diluted. Wrong. Generously coat pork belly slices with salt (about 1 teaspoon per pound) and let them sit 10 minutes before cooking. The salt draws out moisture, ensuring crispy edges later—no soggy, flavorless meat here.
- DON’T BOIL THE NOODLES TOO SOON: Batchoy noodles need to soak in the hot broth, not boil separately. Add them to the pot after the broth is simmering (not rolling) and cover for 3–4 minutes. Overcooking turns them mushy—this way, they absorb flavor like a sponge.
- UPGRADE WITH A SLICE OF LEMON: Sounds weird, but it works: Toss a thin slice of lemon into the broth 5 minutes before serving. It brightens the richness of the pork fat without overpowering—my grandmother swore by this, and I finally believed her after tasting the difference.
Pro cooking tips for great batchoy soup
Broth Perfection
Simmer pork bones uncovered for 30 minutes to remove impurities—this step is non-negotiable for a clear broth. I use a fine-mesh sieve to strain it, but if you don’t have one, layer two cheesecloths over a bowl.
The broth should smell deeply savory with notes of ginger and garlic—this is your flavor foundation. 🌿
Don’t rush the 20-minute simmer after adding soy and fish sauce. The collagen from the bones needs time to break down into gelatin, creating that signature silky texture. If you’re short on time, add ½ cup chicken bouillon powder at the end for extra depth, but homemade is always better.
Pork Crispiness
Fry pork belly in small batches—overcrowding lowers oil temperature and makes it greasy. I use a meat thermometer to check for 145°F internal temp—this ensures tenderness while maintaining crispiness. Let the pork rest 5 minutes before serving to redistribute juices. 🥓
For extra crunch, add 1 tsp cornstarch to the pork slices before frying. Toss them lightly and let the starch coat evenly. This creates a crispier exterior without making the meat tough. Keep fried pork warm in a 200°F oven while finishing the soup.
Noodle Texture
Batchoy noodles should be al dente but still chewy—overcooking turns them mushy. Rinse them briefly in cold water after cooking to stop the process immediately.
Toss with ½ tsp salt and a drizzle of oil to prevent sticking. I always cook noodles separately to avoid sogginess from the hot broth. 🍜
No batchoy noodles? Use fresh egg noodles or rice stick noodles as substitutes. Boil them for 1 minute less than package instructions since they’ll finish cooking in the hot broth. The key is maintaining that signature chewiness—don’t skip this step!
Egg Poaching
Poach eggs in barely simmering broth—tiny bubbles should break the surface gently. Use a slotted spoon to lower eggs in, one at a time. The whites should set in 3-4 minutes while yolks stay runny.
If your broth boils too vigorously, the eggs will break apart—this is the most common mistake! ✨
For perfect presentation, place each egg on top of noodles using a spoon. The yolk should sit centered in the whites, creating an elegant visual. If an egg breaks, simply slide it under the broth and poach a fresh one—no one will notice!
Assembly Secrets
Serve batchoy in individual bowls with broth ladled first—this keeps components separate until the first bite. I use wide, shallow bowls to showcase the crispy pork and poached eggs. Garnish with cabbage and green onions right before serving to maintain crispness. 🥬
Pro tip: Keep a small pot of hot water nearby to reheat broth if needed. Batchoy tastes best fresh, but you can revive it by adding 1 tbsp soy sauce and a splash of water to the broth.
The crispy pork stays good for 3 days in the fridge if stored properly—just reheat in a dry skillet for 1 minute.
Nutrition facts
Frequently asked questions
What makes batchoy different from other Filipino noodle soups?
Batchoy stands out for its crispy pork slices that float over a silky egg broth, creating a perfect texture contrast. Unlike other noodle soups, it uses batchoy noodles—thin, chewy, and slightly translucent—which absorb the rich broth beautifully. The dish also features poached eggs that sit perfectly centered on top, adding a delicate touch that's unique to batchoy.
Can I make batchoy without pork belly?
You can substitute pork belly with chicken thighs or shrimp for a lighter version. For chicken, slice it thin and fry until crispy—2-3 minutes per side at medium-high heat. For shrimp, use large, peeled shrimp and cook them just until pink (1-2 minutes per side). The key is maintaining that satisfying crunch while keeping the meat tender.
How do I get the broth to be extra flavorful?
For maximum depth, simmer the pork bones for at least 1 hour—this breaks down collagen into gelatin, creating a velvety texture. Add 1 tbsp fish sauce and 1 tbsp soy sauce during the last 20 minutes of simmering. For extra umami, include 1 piece of star anise or 1-inch ginger while cooking. Strain carefully to remove impurities for a crystal-clear broth.
Can I prepare batchoy ahead of time?
Yes, but store components separately. Keep the broth in a sealed container for up to 3 days or freeze it for 3 months. Fry the pork fresh or store it separately and reheat in a dry skillet for 1 minute to restore crispiness. Cook noodles just before serving to prevent sogginess. Reheat broth with 1 tbsp soy sauce for extra flavor—it tastes even better the next day!
What if I can't find batchoy noodles?
Use fresh egg noodles or rice stick noodles as substitutes. Cook them 1 minute less than package instructions since they'll finish cooking in the hot broth. For a chewier texture, soak dried rice noodles in warm water for 10 minutes before adding to the soup. The key is maintaining that signature chewiness—don't overcook!
