Canh Chua (Vietnamese Sweet and Sour Soup)

By: MeganPosted: 14/09/2026 Updated: 10/09/2026

This post may contain affiliate links, please see our privacy policy for details

Prep 10 minutes
Cook 20 minutes
Total 30 minutes

Sweet, sour, and packed with so many fresh flavors, canh chua is Vietnamese comfort food at its best. This Vietnamese sweet-and-sour soup features fresh fish, pineapple, tomatoes, and vegetables.

Canh Chua (Vietnamese Sweet and Sour Soup)

This post may contain affiliate links, please see our privacy policy for details

Canh Chua (Vietnamese Sweet and Sour Soup)

Growing up, canh chua is one of those Vietnamese soups that always tastes like home. This classic home-cooked Vietnamese sweet and sour soup has the perfect delicate balance of sweet, savory, and tangy flavors. Tender catfish simmers in a tamarind-based broth with pineapple, tomato, okra, bean sprouts, and fresh Vietnamese herbs.

This quick and easy Vietnamese soup only takes 30 minutes to make, so it’s perfect for your busy weeknights. Served with a bowl of steamed jasmine rice and ca kho to (caramelized braised fish), and you have got yourself a delicious home-cooked Vietnamese dinner.

Ingredients

You can find all the ingredients for this canh chua recipe at your local Vietnamese grocery market. Full measurements and links to everything I used are in the recipe card below.

  • Tamarind Block: the defining ingredient that gives the soup its sour, tangy flavor. If using a block, you will need to soak it in hot water and strain the pulp before using. I use this same method to make my delicious pad thai too!
  • Shallot: the main aromatic flavor that adds aromatic depth.
  • Pineapple: adds the natural sweetness and fruity acidity that complements the tamarind.
  • Fish Sauce: adds salt and umami that balances the sweetness and acidity.
  • Sugar: balances the tamarind’s acidity.
  • Chicken Bouillon Powder: adds a comforting, savory depth and umami to the broth.
  • Catfish: the main protein that gives the broth a subtle, rich, and savory flavor.
  • Roma Tomatoes: add acidity, sweetness, and color.
  • Okra: a tender, crisp vegetable that thickens the broth.
  • Elephant Ear Stem: a porous, sponge-like vegetable that absorbs the broth and adds a crisp texture.
  • Bean Sprouts: add freshness and crunch.
  • Rice Paddy Herb, aka ngo om, is a signature herb that is bright and citrusy, with a slightly cumin-like aroma.
  • Sawtooth Coriander (aka ngo gai) adds a strong, fish-cilantro-like aroma.

Substitutions and Additions

Substitutions

  • Fish: snakehead fish, cod, salmon, or any fish of your choice.
  • Pork ribs: instead of fish, you can alternatively simmer pork ribs in water for 2 hours before cooking the rest of the soup.
  • Other protein options include chicken, tofu, or beef.
  • Tamarind concentrate: instead of tamarind pulp, use 1/2 the amount of concentrate and adjust to taste.
  • Garlic: an alternative to shallots.
  • Canned or frozen pineapple: instead of fresh pineapple
  • Broth: chicken broth instead of chicken bouillon powder.

Additions

  • Shrimp: for added protein and sweetness in the broth.
  • Fried garlic: for added flavors and textures.
  • Heat: fresh bird’s-eye chilies.

How to Make

Here are the step-by-step instructions for how to make this canh chua recipe.

  1. Mix the tamarind paste with boiling water and let it sit for about 5 minutes. Then mash thoroughly and strain through a fine mesh sieve.
  2. Heat oil in a large pot over medium heat, then sauté the shallots for 1-2 minutes. Then add the pineapple.
  1. Then add the water, tamarind concentrate, fish sauce, sugar, and chicken bouillon powder. Bring to a boil and then reduce to a simmer.
  1. Then add catfish and cook for 5 minutes. Next, add the tomatoes, okra, and elephant ear stem and simmer for 2-3 minutes. Lastly, turn off the heat and add the bean sprouts, rice paddy herb, and sawtooth coriander.
  1. Garnish with chilis and enjoy!

Expert Tips

  • If using tamarind concentrate, add the tamarind gradually. The concentrates vary significantly in strength. Start with less and add more to taste.
  • Skim the broth. As the fish cooks, foam may float to the surface. Skim the scum for a cleaner-tasting broth.
  • Add the vegetables in stages, as each requires a different cooking time. Avoid throwing them all in at the same time.
  • Add the bean sprouts and herbs at the end. These veggies only need seconds to cook. Add them at the end to preserve their flavor and texture.
  • Taste and adjust: adjust the sour, sweet, and salty balance with more tamarind, sugar, or fish sauce.

