Soups & Stews
This Bori Bori soup recipe delivers the perfect balance of silky egg ribbons and fragrant five-spice broth, a Filipino comfort dish that’s tangy, savory, and deeply satisfying. The secret lies in slow-simmered broth infused with aromatic spices, where delicate egg strands melt into a velvety texture that’s impossible to resist.
Unlike its sour cousin sinigang, bori bori leans into a gentle tang rather than sharp acidity, making it a crowd-pleaser for both beginners and seasoned cooks.
The broth builds flavor through a careful blend of pork, shrimp, and vegetables—carrots, string beans, and radishes—simmered until tender. A touch of tamarind or calamansi adds just enough sourness to brighten the dish without overpowering the delicate egg ribbons.
Five-spice powder and bay leaves create that signature fragrant depth, while a splash of fish sauce ties everything together. The result? A soup that’s rich, aromatic, and perfectly balanced—every spoonful is a harmony of textures and flavors.
What sets this recipe apart is the technique for creating those signature egg ribbons: beaten eggs are gently poured into the simmering broth, where they curl into delicate strands as they cook. The broth remains clear and fragrant, with just enough body to hold the vegetables and meat.
Serve it piping hot with steamed rice, and you’ve got a meal that feels like a warm hug on a chilly day. The best part? This recipe scales effortlessly, whether you’re feeding a family or prepping for leftovers.
For those who love regional variations, this version stays true to the classic bori bori while offering flexibility—swap shrimp for fish or add a splash of vinegar for extra tang.
The key is patience: letting the broth simmer until the flavors meld and the egg ribbons achieve that signature melt-in-your-mouth texture. Once you try this, you’ll understand why it’s a staple in Filipino homes and restaurants alike.
Ingredients for bori bori soup
Sixteen ingredients for a soup that feels like a warm embrace—silky egg ribbons in aromatic five-spice broth.
| Ingredient | Amount | Notes |
|---|---|---|
| Large Eggs 🥚 | 12 whole | Freshly beaten for ribbons |
| Pork Shoulder 🥩 | 1 ½ lb | Boneless, cut into chunks |
| Shrimp 🦐 | ½ lb | Peeled, deveined, heads on |
| Carrots 🥕 | 3 whole | Medium size, sliced into rounds |
| String Beans 🌽 | 1 lb | Trimmed into bite-size pieces |
| Radishes 🥕 | 4 whole | Small, sliced into thin rounds |
| Yellow Onion 🧅 | 1 whole | Medium size, quartered |
| Garlic Cloves 🧄 | 6 cloves | Minced for aromatic depth |
| Five-Spice Powder 🌶️ | 1 tbsp | Filipino blend preferred |
| Bay Leaves 🌿 | 2 whole | Fresh for deeper flavor |
| Tamarind Paste 🍋 | 2 tbsp | Or substitute calamansi juice |
| Fish Sauce 🍶 | 1 tbsp | Red Boat preferred |
| Salt 🧂 | 1 tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Vegetable Oil 🫒 | 2 tbsp | For initial searing |
The pork shoulder is the flavor backbone here—look for well-marbled cuts at your local butcher or Asian market. Shrimp heads add depth, so don't skip them. For the five-spice powder, Filipino brands like San Miguel or Penzeys have that authentic warmth. Tamarind paste can be found in the international aisle at Walmart or Trader Joe's—it's worth hunting down for that signature tang. Fresh bay leaves make all the difference, but dried works in a pinch at half the amount. Eggs should be at room temperature for perfect ribbons.
No tamarind? Calamansi juice or lime juice works, but you'll need about twice the amount. Shrimp heads too much? Use just the bodies and add a splash of soy sauce for umami. Vegetable oil is fine, but lard or coconut oil gives that authentic richness. The carrots and radishes can be swapped for daikon or cabbage if you're feeling adventurous. For extra tang, add a splash of vinegar at the end. The key is balance—taste as you go.
This soup tastes even better the next day as flavors meld. Store in an airtight container in the fridge for up to 4 days. For leftovers, reheat gently on the stove—don't boil or the egg ribbons will break. Freezes beautifully for 3 months if you want to prep ahead. I always make a double batch—one for dinner, one for lunches. The broth keeps well too, so you can make it ahead and add the eggs fresh when serving.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe—just toss everything into one pot, simmer, and boom. No fancy techniques, no last-minute grocery runs. The pork shoulder melts into tender shreds while the shrimp poach right in the broth, and those eggs? They get that perfect silky-yolk finish without overcomplicating things.
- Umami Bomb: Between us, the combo of pork shoulder and shrimp in that savory broth is chef’s kiss. The carrots and string beans soak up all the flavor, but it’s the poached eggs that steal the show—rich, runny yolks cutting through the hearty base. Honestly, I’ve had worse meals at fancy restaurants.
- Weeknight Workhorse: This soup is my go-to for busy nights, potlucks, or even lazy Sundays. Double the batch and freeze half—it reheats like a dream. My kids fight over the eggs, my husband saves the pork, and I get to enjoy the leftovers for days without a single takeout order.
- Budget Flexibility: Pork shoulder and eggs stretch this recipe far, and shrimp feels like a luxury without breaking the bank. Swap in chicken or tofu if needed, or bulk it up with more veggies. It’s the kind of meal that makes grocery day feel less stressful because you’re not scrambling for the perfect ingredients.
Step-by-step instructions for bori bori soup
This soup is all about silky egg ribbons and rich, aromatic broth—let's build it layer by layer.
Sear the Pork Shoulder for Deep Flavor
Heat the 2 tablespoons vegetable oil in a large pot over medium-high heat until shimmering. Add the 1.5 lb pork shoulder cut into chunks, working in batches if needed. Sear for 5-6 minutes until the meat develops a rich golden-brown crust—this is where all the flavor starts.
Once browned, remove the pork and set aside. You want the oil to stay hot enough to sear, but not smoke. If the pot gets crowded, cook in two batches to avoid steaming instead of browning. This initial sear creates a Maillard reaction that forms the foundation of your broth's depth.
Build the Five-Spice Broth
In the same pot, add the 1 whole yellow onion (quartered) and 6 cloves garlic cloves (minced). Sauté for 2 minutes until fragrant and slightly softened. Add the 1 tbsp five-spice powder, 2 whole bay leaves, 1 tbsp fish sauce, and 2 tbsp tamarind paste. Stir for 30 seconds to toast the spices and release their aromas.
Pour in 8 cups water (enough to cover the pork) and bring to a boil. Once boiling, reduce heat to low, return the pork to the pot, and add the 3 whole carrots (sliced into rounds) and 1 lb string beans (trimmed). Simmer uncovered for 1 hour, skimming any foam that rises to the surface. This slow simmer extracts the pork's collagen for a silky broth.
Prepare the Shrimp and Vegetables
While the broth simmers, peel and devein the 0.5 lb shrimp, leaving the heads on for extra flavor. In a separate bowl, combine the 4 whole radishes (sliced into thin rounds) and set aside. The radishes will add a bright, crisp contrast to the rich broth, so keep them whole until the very end.
After 1 hour, add the shrimp heads to the broth and simmer for another 15 minutes. This infuses the broth with shrimp sweetness. Remove the shrimp heads with a slotted spoon and set aside. Add the shrimp bodies to the broth and cook for 2-3 minutes until just opaque. Remove the shrimp and set aside with the heads.
Create the Egg Ribbons
Beat the 12 whole large eggs until frothy but not fully mixed—just enough to combine the yolks and whites. Strain through a fine-mesh sieve into a bowl to remove any lumps. This step is crucial for silky ribbons.
Bring the broth back to a gentle simmer. Slowly ladle 1 cup of hot broth into the beaten eggs while whisking constantly. This tempering step prevents the eggs from curdling. Pour the egg mixture back into the broth in a thin, steady stream, stirring gently with a wooden spoon to create delicate ribbons.
Finish and Serve
Add the 1 tsp salt and 0.5 tsp black pepper to the broth. Stir in the radishes and let them warm through for 1-2 minutes—just enough to soften slightly but retain their crisp texture. Taste and adjust seasoning if needed, adding a splash more fish sauce if the broth needs more depth.
Ladle the soup into bowls, garnishing each serving with the reserved shrimp and a sprinkle of five-spice powder. Serve immediately with steamed rice to soak up the fragrant broth. The contrast of the silky egg ribbons, tender pork, and crisp radishes makes every spoonful a perfect balance of textures and flavors.
Pro Tips For Making Bori Bori Soup
- CUT PORK SLICE THIN: Bori bori soup relies on tender pork—thin slices (about ¼-inch thick) cook faster and stay juicy. I used to overlook this and ended up with chewy chunks. A sharp knife and steady hand make all the difference.
- SALT SHRIMP FIRST: Toss shrimp in salt and a splash of oil 10 minutes before cooking—it keeps them firm and flavorful. I learned this the hard way when they turned mushy in the broth. (Yes, even if you’re impatient like me.)
- LOW SIMMER AFTER BOIL: Once the pork and veggies hit the pot, bring to a boil, then drop to a gentle simmer. A rolling boil toughens the pork and turns the broth cloudy. This isn’t the prettiest method, but it’s the tastiest.
- STIR EGGS CONSTANTLY: When adding the eggs, keep stirring until they’re just set—about 30 seconds. I skipped this once and ended up with scrambled bits instead of delicate, silky strands. A wooden spoon works best.
Pro cooking tips for this dish
Egg Ribbon Mastery
The secret to perfect egg ribbons lies in tempering the eggs properly. Start by beating the eggs just until frothy—overmixing creates tough strands instead of delicate curls. I use a fine-mesh sieve to remove any lumps, which ensures silky texture.
Temper the eggs by slowly adding 1 cup hot broth while whisking constantly. This gradual warming prevents curdling. Pour the mixture back into the broth in a thin, steady stream while gently stirring with a wooden spoon to encourage ribbon formation. 💫
Broth Clarity Tips
For a crystal-clear broth, skim foam vigorously during the initial 1-hour simmer. This removes impurities that cloud the liquid. I use a fine-mesh skimmer to avoid disturbing the pork chunks. If your broth still looks cloudy, strain it through a cheesecloth-lined colander before adding the eggs.
The key is patience—rushing the simmering process leads to a murky result. For extra clarity, add 1 bay leaf during the final 15 minutes of cooking.
Spice Infusion Tricks
Toast the five-spice powder and bay leaves for 30 seconds in the hot oil before adding liquid. This releases their aromatic oils, creating a more complex flavor profile. I like to crush the bay leaves slightly between my fingers before adding them to the pot.
For deeper umami, add the shrimp heads 15 minutes before the shrimp bodies. Remove them immediately after—they infuse incredible flavor without overpowering the broth. 🌶️
Vegetable Timing
Add harder vegetables like carrots and string beans first—they need the full 1-hour simmer to tenderize. Radishes go in last because they cook quickly and should remain crisp. I slice them paper-thin to ensure they warm through without becoming mushy.
For extra color contrast, add a few slices of red bell pepper during the final 5 minutes of cooking. This adds visual appeal without altering the soup's texture.
Pork Cooking Precision
Cut the pork shoulder into 1.5-inch chunks for even cooking. Sear them until they develop a deep golden crust—this creates the Maillard reaction that forms the flavor foundation. I use a meat thermometer to check doneness at 205°F internal temperature.
If the pork isn't tender enough after simmering, shred it slightly before serving. For extra richness, reserve some of the pork fat to finish the soup before adding the eggs. 🥩
Garnish Like a Pro
Finish each bowl with freshly cracked black pepper and a sprinkle of five-spice powder for color and aroma. I like to garnish with a few extra shrimp on top—their pink color makes the soup visually appealing.
For a restaurant-style touch, add a drizzle of chili oil or a squeeze of lime. These final touches elevate the dish from home-cooked to restaurant-quality. The presentation matters just as much as the flavor! ✨
Nutrition facts
Frequently asked questions about bori bori soup
What makes bori bori soup different from sinigang?
While both are Filipino soups, bori bori focuses on silky egg ribbons in a fragrant five-spice broth with subtle sourness, whereas sinigang is much tangier and often uses tamarind or vinegar as the dominant souring agent. Bori bori also typically includes shrimp heads for extra umami, while sinigang might feature more varied meats like pork and shrimp together.
Can I make bori bori soup without tamarind?
Substitute tamarind with calamansi juice (use twice the amount) or lime juice for a brighter tang. For a milder sourness, try 1 tablespoon vinegar (white or cane) at the end. The key is balance—start with less and adjust to taste.
How do I get the egg ribbons to form properly?
Beat the eggs just until frothy (don't overmix), then temper them by slowly adding 1 cup hot broth while whisking constantly. Pour the mixture back into the broth in a thin stream while stirring gently with a wooden spoon. Keep the broth at a gentle simmer—not a rolling boil—to encourage ribbon formation.
Can I use chicken instead of pork?
Yes, but chicken will make the broth lighter and less rich. Use 2 lb boneless chicken thighs instead of pork shoulder, and simmer for 45 minutes instead of 1 hour. For extra depth, add a splash of soy sauce or a chicken bouillon cube to the broth. The egg ribbons will still be perfect, but the overall flavor profile will be milder.
Why is my broth cloudy?
Cloudy broth usually means either insufficient skimming or rushing the simmering process. Skim foam vigorously during the first 1-hour simmer, and avoid boiling vigorously. For extra clarity, strain the broth through a cheesecloth-lined colander before adding the eggs. If using shrimp heads, remove them after 15 minutes to prevent excess cloudiness.
