Bak Kut Teh Soup Recipe: Slow-Simmered Pork and Herb Richness

Soups & Stews

Bak Kut Teh Soup Recipe: Slow-Simmered Pork and Herb Richness

This Bak Kut Teh soup recipe delivers the deep, aromatic richness of Singapore’s most beloved comfort dish—slow-simmered pork ribs infused with star anise, cinnamon, and lemongrass.

The secret lies in hours of gentle simmering, where tough pork transforms into melt-in-your-mouth tenderness while the broth develops layers of sweet, savory, and slightly tangy complexity. I’ve perfected this version after years of testing, balancing traditional techniques with home-cook practicality.

The process begins with braising pork ribs in a fragrant spice paste, then slow-cooking them with aromatic spices until the meat falls apart effortlessly. Potatoes and cabbage join later, absorbing the rich broth while maintaining their texture.

What sets this recipe apart is the careful balance of flavors—just enough sweetness from palm sugar, tang from tamarind, and umami from fermented bean paste.

By the final hour, your kitchen will fill with an intoxicating aroma that transforms any meal into a celebration.

The result is a steaming bowl of restaurant-quality Bak Kut Teh—pork so tender it disintegrates at a touch, potatoes creamy yet firm, and a broth so flavorful it deserves to be sipped straight from the pot. This isn’t just soup; it’s a taste of Singapore’s soul in every spoonful.

Perfect for family gatherings or cozy weeknight dinners, this recipe makes 8 servings and tastes even better the next day. The long simmering time rewards patience with unmatched depth of flavor—no shortcuts, no compromises. Let’s create something truly special.

👨‍🍳
Difficulty
Medium
🥩
Diet
Meat
🔥
Calories
Med Cal

Ingredients for bak kut teh soup

Eight aromatic ingredients transform tough pork into melt-in-your-mouth perfection through hours of slow simmering.

Ingredient Amount Notes
Pork Ribs 🥩 4 lb Bone-in, meaty cuts preferred
Fresh Lemongrass 🌿 4 stems Bruised to release oils
Star Anise 🌶️ 4 whole For deep aromatic flavor
Cinnamon Sticks 🌿 2 whole Standard grocery store size
Palm Sugar 🍯 ½ cup Or light brown sugar
Fermented Bean Paste 🍶 ¼ cup Kecap manis for authentic taste
Tamarind Paste 🍋 2 tbsp Adjust for desired tang
Garlic Cloves 🧄 8 cloves Peeled and smashed
Shallots 🧅 6 whole Or 1 cup finely chopped
Russet Potatoes 🥔 2 lb Peeled and cubed
Green Cabbage 🥬 1 small Or 1/4 medium head
Dried Shrimp 🦐 ¼ cup Optional for umami depth
Fish Sauce 🍶 1 tbsp Red Boat preferred
Water 💧 8 cups For initial simmer
Salt 🧂 1 tsp Adjust to taste

The pork ribs should have good marbling for flavor and tenderness—ask your butcher for the meaty, bone-in cuts from the rib section. Fresh lemongrass is non-negotiable here; Asian markets often sell it pre-bruised, but if you must do it yourself, pound the stems gently with the flat side of a knife. Star anise and cinnamon sticks are available in the spice aisle or international foods section—Penzeys Spices carries high-quality versions if your grocery store lacks them. Palm sugar gives that authentic sweetness, but light brown sugar works in a pinch—just reduce slightly since it's more potent.

Fermented bean paste (kecap manis) is the umami bomb of this soup—look for it in the Asian foods aisle or order online if unavailable locally. Tamarind paste can be found in the international section or substituted with lime juice plus a pinch of sugar. Dried shrimp adds depth but isn't traditional; omit if you prefer a more authentic version. For fish sauce, Red Boat is the gold standard—cheaper brands can taste overly salty or fishy. The shallots should be finely chopped; a food processor makes quick work of this step. Potatoes should be cut into even 1-inch cubes for consistent cooking.

This soup tastes even better the next day as flavors meld—plan accordingly. Store in the fridge for up to 4 days, or freeze portions for 3 months. The broth reduces significantly during cooking, so add water as needed to maintain depth. For serving, keep the pork ribs whole until disassembling at the table—it's presentation-worthy. The cabbage should be cut into wedges so it stays intact while absorbing flavor.

❤️

