Vietnamese Canh Chua Soup

Golden bowl of Vietnamese Canh Chua soup with tender fish chunks, pineapple, and fresh Thai basil garnish Save
Golden bowl of Vietnamese Canh Chua soup with tender fish chunks, pineapple, and fresh Thai basil garnish | rusticrecipeblog.com

This traditional Vietnamese soup showcases the perfect balance of sweet, sour, and savory flavors that define Southeast Asian cuisine. The foundation begins with a fragrant broth infused with tamarind paste, creating that distinctive tangy base that makes Canh Chora so refreshing.

White fish fillets and optional shrimp simmer alongside sweet pineapple chunks, juicy tomato wedges, and crisp okra. The medley of vegetables adds texture and depth while absorbing the complex broth. Bean sprouts provide a fresh crunch right at the end of cooking.

Fresh herbs are essential—Thai basil, sawtooth coriander, and cilantro are stirred in after removing from heat, preserving their delicate oils and vibrant aroma. A squeeze of fresh lime brightens each bowl.

Serve this comforting soup steaming hot over jasmine rice or alongside vermicelli noodles. The balance of flavors can be adjusted to taste—more tamarind for sourness, additional sugar for sweetness, or extra fish sauce for depth.

The first time my aunt made Canh Chua during a humid summer afternoon, I couldn't believe something so vibrant and complex could come together in under an hour. That perfect balance of tangy tamarind, sweet pineapple, and savory fish felt like magic in a bowl. Now whenever I make it, my kitchen fills with those same intoxicating aromas that transport me straight back to her bustling Hanoi kitchen.

Last week I made a huge pot for friends who claimed they didn't like sour soups, and they went back for seconds three times. Watching them hesitate at that first sip, then light up as the flavors hit—that's the moment this soup stopped being just a recipe and became my go-to comfort food. There's something about gathering around a steaming bowl of Canh Chua that turns any ordinary Tuesday dinner into something special.

Ingredients

  • 500 g white fish fillets: Catfish or basa hold up beautifully in the hot broth without falling apart, and their mild flavor lets the tangy soup shine through
  • 8 large shrimp: Totally optional, but they add that sweet seafood depth that makes the soup feel extra luxurious
  • 2 medium tomatoes: They soften into the broth, adding body and that gorgeous red hue that makes the soup so inviting
  • 1 small pineapple: Fresh pineapple is nonnegotiable here, canned just doesn't give you that bright tropical sweetness
  • 150 g bean sprouts: Add these at the very end so they stay crisp and provide this amazing fresh crunch against the tender fish
  • 150 g okra: Sliced thin, they release a natural thickness to the broth without any sliminess
  • 2 stalks celery: If you can find elephant ear stem (bạc hà), use it for that authentic Vietnamese crunch celery is a solid substitute
  • 2 cloves garlic and 1 small onion: The aromatic foundation that builds all that depth in the background
  • 2 birds eye chilies: Slice them thin if you want heat, leave them whole for a gentler warmth
  • 1.5 liters fish stock: Homemade stock makes a difference, but good quality storebought works perfectly fine
  • 3 tablespoons fish sauce: Don't be tempted to reduce this, it's the savory backbone that balances all that sweet and sour
  • 2 tablespoons tamarind paste: This is what gives Canh Chua its signature sour note, adjust to your taste
  • 1 tablespoon sugar: Crucial for rounding out the acidity and bringing everything into harmony
  • Fresh Thai basil, sawtooth coriander, and cilantro: The holy trinity of herbs that make this soup sing—don't skip them, don't substitute
  • Lime wedges: Essential for that final bright squeeze right before eating

Instructions

Build your aromatic base:
Heat a splash of oil in your large pot over medium heat and sauté the garlic and onion until they're fragrant and just starting to turn golden, about 2 minutes—this is where all that deep flavor starts.
Create the soup broth:
Pour in your fish stock or water, then stir in the tamarind paste, fish sauce, sugar, and salt. Let it come to a gentle boil while you stir to dissolve everything, tasting as you go to get that sweet sour balance started.
Add the hearty vegetables:
Drop in your pineapple, tomatoes, okra, celery or elephant ear stem, and those sliced chilies. Let everything simmer for 5 to 7 minutes until the vegetables are just tender—you want them to still have some bite.
Cook the seafood gently:
Add your fish chunks and shrimp if you're using them, then turn the heat down to a gentle simmer. Let them cook for just 5 to 7 minutes until the fish flakes easily and the shrimp turn pink—overcooking here makes the fish tough.
Finish with the fresh elements:
Stir in the bean sprouts and cook for exactly 1 minute so they stay crisp. Then remove from heat and fold in your Thai basil, sawtooth coriander, and cilantro.
Steamy aromatic Canh Chua featuring catfish, tomatoes, okra, and bean sprouts in tangy tamarind broth Save
Steamy aromatic Canh Chua featuring catfish, tomatoes, okra, and bean sprouts in tangy tamarind broth | rusticrecipeblog.com

This soup became my go-to when I'm hosting and want to serve something impressive but not fussy. There's nothing quite like watching friends lift their bowls and drink every last drop of that fragrant broth. Those moments around the table, everyone reaching for more lime wedges, that's when food feels like love.

Getting the Balance Just Right

The magic of Canh Chua lives in that perfect sweet sour salty equilibrium, and it's different every time. I always start with less tamarind and fish sauce than the recipe calls for, then adjust incrementally. Your palate might want more sour than mine, or more sweetness from the pineapple—that's the beauty of a soup like this. Trust your taste buds more than the measurements.

Make It Your Way

My cousin makes this with only catfish because that's what her family prefers, while I love the combination of fish and shrimp for variety. Some days I'll add extra vegetables like taro stem or water spinach, other times I keep it classic. The framework stays the same, but the details are yours to play with.

Serving It Right

Set the table with small bowls of extra fish sauce, sliced chilies, and more lime wedges so everyone can customize their bowl. I always serve it alongside fluffy jasmine rice or vermicelli noodles to soak up all that incredible broth.

  • Have your ingredients prepped before you start, this soup comes together fast
  • Make extra broth, it reheats beautifully for lunch the next day
  • The flavors actually deepen overnight, so don't worry about leftovers
Vibrant Vietnamese sour soup bowl topped with cilantro, lime wedges, and colorful vegetables swimming in savory stock Save
Vibrant Vietnamese sour soup bowl topped with cilantro, lime wedges, and colorful vegetables swimming in savory stock | rusticrecipeblog.com

There's something deeply satisfying about a soup that tastes this complex but comes together this easily. Make it once, and it'll find its way into your regular rotation too.

Recipe FAQs

The signature sourness comes from tamarind paste, which creates a tangy base. Fresh lime wedges served on the side allow diners to adjust the acidity to their preference.

Absolutely. Substitute firm tofu cubes for the fish fillets and shrimp. Use vegetable or mushroom stock instead of fish stock, and replace fish sauce with soy sauce or a vegetarian alternative.

White fish with mild flavor and firm texture holds up well during simmering. Catfish, tilapia, basa, or sea bass are excellent choices that won't fall apart in the hot broth.

Green beans or long beans make a good substitute if okra isn't available. They'll provide similar texture and hold their shape during cooking without becoming slimy.

Store in an airtight container in the refrigerator for up to 2 days. Reheat gently over low heat to avoid overcooking the fish. Add fresh herbs and bean sprouts when serving.

Also known as ngo gai or culantro, this herb has long, serrated leaves with a flavor similar to cilantro but more intense. If unavailable, extra cilantro makes an acceptable substitute.

Vietnamese Canh Chua Soup

Tangy-sweet Vietnamese fish soup with pineapple, tomatoes, and aromatic herbs.

Prep 15m
Cook 25m
Total 40m
Servings 4
Difficulty Medium

Ingredients

Seafood

  • 1.1 lbs white fish fillets (catfish, tilapia, or basa), cut into chunks
  • 8 large shrimp, peeled and deveined (optional)

Vegetables & Aromatics

  • 2 medium tomatoes, cut into wedges
  • 1 small pineapple, peeled and cut into bite-sized pieces
  • 5.3 oz bean sprouts
  • 5.3 oz okra, sliced
  • 2 stalks celery or elephant ear stem (bạc hà), sliced
  • 2 cloves garlic, minced
  • 1 small onion, sliced
  • 2 birds eye chilies, sliced (optional)

Broth & Seasonings

  • 6.3 cups water or fish stock
  • 3 tablespoons fish sauce
  • 2 tablespoons tamarind paste
  • 1 tablespoon sugar
  • 1 teaspoon salt
  • ½ teaspoon ground black pepper

Fresh Herbs

  • 0.7 oz fresh Thai basil leaves
  • 0.7 oz sawtooth coriander (ngo gai), chopped
  • 0.35 oz fresh cilantro, chopped
  • Lime wedges, for serving

Instructions

1
Prepare Aromatic Base: Heat a splash of oil in a large pot over medium heat. Sauté minced garlic and sliced onion until fragrant, approximately 2 minutes.
2
Create Broth: Pour in water or fish stock. Stir in tamarind paste, fish sauce, sugar, and salt. Bring mixture to a gentle boil, ensuring seasonings dissolve completely.
3
Cook Vegetables: Add pineapple chunks, tomato wedges, sliced okra, celery (or elephant ear stem), and chilies. Simmer for 5–7 minutes until vegetables are just tender-crisp.
4
Add Seafood: Gently place fish chunks into simmering broth (add shrimp if using). Cook for 5–7 minutes until seafood is opaque and just cooked through, being careful not to overcook.
5
Finish with Bean Sprouts: Add bean sprouts and cook for 1 minute. Taste broth and adjust seasoning with additional fish sauce, sugar, or lime juice to achieve balanced sweet, sour, and salty notes.
6
Add Fresh Herbs: Remove pot from heat immediately. Gently stir in Thai basil, sawtooth coriander, and cilantro, allowing residual heat to wilt herbs slightly.
7
Serve: Ladle hot soup into bowls. Garnish with additional fresh herbs and lime wedges. Accompany with steamed jasmine rice or vermicelli noodles.
Additional Information

Equipment Needed

  • Large soup pot
  • Cutting board and knife
  • Ladle
  • Soup bowls

Nutrition (Per Serving)

Calories 210
Protein 22g
Carbs 21g
Fat 3g

Allergy Information

  • Contains fish and shellfish (if using shrimp)
  • Contains fish sauce (anchovy)
Abigail Turner

Passionate home cook sharing easy, family-friendly recipes and helpful kitchen tips.