Tom Kha Soup (Thai Coconut Soup)

Step by StepJump to Recipe

Spicy, sweet, sour and umami, my vegan recipe for Tom Kha is a sure dinner winner that hits ALL of the flavor notes. This Thai Coconut Soup is one of the best ways to add a little brightness to your day, whether you’re just cold or feeling under the weather.

overhead shot of vegan tom kha (thai coconut soup) over rice noodles in a white bowl with a blue rim on a white marble table with a silver spoon

What is Tom Kha

In Thai, tom means “soup” or “boiled,” and kha means “galangal,” which is a member of the same family as ginger and turmeric. Tom Kha is a popular Thai hot and sour soup that can be made with chicken (tom kha gai), seafood (tom kha goong), or, in my case, with veggies and mushrooms.

Creamy coconut milk provides the perfect backdrop for this piquant soup. The essential herbs and spices added are Kaffir lime leaves, galangal, lemon grass, Thai chilies, and lemon juice. These spicy and sour flavors are traditional for Thai coconut soup, so I recommend using all of them if possible.

Why This Recipe Works

Tom kha is something I could eat every single day. Whenever I feel less than 100%, I love making this comforting and soothing soup. There seems to be a little magic in it, as I almost always feel better after eating a bowl.

As a vegetarian, I make this soup with veggies and mushrooms. Feel free to swap in your own favorites, as this soup recipe is quite flexible and tastes great with just about any veggies you like. And if you’re craving more protein, feel free to add in some tofu!

If you prefer more of an umami bomb, you can also opt to make the soup exclusively with mushrooms. Feel free to use a mix of mushrooms like button, cremini, shiitake or straw mushrooms. You can also use dried mushrooms if you’d rather. I happen to love umami flavors, so I also add an extra dose with dried mushroom powder. Yum!

To get some of the flavor you would get from fish sauce while staying vegan, I used soy sauce instead. If you are avoiding gluten, opt for Tamari, Bragg’s aminos or coconut aminos instead. Kaffir lime leaves help to cement the citrus flavor, while galangal offers a distinctive flavor that makes this Thai coconut soup feel more authentic.

The remaining flavors work in harmony. Sour flavors from lemongrass and fresh lemon juice mingle with (and almost amplify) the hotness from the Thai red chiles. The coconut milk helps to tame some of the heat of the chiles while offering a creamy consistency that gives off sweet undertones. I’m not kidding, tom kha is HEAVENLY.

It’s healthy, too!

With less than 200 calories per serving, I’d venture to say that this Thai coconut soup is perfect for any diet. If you are following a paleo lifestyle, this recipe is an excellent choice for you. In fact, if you substitute the soy sauce for coconut aminos and omit the palm sugar, it’s even Whole30 approved.

With just 12 net carbs per serving, it is also appropriate for those of you following a low carb diet. My vegetarian tom kha soup is also packed with all of the nutritional content of a wide variety of vegetables, boasting nearly half of your daily recommended values of vitamins A, B and C. How’s that for healthy eating?

If you want to bulk up your meal a bit, this Thai coconut soup can be served with any noodles or rice. I prefer serving it with flat rice noodles or steamed rice, but it is quite lovely served solo.

bowl of vegan tom kha soup with a silver spoon
Step-by-Step Guide

How to Make Tom Kha Soup


1. First prep your ingredients. Rinse the herbs, mushrooms and veggies. Chop the veggies and mushrooms, then set aside.

Slice or chop 2 lemongrass stalks and 6 small-sized Thai red chilies (bird’s eye chilies). Peel and slice 1.5 to 2 inches galangal – when chopped, it should yield 1 tablespoon sliced galangal. Tear 6 to 7 kaffir lemon leaves.

sliced lemongrass, Thai red chiles, galangal and torn kaffir lime leaves on a wooden cutting board

Sauté Vegetables

2. Heat 2 tablespoons coconut oil in a pan. Add ⅓ cup sliced onions and ½ teaspoon finely chopped garlic.

TIP: Feel free to make some substitutions here based on what you have in your pantry. You can use sunflower oil or sesame oil in place of the coconut oil. You can also use shallots, pearl onions (even frozen!) or small onions instead.

sliced onions sautéing in oil

3. Sauté for two minutes on low to low-medium heat, until the onions begin to soften.

sautéed onions in skillet

4. Now you can add your choice of mix veggies to the soup. I used the following:

  • ⅓ cup chopped carrots
  • ½ cup chopped cauliflower florets
  • 2 cups chopped white button mushrooms
  • ¼ to ⅓ cup sliced baby corn
  • ⅓ cup chopped capsicum (green bell pepper)
melange of vegetables added to skillet with sautéed mushrooms

5. Mix well and sauté for 2 to 3 minutes on low to medium-low heat.

vegetables that have been sautéed for Thai coconut soup

6. Now add the chopped Thai chillies, torn kaffir leaves, sliced galangal and lemongrass stalks, and ½ teaspoon sea salt (as needed).