Storage Instructions

You can store any leftover canh chua in an airtight container in the refrigerator for up to 4 days.

Reheat: place the soup in a pot and warm over medium-high heat, covered, until hot. Alternatively, microwave covered until hot.

Freeze: cool the soup to room temperature, then freeze in a freezer-safe container for up to 3 months. For the best texture, freeze the fish and soup separately from the broth. Defrost in the refrigerator overnight before reheating.

FAQ

What does this Vietnamese sour soup taste like?

It has a nice balance of sour, sweet, salty, and savory flavors. The tamarind provides the tanginess, sugar and pineapple add sweetness, and the fish sauce and tomatoes give the salty umami flavors. The fresh Vietnamese herbs brighten the soup for a fresh, aromatic flavor.

Can I use pork ribs instead of catfish?

Yes! My mom likes to use pork ribs instead. For this, you will need to simmer the pork ribs in water for 90 minutes to 2 hours before adding the remaining ingredients.

Where do I find all of these ingredients?

Some of these ingredients are pretty niche. They are most commonly found in Vietnamese grocery stores. You can also try finding these ingredients at your local Chinese grocery store.

Recipe

Canh Chua (Vietnamese Sweet and Sour Soup)

5 from 1 vote
Prep Time 10 minutes
Cook Time 20 minutes
Total Time 30 minutes
Sweet, sour, and packed with so many fresh flavors, canh chua is Vietnamese comfort food at its best. This Vietnamese sweet-and-sour soup features fresh fish, pineapple, tomatoes, and vegetables.
Servings: 4 servings
Print Recipe

Ingredients

Tamarind

Soup

  • 1 large shallot minced
  • ¼ pineapple cut into bite-sized pieces
  • 2 liters water
  • 3 tablespoons fish sauce
  • 3-4 tablespoons sugar to taste
  • 2 teaspoons chicken bouillon powder
  • 1 catfish about 1 lb, sliced into steaks rinsed
  • 3 Roma tomatoes quartered
  • 1 cup okra stems removed, sliced into bite sized pieces
  • 1 stalk elephant ear stem bac ha, peeled and cut into bite-sized pieces
  • 1 cup bean sprouts
  • ½ cup rice paddy herb ngo om chopped
  • ½ cup sawtooth coriander or ngo gai or culantro, chopped

Garnish

  • Fresno Chilis

Instructions

  • Create tamarind concentrate. Mix the tamarind paste with 1/2 cup of boiling water and let it sit for about 5 minutes. Then mash thoroughly and strain through a fine mesh sieve, scraping as much tamarind as possible. Discard the pulp and seeds.
  • Sauté aromatics and pineapple. Heat 1 tablespoon of oil in a large pot over medium heat. Then sauté the shallots until lightly browned and fragrant, about 1-2 minutes. Then add the pineapple and sauté for 30-60 seconds.
  • Cook the soup. Then add the water, tamarind concentrate, fish sauce, sugar, and chicken bouillon powder. Bring to a boil, then reduce to a simmer for 3 minutes.
  • Add the catfish and veggies. Then add the catfish and cook for 5 minutes, skimming away any foam that floats to the surface. Next, add the tomatoes, okra, and elephant ear stem and simmer for 2-3 minutes. Lastly, turn off the heat, add the bean sprouts, rice paddy herb, and sawtooth coriander, and stir for 30-60 seconds or until just softened.
  • Serve. Garnish with Fresno chilis and serve with a bowl of steamed white rice. Enjoy!

Notes

See the Expert Tips section for more guidance.

Nutrition:

Calories: 334kcal | Carbohydrates: 29g | Protein: 40g | Fat: 7g | Saturated Fat: 2g | Polyunsaturated Fat: 2g | Monounsaturated Fat: 2g | Cholesterol: 131mg | Sodium: 1450mg | Potassium: 1212mg | Fiber: 3g | Sugar: 22g | Vitamin A: 732IU | Vitamin C: 46mg | Calcium: 101mg | Iron: 2mg

Did you enjoy this recipe?

Please leave a 5 star review and tag me on social media @Takestwoeggs 💕

Rate & Review What did you think of this recipe?

5 from 1 vote (1 rating without comment)

Your email address will not be published. Required fields are marked *

Recipe Rating