Vegetarian Tom Yum Soup (Hot and Sour Soup)

Tom Yum Soup
Su Phey Thwach Ra Ph Rn / EyeEm / Getty Images
Ratings (11)
  • Total: 60 mins
  • Prep: 30 mins
  • Cook: 30 mins
  • Yield: 4 to 5 servings
Nutritional Guidelines (per serving)
231 Calories
8g Fat
27g Carbs
21g Protein
(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 version is 100% vegan and so delicious. Feel free to add other vegetables to your soup to add more nutrients and flavors; I often chop up a few broccoli crowns and toss in the broccoli florets a few minutes before I'm ready to serve the soup (broccoli and other greens should always be added towards the end of cooking so that they remain bright green and crisp).

NOTE: I like spicy, so this recipe is for spice-lovers! Omit the chilies for a milder 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 kaffir 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 stock pot, heat the vegetable oil over medium-high heat. Add the minced garlic, minced ginger, and thai chilies (if using). Cook for 2-3 minutes, stirring often, or until the garlic smells fragrant. Add the stock, lemongrass stalks, and kaffir lime leaves. Bring the mixture to a boil, then turn down the heat, cover the pot, and simmer for 5-10 minutes.

  2. Using a slotted spoon, remove the lemongrass stalks and kaffir 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-3 minutes, or until the mushrooms have just slightly wilted. Turn down the heat to a simmer, then add the fresh tomato and extra firm tofu. Simmer for about 3-5 minutes more. Add salt or other spices as desired and serve hot with your favorite cooked noodles or rice. Garnish with fresh cilantro leaves and an extra few drops of chili paste if desired.

Cook's Note:

Lemongrass stalks and kaffir limes leaves are available at Asian markets and specialty stores, but I've been able to find everything else at larger, mainstream chains. They both add a great deal of flavor to the soup, so I highly recommend visiting your local Asian food market! To read more about cooking lemongrass, check out this article on How to Cook with Lemongrass.

When serving Tom Yum, I prefer to place a scoop of cooked rice or about a cup of cooked noodles in the bottom of each bowl and then ladle the soup over the rice or noodles, but feel free to serve the rice or noodles on the side and allow your guests to take as much or as little as they want!