Vegetarian Tom Yum Soup (Hot and Sour Soup)

Tom Yum Soup in bowl
Su Phey Thwach Ra Ph Rn / EyeEm / Getty Images
  • Total: 60 mins
  • Prep: 30 mins
  • Cook: 30 mins
  • Servings: 4 to 5 servings
Nutritional Guidelines (per serving)
231 Calories
8g Fat
27g Carbs
21g Protein
See Full Nutritional Guidelines Hide Full Nutritional Guidelines
Nutrition Facts
Servings: 4 to 5
Amount per serving
Calories 231
% Daily Value*
Total Fat 8g 10%
Saturated Fat 1g 6%
Cholesterol 0mg 0%
Sodium 1324mg 58%
Total Carbohydrate 27g 10%
Dietary Fiber 5g 20%
Protein 21g
Calcium 389mg 30%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)

Tom Yum Soup is a traditional dish of Thailand that is usually prepared with shrimp or chicken stock and other non-vegetarian ingredients, but this delicious version is 100% vegan. Feel free to add other vegetables to your soup to add more nutrients and flavors; you can chop up a few broccoli crowns and toss in the broccoli florets a few minutes before serving the soup.


  • 1 tsp. vegetable oil
  • 1 tbsp. garlic (minced fresh)
  • 2 tsp. fresh minced ginger (or sliced galangal)
  • Optional: 3 to 4 Thai chilies (seeded and finely diced)
  • 6 cups vegetable stock
  • 2 stalks lemongrass (peeled and chopped into 4-inch pieces)
  • 2 to 3 whole makrut lime leaves
  • 1 to 2 tsp. hot chili paste (read the label to make sure that all ingredients are vegetarian, plus more for garnishing)
  • 1 tsp. sugar
  • 2 tbsp. soy sauce
  • 2 tbsp. lime juice (fresh)
  • 1 cup mushrooms (fresh shitake or oyster mushrooms, sliced; if these aren't available, substitute crimini or button mushrooms)
  • 1 12-ounce can straw mushrooms
  • 1 cup fresh tomato (chopped)
  • 1 lb. tofu (extra-firm, drained and pressed, then chopped into 1" cubes)
  • Optional garnish: fresh cilantro
  • Optional garnish: a few drops of chili paste

Steps to Make It

  1. In a large stockpot, heat the vegetable oil over medium-high heat. Add the minced garlic, minced ginger, and thai chilies (if using). Cook for 2 to 3 minutes, stirring often, or until the garlic smells fragrant.

  2. Add the stock, lemongrass stalks, and makrut lime leaves. Bring the mixture to a boil, then turn down the heat, cover the pot, and simmer for 5 to 10 minutes.

  3. Using a slotted spoon, remove the lemongrass stalks and makrut lime leaves. Add the hot chili paste, sugar, soy sauce, and fresh lime juice, stirring to combine, and bring the mixture back to a boil. Add the fresh mushrooms and canned mushrooms and cook for 2 to 3 minutes or until the mushrooms have just slightly wilted.

  4. Turn down the heat to a simmer, then add the fresh tomato and extra firm tofu. Simmer for about 3 to 5 minutes more. Add salt or other spices as desired and serve hot with your favorite cooked noodles or rice.

  5. Garnish with fresh cilantro leaves and an extra few drops of chili paste if desired.

Cook's Note

Lemongrass stalks and makrut limes leaves are available at Asian markets and specialty stores, but you should be able to find everything else at larger, mainstream chains.

Recipe Tags: