Tom Kha Soup (Vegan Thai Coconut Soup)
This Tom Kha Soup recipe is a plant based version of the traditional Thai coconut soup. The broth is made with coconut milk simmered gently with onions, garlic, galangal, lemongrass and kaffir lime leaves. I add vegetables and mushrooms to this base, plus lemon juice, chilies and a little soy sauce for a balanced tangy, spicy and savory flavor. It turns creamy, bright and mildly spicy, and works well as a warm appetizer or a light meal.
About Tom Kha Soup Recipe
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.
Table of Contents
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 flavor, 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 like. I happen to love umami flavors, so I also add an extra dose with dried mushroom powder.
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. Tangy flavors from tomatoes and fresh lemon juice mingle with (and almost amplify) the hotness from the Thai red chilies.
The coconut milk helps to tame some of the heat of the chilies while offering a creamy consistency that gives off sweet undertones. I’m not kidding, tom kha is heavenly.
Spicy, sweet, sour and umami, my Tom Kha recipe 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.
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.

If you love Thai food, do check these recipes too:
How to make Tom Kha Soup
You’ll see this Thai coconut soup comes together in small steps. Each part builds flavor, so take a minute to prep everything before you start cooking.
Prep
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.

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.

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

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)

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

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.

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

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

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.

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.

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

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.

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.

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.

Expert Tips
- Vegetables: Feel free to include vegetables of your choice. Also, add mushrooms that are easily available to you. For dried shiitake mushrooms, rinse and rehydrate them in water for a few hours.
- Coconut milk: Use thick coconut milk in the recipe and not lite coconut milk. You can also use coconut cream, but thin it down a bit by adding some water.
- Spice levels: Reduce the quantity of Thai chilies (bird’s eye chilies) for a less spicy Tom Kha.
- Sauces and seasonings: Adjust the quantity of soy sauce, palm sugar, lemon juice according to your taste.
- Substitutes: In place of coconut oil, you can use sesame oil or sunflower oil; in place of shallots, you can use pearl onions or small onions; in place of palm sugar, you can use coconut/brown sugar or date/maple syrup.
- Galangal and lemongrass: If you can’t find fresh galangal or lemongrass, use the paste versions. Start with a small amount and adjust so the flavor doesn’t get too strong.
- Balancing sourness: Tom Kha can turn too tangy depending on the lemons or limes you use. Always add the citrus at the end and taste before adding more. A splash of coconut milk can round off extra sourness.
FAQs
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 chilies 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 like 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 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.
Step by Step Photo Guide Above

Tom Kha Soup (Vegan Thai Coconut Soup)
Ingredients
- 2 tablespoons coconut oil or sunflower oil or sesame oil
- ⅓ cup onions – sliced, can use pearl onions or shallots
- ½ teaspoon garlic – finely chopped
- ⅓ cup carrots – chopped
- ⅓ cup capsicum – chopped (green bell pepper)
- ½ cup cauliflower florets – chopped
- 2 cups or (200 grams) button mushrooms – can swap with cremini or fresh oyster mushrooms
- ¼ to ⅓ cup baby corn – sliced
- 1 tablespoon galangal – sliced, or swap with 1.5 to 2 inches galangal
- 1 tablespoon or 2 small lemongrass stalks – sliced
- 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 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
Instructions
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.
Notes
- Vegetables: Use any vegetables you like. Add mushrooms that are easy to find. If using dried shiitake, rinse and soak them in water for a few hours.
- Coconut Milk: Use thick coconut milk and not lite coconut milk or thin milk. Coconut cream also works, but mix in a little water to thin it.
- Spice level: Cut down the Thai chilies (bird’s eye chilies) if you want a milder soup.
- Sauces and seasonings: Taste and adjust the soy sauce, palm sugar and lemon juice as needed.
- Substitutes: Swap coconut oil with sesame or sunflower oil. Replace shallots with pearl onions or small onions. Replace palm sugar with coconut sugar, brown sugar or a little date or maple syrup.
- Note: The approximate nutrition info is for the tom kha soup only and does not include the rice noodles.






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!
Lovely! So glad to read your feedback and review. Thanks for taking the time to write the review and the variations you made. Happy!
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! ⭐️ ? ?
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.