Thai Hot & Sour Soup (Tom Yum)

For me this time of year always drags. It’s cold, it gets dark far too early, and the excitement of the holidays has passed. I wasn’t always a soup aficionado, but in recent years I have really come to love curling up with a hot bowl of delicious soup on a cold winter day. This week, I’m making a vegetarian variation of Thai Tom Yum soup, also known as hot and sour soup.

Tom Yum (sometimes called Tom Yam) comes from the word tom, meaning boiled, and yum (or yam), meaning “mixing things together to achieve the mélange of sweet, sour and spicy notes” (source). This soup features Thai ingredients and there are several variations, including prawns or chicken. I made a vegetarian version, using tofu instead of prawns, vegetable broth instead of chicken stock, and soy sauce instead of fish sauce.

I first made this dish when I visited Thailand in 2018 and took a cooking class by Smart Cook Thai Cookery School. I highly recommend taking one of their classes, available in Ao Nang, where I took it, or in Chiang Mai. I also learned to make Thai Green Curry and Thai Spring Rolls in the class! This was also one of the first cooking classes I took while traveling, and I seriously regret not doing so sooner. Although yes they are geared towards tourists, and yes it is only a glimpse into a complex cuisine, you can still learn a lot in a short time.

Let’s make soup!

Sources: Wikipedia, Lemongrass Substitutes, Galangal Root, Hot Pepper Scolville Chart, Thai Soups Explained, Smart Cook Thai Cookery School

This soup is one pot and can be ready in 15 minutes, and it’s oil-free, vegan, and flavor-packed! My favorite version uses herbs common in Thai food, including lemongrass, galangal, makrut lime leaves, and Thai chilis. These ingredients aren’t always easy to find, which is why I recently stocked up at Bangkok Center Grocery in Chinatown. Of course, if you don’t have a Thai or Asian market nearby, there are a few options available to you. Some stores will sell a prepared Tom Yum Paste with all the spices you need prepackaged. Alternatively, you can use local products to substitute these herbs. My only warning is that the more substitutions you make, the harder it will be to get the final product you’re expecting.

Here’s a list of the Thai ingredients used and possible substitutes (I have not personally tested them all):

  • Lemongrass, which is a tropical grass that gives food a lemony flavor, can be substituted with lemon zest.
  • Galangal, a spicy root related to ginger and turmeric, can be substituted with ginger.
  • Makrut lime leaves, which come from the makrut lime native to Southeast Asia, can be substituted with lime zest.
  • Thai chilis can be substituted with other hot peppers. There are several varieties of Thai chilis, but the ones used here fall between the cayenne pepper and the habanero on the Scolville scale, so – pretty hot! The cayenne and habanero would be the best substitutes, and I always recommend starting with less and slowly adding more chili to your taste.
  • Straw mushrooms originate in Southeast Asia and are common in Thai cuisine, and you may even be able to find them in the canned goods section of your grocery store. Enoki mushrooms originate in Japan and China, but also play a role in Thai cuisine. However any mushroom will do for this soup!

Two kitchen tools that are useful in this recipe are a mortar and pestle and a food scale. These are totally option, but handy. The mortar and pestle is a great tool for grinding the fresh spices into a paste, while the food scale helps with accurate measurement. I have included the measurements for this recipe in both cups and grams.

I like to make this soup to order because it’s quick and fresh. Chop everything before you start and mash the lemongrass, galangal, makrut lime, and Thai chilis into a paste with a mortar and pestle if you have one. This was a deviation from the original recipe given, only for the reason that I preferred the soup more with the herbs integrated into the broth rather than chunky.

Heat your vegetable broth in a small pot with the herb paste until boiling, then add the tofu. Add the mushrooms and onions and let boil for a few minutes until they’re cooked. Then add the tomato and slowly soy sauce, sugar, and lemon juice. When ready to serve, top with chopped cilantro. Enjoy!

Hot & Sour Thai Soup

15 minutes

  • 2 teaspoons fresh lemongrass, sliced
  • 2 teaspoons galangal, minced
  • 1 makrut lime leaf, chopped
  • 2 small Thai chilis (1 teaspoon chili), diced
  • 2 cups vegetable broth
  • 1 cup (100 grams) tofu, chopped into 1″ cubes
  • 1/2 cup (60 grams) white onion, diced
  • 1/2 cup (30 grams) enoki mushrooms
  • 1/4 cup (30 grams) straw mushrooms
  • 1/2 cup (60 grams) tomato, diced
  • 2 tablespoons soy sauce
  • Juice of 1/2 lemon
  • 2 teaspoons sugar
  • 2 tablespoons fresh cilantro


  • One small pot
  • Mortar & pestle (optional, for grinding herbs into a paste)
  • Food scale (optional)


  1. Grind the lemongrass, galangal, makrut lime leaf, and Thai chilis into a paste using a mortar and pestle (or chop finely).
  2. Heat the vegetable broth in a small pot. Add the paste and bring to a boil, about 5 minutes on medium high heat.
  3. Add the tofu, mushrooms, and onions to the pot. Boil for approximately 3 minutes, or until everything is cooked.
  4. Add the tomatoes. Stir, and add soy sauce, lemon juice, and sugar.
  5. Top with fresh chopped cilantro and serve hot.

2 Comments Add yours

  1. Joni says:

    Ooh that’s a lot of coriander. I suppose you mean cilantro?

    Liked by 1 person

    1. Yes, fresh cilantro not ground coriander! Good catch, I’ll fix that 😀

      Liked by 1 person

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.