TIP: Remember that we will be adding soy sauce later, so start slowly with adding salt now.

kaffir limes, thai red chiles, galangal and lemongrass added to vegetable mix

7. Then add 1.5 cups water or Homemade Vegetable Stock. Mix well.

water added to veggies and spices for tom kha soup recipe

Cook Veggies

8. Cover and simmer on low to medium-low heat until vegetables are tender. This should take roughly 12 to 15 minutes.

lid on stockpot with Thai soup

9. The veggies should be tender enough to eat with a spoon. You can keep them al dente if you prefer more crunch, but keep in mind that this is a soup.

shot of veggies simmering in water

10. Add ⅓ cup diced tomatoes (or 4 to 5 cherry tomatoes), 1 tablespoon naturally brewed soy sauce, 1 teaspoon palm sugar and 1 tablespoon shiitake mushroom powder (if using), when the veggies are cooked tender.

TIP: No palm sugar? Swap in date/maple syrup or coconut/brown sugar instead.

diced tomatoes and mushroom powder added to tom kha soup

11. Mix and simmer for 2 to 3 minutes on medium-low heat. 

vegetable tom kha soup simmering on stovetop prior to adding coconut milk

Finish Tom Kha Soup

12. Add 1 cup thick coconut milk and gently heat for 1 to 2 minutes on a low heat.

TIP: You don’t want the soup to “split” here, so make sure you keep the heat on LOW. Do not allow it to come to a boil.

coconut milk added to Thai soup - no more bubbles, as it is over low heat

13. Switch off the heat, add 1 tablespoon of lemon juice and stir. Feel free to adjust the amount of lemon juice you use to make it even more sour.

tablespoon of lemon juice above pot of tom kha soup

14. Pour into soup bowls. Garnish with fresh coriander leaves (cilantro) and serve hot. To turn tom kha into a heartier meal, serve with hot noodles (rice or flour based) or steamed rice. Enjoy!

vegan tom kha over rice noodles in a white bowl and garnished with chervil


What is the difference betweem Tom Yum and Tom Kha?

Both are hot, spicy and sour soups but Tom Kha has coconut milk in it and Tom Yum is made without any coconut milk. You can check out my recipe for delish and spicy Tom Yum Soup.

Is Tom Kha soup good for when you have a cold?

Yes, absolutely. It has herbs like lemongrass, galangal and citrus which all aid in soothing your cold. The spice from the chiles can also help to open up your sinuses, and the bright flavor is enough to perk up even the saddest of tastebuds.

Also, soups in general are a great way to get lots of liquid into your body while you eat, which is a great way to help your body fight off infection. Stay hydrated, my friends!

What if I don’t like mushrooms?

While I happen to adore mushrooms for their umami flavor, you certainly don’t have to incorporate them into your version of this tom kha soup recipe. Feel free to stir in a tablespoon or so of miso paste to help replace some of the umami while avoiding mushrooms.

What are the best mushrooms to use for this vegetarian Tom Kha soup?

I personally like button mushrooms. Shiitake mushrooms also work well. But honestly, there are so many excellent mushrooms out there these days that you can choose your favorites. Oyster, lion’s mane and creminis are all tasty in their own right.

Both fresh and dried mushrooms can be added. For dried mushrooms, rinse them thoroughly and soak them in warm water for a couple of hours. The brodo (mushroom soaking liquid) is a potent flavor booster, so feel free to add some to your Thai coconut soup or save it to make risotto later.

I also add shiitake mushroom powder for even more umami, but you can omit it if you do not have it.

More Thai Inspirations!

Please be sure to rate the recipe in the recipe card or leave a comment below if you have made it. For more vegetarian inspirations, Sign Up for my emails or follow me on Instagram, Youtube, Facebook, Pinterest or Twitter.

overhead shot of vegan tom kha (thai coconut soup) over rice noodles in a white bowl with a blue rim on a white marble table

Tom Kha Soup (Thai Coconut Soup)

Spicy, sweet, sour and umami, my vegan, vegetarian Tom Kha recipe is a sure dinner winner. This Thai Coconut Soup is packed with vegetables and mushrooms for a heathy, delicious meal paired with rice noodles or steamed rice.
5 from 6 votes
Prep Time 10 minutes
Cook Time 20 minutes
Total Time 30 minutes
Cuisine Thai, World
Course Soup
Diet Gluten Free, Vegan, Vegetarian
Difficulty Level Moderate
Servings 4


  • 2 tablespoons coconut oil or sunflower oil or sesame oil
  • cup sliced shallots or pearl onions or small onions
  • ½ teaspoon finely chopped garlic
  • cup chopped carrots
  • cup chopped capsicum (green bell pepper)
  • ½ cup chopped cauliflower florets
  • 2 cups chopped button mushrooms – 200 grams or cremini or fresh oyster mushrooms
  • ¼ to ⅓ cup sliced baby corn
  • 1 tablespoon sliced galangal or 1.5 to 2 inches galangal
  • 1 tablespoon sliced lemongrass stalks or 2 lemongrass stalks
  • 6 to 7 kaffir lime leaves
  • 6 bird's eye chilies or small Thai red chilies, diagonally sliced, or add as required
  • 1.5 cups water or Vegetable Stock
  • ½ teaspoon sea salt or regular salt, add as required
  • cup diced tomatoes or 1 small to medium tomato or 4 to 5 cherry tomatoes
  • 1 tablespoon soy sauce (naturally brewed) or tamari, coconut aminos or Bragg's aminos
  • 1 teaspoon palm sugar or coconut sugar or raw sugar or brown sugar
  • 1 tbsp shiitake mushroom powder – optional
  • 1 cup Coconut Milk (Thick)
  • 1 tablespoon lemon juice or add as required
  • 1 to 2 tablespoons coriander leaves (cilantro) – for garnish