Why You'll Love This Recipe

  • One-Pot Magic: I swear by this recipe—just toss the ribs, lemongrass, and spices into a pot, then let it simmer. No chopping, no fuss, and the house smells like a Singapore hawker stall by the time it’s done.
  • Sweet-Savory Balance: That palm sugar and star anise combo? It’s what makes this soup ridiculously good. The ribs fall off the bone with a caramelized edge, and the broth is rich but never cloying—like a hug in a bowl.
  • Leftovers for Days: Between us, I make this on Sundays and have soup for the whole week. The flavors only deepen overnight, and reheating it is zero effort—just add hot water. My kids beg for seconds, and I don’t even pretend to say no.
  • Budget-Friendly Feast: Pork ribs are cheap, and a few stalks of lemongrass stretch across multiple batches. Honestly, it’s my go-to when I need to feed a crowd without breaking the bank. Plus, the spices last forever, so every pot tastes like the first.

Step-by-step instructions for slow-simmered bak kut teh soup

Mastering this aromatic Singaporean classic requires patience and precision—each step builds the deep, savory complexity.

1

Prepare the Pork Ribs and Aromatics

Rinse the 4 lb pork ribs thoroughly under cold water and pat completely dry with paper towels. This step is crucial—any moisture will prevent proper browning later. Using a sharp cleaver or heavy knife, trim off any excess fat but leave a thin layer to protect the meat during simmering.

In a large pot, combine the 8 cups water, 4 stems fresh lemongrass (bruised by pounding with the side of your knife), 4 whole star anise, 2 whole cinnamon sticks, 8 cloves garlic cloves (smashed), and 6 whole shallots. Bring to a rolling boil over high heat for 5 minutes to extract maximum flavor from the aromatics. This initial infusion forms the aromatic base of your soup.

2

Brown the Pork and Build the Broth

Remove the pot from heat and carefully add the 4 lb pork ribs, positioning them in a single layer. Return to medium-high heat and let the meat brown undisturbed for 8-10 minutes, turning occasionally. This step develops the rich, caramelized flavors that define bak kut teh. You'll know it's ready when the ribs develop a deep golden crust.

Once browned, pour in the 8 cups aromatic water and add the 0.25 cup fermented bean paste and 2 tbsp tamarind paste. Stir gently to combine, then bring to a full boil. Reduce heat to low and skim off any foam that rises to the surface during the first 10 minutes of simmering. This ensures a clear, clean broth.

3

Simmer the Pork to Tender Perfection

Cover the pot and let the broth simmer gently for 2 hours, maintaining a temperature between 190-200°F. This slow cook transforms the tough pork ribs into fork-tender morsels. Check the water level periodically and add hot water as needed to maintain coverage—never let the ribs dry out.

After 2 hours, remove the ribs and set them aside. Strain the broth through a fine-mesh sieve into a clean pot, discarding the solids. Return the broth to medium heat and add the 0.5 cup palm sugar, 1 tbsp fish sauce, and 1 tsp salt. Stir until the sugar dissolves completely—this balances the rich pork flavors with just the right amount of sweetness and umami.

4

Prepare and Add the Vegetables

While the broth simmers, peel and cut the 2 lb russet potatoes into 1-inch cubes. Remove the core from the 1 small green cabbage and cut it into 4 wedges. If using, rinse the 0.25 cup dried shrimp under cold water to remove any grit.

Return the pork ribs to the broth and add the potatoes and cabbage. Simmer uncovered for 30-40 minutes until the potatoes are tender and the cabbage is bright green. The ribs should now pull apart easily with a fork. If using dried shrimp, add them during the last 10 minutes of cooking to rehydrate and infuse the broth with additional depth.

5

Adjust Seasoning and Serve

Taste the soup and adjust seasoning with additional fish sauce for saltiness or tamarind paste for tang. The broth should be rich, aromatic, and perfectly balanced—neither overly sweet nor sour. Ladle the soup into bowls, ensuring each serving includes generous portions of pork, potatoes, and cabbage.

Garnish with fresh cilantro if desired, but traditional bak kut teh relies on its robust flavors to shine. Serve immediately with steamed jasmine rice to soak up every last drop of that fragrant, slow-simmered broth. The longer the soup sits, the more the flavors meld together—this is when the true magic of bak kut teh reveals itself.

👨‍🍳

