Vegetarian canh chua is a Vietnamese sour soup that swaps the usual fish for tofu and mushrooms, keeping the signature sweet-sour broth that makes this dish so beloved. It’s a light, fragrant meal that comes together in about 45 minutes, using tamarind for tang, pineapple for sweetness, and fresh herbs for a bright finish. This version is fully plant-based, satisfying, and easy to adapt with whatever vegetables you have on hand.
Ingredients
- 8 cups (1.9 L) vegetable broth or water
- 2 tbsp (30 g) tamarind paste (or 1 tbsp tamarind concentrate)
- 1½ cups (225 g) fresh pineapple, cut into bite-sized chunks
- 1 large tomato, cut into wedges
- 1 cup (150 g) taro stem (bac ha), peeled and sliced into 1-inch pieces (optional; substitute with celery or omit)
- 4 oz (115 g) firm tofu, pressed and cut into 1-inch cubes
- 4 oz (115 g) shiitake or oyster mushrooms, sliced
- 1 tbsp (15 ml) vegetable oil
- 2 cloves garlic, minced
- 1 shallot, thinly sliced
- 2 tbsp (30 ml) soy sauce or tamari
- 1 tbsp (15 g) sugar (palm sugar or brown sugar)
- 1–2 Thai bird chilies, sliced (optional, for heat)
- 3 cups (90 g) bean sprouts, rinsed
- 1 cup (30 g) fresh sawtooth herb (ngò om) or cilantro, chopped
- 1 cup (30 g) fresh rice paddy herb (ngò gai) or culantro, chopped (optional)
- 2 tbsp (30 ml) fresh lime juice
- Salt, to taste
Instructions
- Press the tofu: wrap the block in paper towels, place a heavy pan on top, and let sit for 10 minutes. Then cut into 1-inch cubes.
- In a large pot, heat the vegetable oil over medium heat. Add the garlic and shallot, and sauté until fragrant, about 1 minute.
- Add the mushrooms and taro stem (if using). Cook for 3–4 minutes, stirring occasionally, until the mushrooms release their liquid and start to brown.
- Pour in the vegetable broth and bring to a boil. Reduce heat to a simmer.
- Add the tamarind paste and stir until dissolved. If using tamarind concentrate, add 1 tablespoon and adjust later to taste.
- Add the pineapple, tomato, and tofu. Simmer gently for 10 minutes, until the pineapple is tender but not mushy.
- Stir in the soy sauce, sugar, and chilies (if using). Taste and adjust: the broth should be sour, slightly sweet, and salty. Add more tamarind for sourness, sugar for sweetness, or soy sauce for saltiness.
- Add the bean sprouts and cook for 1–2 minutes, just until they are slightly wilted but still crunchy.
- Turn off the heat. Stir in the lime juice and half of the fresh herbs.
- Ladle into bowls and top with the remaining herbs. Serve hot with steamed rice or rice noodles.
Tips
- Tamarind substitutes: If you don’t have tamarind, use 2 tablespoons of lime juice plus 1 tablespoon of brown sugar, or 1 tablespoon of pomegranate molasses. The flavor will be slightly different but still pleasantly sour.
- Don’t skip pressing the tofu: Pressing removes excess water, so the tofu absorbs the broth and crisps up better if you pan-fry it first. For extra texture, you can pan-fry the tofu cubes in a little oil until golden before adding them to the soup.
- Balance the broth: Canh chua should be a balance of sour, sweet, and salty. Taste as you go, and adjust in small increments. The lime juice at the end adds freshness, so don’t add it all at the beginning.
- Vegetable variations: Use okra, eggplant, or water spinach instead of taro stem. If using okra, add it with the pineapple so it cooks through but stays firm.
Serving Suggestions
Serve the soup hot with a bowl of steamed jasmine rice or thin rice noodles. It also pairs well with a side of crispy spring rolls or a simple cucumber salad. For a heartier meal, add more tofu or a handful of fresh herbs on top.
Variations
- Spicy version: Add more Thai chilies or a teaspoon of sambal oelek for extra heat.
- Add protein: Include 1 cup (150 g) of lightly fried tempeh or seitan for a chewier texture.
- Use different mushrooms: King oyster or enoki mushrooms work well. Enoki should be added at the end to avoid becoming mushy.
- Make it gluten-free: Use tamari or coconut aminos instead of soy sauce, and ensure your vegetable broth is gluten-free.
Storage and Reheating
Store leftovers in an airtight container in the refrigerator for up to 3 days. The soup will lose some freshness, and the bean sprouts may soften further. To reheat, warm gently on the stovetop over medium heat until bubbling. Do not microwave for too long, as the tofu can become rubbery. Add a splash of water or broth if it has thickened. For best flavor, consume within 2 days.
Frequently Asked Questions
Can I use canned pineapple? Yes, but drain it well and reduce the sugar in the recipe, as canned pineapple is often packed in syrup. Fresh pineapple gives a brighter, less sweet flavor.
What can I use instead of tamarind? A mixture of lime juice and brown sugar is the closest substitute. Use 2 tablespoons lime juice and 1 tablespoon sugar for every tablespoon of tamarind paste. The soup will be a bit more citrusy.
Is this soup vegan? Yes, this recipe is completely plant-based. Just double-check that your vegetable broth and soy sauce are vegan (some brands may contain fish sauce).
Can I freeze canh chua? It’s not ideal because the tofu and bean sprouts become mushy after thawing. If you must freeze, do so without the bean sprouts and herbs, and add them fresh after reheating.
Why is my broth not sour enough? Tamarind paste varies in concentration. If your broth lacks tang, add more tamarind paste, or a splash of lime juice at the end. Remember that the sourness fades as the soup sits, so adjust just before serving.
Do I need to use taro stem? No, it’s traditional but optional. You can substitute with celery or simply omit it. The soup will still be delicious.
Related
- Poha in English: Flattened Rice Recipe
- Poha Is Made of What? Flat Rice Recipe
- Paneer Butter Masala Without Onion Garlic
More recipes to cook
Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes
Spotted an error? Tell us and we will correct it (corrections policy).