Sautéing Veggies

  • Heat oil in a pan. Add sliced shallots or onions finely chopped garlic.
  • Saute for two minutes on low to low-medium heat.
  • Add the chopped veggies and sliced mushrooms. You can add your choice of mix veggies to the soup.
  • Mix well and saute for 2 to 3 minutes.
  • Add water. You can also add homemade vegetable stock.
  • Now add the sliced lemongrass stalks, galangal, kaffir lime leaves, and thai chilies.
  • Season with salt and mix well. Keep in mind to add less salt as soy sauce which may have some salt, will be added later to the recipe.

Cook Veggies

  • Cover and simmer on low to medium-low heat until the vegetables are tender. Do not overcook the veggies. This takes about 12 to 15 minutes.
  • Then add tomatoes, mushroom powder (optional), palm sugar, and soy sauce. Mix and simmer for 2 to 3 minutes on medium-low heat.

Finish Tom Kha

  • Add coconut milk. Mix well and heat for 1 to 2 minutes on a low heat. Do not boil so that the coconut milk does not get split.
  • Lastly, add lemon juice and stir.
  • Pour in soup bowls. Garnish with cilantro and serve hot. You can even place some hot noodles or steamed rice in the bowl and pour soup over the noodles or rice.


The approximate nutrition info is for the tom kha soup only and does not include the rice noodles. 

Nutrition Info (Approximate Values)

Nutrition Facts
Tom Kha Soup (Thai Coconut Soup)
Amount Per Serving
Calories 158 Calories from Fat 99
% Daily Value*
Fat 11g17%
Saturated Fat 9g56%
Sodium 356mg15%
Potassium 377mg11%
Carbohydrates 14g5%
Fiber 2g8%
Sugar 5g6%
Protein 3g6%
Vitamin A 1953IU39%
Vitamin B1 (Thiamine) 1mg67%
Vitamin B2 (Riboflavin) 1mg59%
Vitamin B3 (Niacin) 2mg10%
Vitamin B6 1mg50%
Vitamin B12 1µg17%
Vitamin C 34mg41%
Vitamin D 1µg7%
Vitamin E 1mg7%
Vitamin K 6µg6%
Calcium 26mg3%
Vitamin B9 (Folate) 30µg8%
Iron 1mg6%
Magnesium 20mg5%
Phosphorus 79mg8%
Zinc 1mg7%
* Percent Daily Values are based on a 2000 calorie diet.

Share This Recipe:


Meet Dassana

Welcome to Dassana's Veg Recipes. I share vegetarian recipes from India & around the World. Having been cooking for decades and with a professional background in cooking & baking, I help you to make your cooking journey easier with my tried and tested recipes showcased with step by step photos & plenty of tips & suggestions.

Get My Secrets to Great Indian Food
Sign up for my FREE Beginners Guide to Delicious Indian Cooking

More Vegetarian Recipes You'll Love

Comments are closed.


  1. Wow this was INCREDIBLE!! Loved by vegetarian and Omni alike. I am on the opposite coast of the only Thai restaurant I’ve been to that had vegetarian tom kha that was worth writing home about. This recipe made just as delicious, if not more delicious, soup!

    My Omni partner was floored it didn’t have chicken to help flavor it. I used better than bouillon’s stock bases: half veggie base, half no-meat “chicken.” Omitted the tomatoes and shiitake powder.

    Kept the Thai chilies at 7 even though I tripled the recipe—mine were quite spicy! Absolutely bonkers good, high on the can’t-wait-to-remake list!5 stars

    1. Lovely! So glad to read your feedback and review. Thanks for taking the time to write the review and the variations you made. Happy!

  2. This recipe is appetizing, flavorsome, succulent and luscious…. My soup was a superhit at home, it came out just perfect!
    Thank you Dassana, you are a star! ⭐️ 🌟 💫5 stars

    1. Wow and thank you for such a lovely feedback, Jaya. In fact Tom kha soup is favorite at my home and we all love it. Thanks for the rating too. Stay safe.