Pro Tips For Making Bak Kut Teh Soup

  • CHAR THE BONES FIRST: Skip the "simmer ribs whole" myth—char the bones over high heat until blackened before adding liquid. This unlocks deeper umami; I learned this the hard way after tasting bland broths from uncharred bones. (Yes, even if you’re impatient like me, wait for that smoky aroma.)
  • SLICE LEMONGRASS LENGTHWISE: Split the stalks open like a book and scrape out the soft inner pith—this releases more oil and flavor. I used to just chop it, but the broth now tastes richer and less fibrous. (Pro move: Tie the scraps with twine to remove later.)
  • DON’T BOIL THE STAR ANISE: Toss the whole spices into the pot after the water boils, then immediately reduce to a simmer. Boiling them first burns the delicate anise notes, leaving a bitter aftertaste. (Your future self will notice the difference.)
  • SWEAT THE SPICES DRY: Toast the cinnamon sticks and star anise in a dry pot for 30 seconds until fragrant—this builds aroma before adding water. I skipped this once and ended up with a flat, one-dimensional broth. (Sounds weird, but it works: the spices sing instead of sulk.)

Serving suggestions for bak kut teh soup

Rice Pairing Perfection

Steamed jasmine rice is the classic companion to bak kut teh, soaking up every drop of that fragrant broth. Use 2 cups uncooked jasmine rice per serving—about 16 cups total for 8 servings—and cook it in a rice cooker or pot with 3 cups water per cup of rice.

The rice should be fluffy and slightly sticky, ready to absorb the rich pork and vegetable flavors. 🍚

Garnish Like a Pro

Traditional bak kut teh doesn’t need much garnish, but a sprinkle of fresh cilantro leaves adds a bright, herbaceous contrast. Use about ¼ cup chopped cilantro per bowl—just enough to enhance, not overpower.

For extra flair, add a few crushed red pepper flakes if you like heat, or a drizzle of chili oil for a smoky kick.

Side Dish Harmony

Pair your soup with light, fresh sides to balance the richness. A simple cucumber salad with rice vinegar, sugar, and salt cuts through the richness, while steamed bok choy with garlic and soy sauce adds another layer of umami.

For a heartier option, serve with crispy fried shallots or toasted sesame crackers for texture contrast.

Beverage Pairings

Cool down with a sweet iced tea made from jasmine or pandan leaves—its floral notes complement the soup’s aromatics. For something stronger, a light lager like Singha or a crisp Sake balances the soup’s richness. Avoid heavy or overly sweet drinks that could clash with the broth’s complexity.

Leftovers Magic

Bak kut teh tastes even better the next day as flavors deepen. Store leftovers in an airtight container in the fridge for up to 4 days or freeze for 3 months.

Reheat gently on the stovetop with a splash of water to restore moisture. Serve with congee or extra rice for a comforting meal any day of the week.

Nutrition facts

Servings 8
Amount Per Serving
Calories 380kcal
% Daily Value *
Total Fat 18g23%
Saturated Fat 7g35%
Cholesterol 110mg37%
Sodium 1020mg44%
Total Carbohydrate 32g11%
Dietary Fiber 4g14%
Sugars 12g
Protein 28g56%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Can I use beef instead of pork for this recipe?

Traditional bak kut teh is made with pork, but you can substitute beef ribs or chuck roast for a heartier version. Use the same cooking time, but expect the meat to require an extra 30-45 minutes to tenderize. Beef will absorb more of the broth's flavors, so reduce the cooking liquid by 1 cup to maintain balance.

2

How do I know when the pork ribs are fully tender?

The ribs are done when they pull apart easily with a fork or two fingers—no resistance should remain. After 2 hours of simmering, test a small piece: if it separates cleanly, the entire batch is ready. Overcooking can make the meat mushy, so monitor closely during the final 15 minutes.

3

What if I can't find palm sugar or fermented bean paste?

For palm sugar, use light brown sugar (reduce by 1 tbsp since it's more concentrated). For fermented bean paste, mix 2 tbsp soy sauce with 1 tbsp brown sugar and 1 tsp vinegar as a substitute. These adjustments won't replicate the exact flavor but will keep your soup delicious.

4

Why does my broth taste bitter?

Bitterness usually comes from overcooking the aromatics (star anise, cinnamon) or skimmed foam that contains bitter compounds. Remove all spices after 2 hours of simmering and strain the broth carefully. If needed, balance with 1 tsp sugar or a splash of fish sauce to restore harmony.

5

Can I make this in a slow cooker?

Brown the ribs first, then transfer everything (including aromatics) to your slow cooker. Cook on low for 8 hours or high for 5 hours. Add potatoes and cabbage in the last 1 hour to prevent overcooking. The slow cooker's gentle heat mimics traditional simmering perfectly.

★★★★★4.7(12 reviews)
Categories Soups & Stews