Go Back
+ servings
Tom Kha Soup with chicken in a black bowl on a bright blue background with coriander, lemongrass, ginger, and lime leaves.
Print Recipe
5 from 3 votes

Tom Kha Soup - Vegan or Chicken

A sensory delight, this aromatic Thai-inspired coconut soup is flavoured with lemongrass, coriander seeds, ginger, Thai chili, and lime. Make it vegan with puffed tofu, or add chicken to make Tom Kha Gai. 
Prep Time10 mins
Cook Time35 mins
Total Time45 mins
Course: Appetizer, dinner, lunch, side, Soup
Cuisine: Thai
Keyword: spicy thai coconut soup, tom ka soup, tom ka with tofu, tom kha gai, tom kha soup, tom kha with chicken, tom kha with tofu, vegan tom tha soup
Servings: 4 cups
Calories: 529kcal
Author: Sylvia Eastman


  • 800 ml coconut milk
  • 400 ml coconut milk (milk substitute kind) Or use 2% milk if not vegan, or other unsweetened plant-milk}
  • 1/2 cup ginger, roughly chopped
  • 2 tablespoons coriander seeds
  • 1 stalk lemongrass, cut and quartered
  • 4 lime leaves {See recipe notes.}
  • 2-4 Thai chilis, sliced in half and deseeded {The seeds are the spicy part. Only include if you want it very very spicy}
  • 1/4 cup soy sauce
  • 2 tablespoons sugar {See recipe notes.}
  • 2 tablespoons lime juice
  • 8 mushrooms, sliced
  • 12 cherry tomatoes, halved
  • 2 tablespoons cilantro

For Chicken Version

  • 1 cup shredded cooked chicken
  • 1/4 cup fish sauce

For Tofu version

  • 50 grams tofu puffs {Or substitute with tofu of choice.}
  • 2 teaspoons black bean sauce {If available, replace with vegan fish sauce to taste.}


Make the base sauce:

  • In a large saucepan, combine the milks, ginger, coriander seeds, lemongrass, lime leaves and Thai chilis. 
  • Put the sauce on a low boil and let it simmer to infuse the flavours for about 30 minutes. 
  • Strain the ginger, coriander, lemongrass, lime, and chilis from the milk. If you are making both the vegan and the chicken version, now's the time to separate the infused coconut milk into two separate sauce pans. 
    Set aside to use as garnish, if desired. 
  • Add the soy sauce, sugar, and lime juice. 

For the Chicken version:

  • Add the fish sauce and shredded chicken.
    Add the mushrooms and tomatoes.
    Simmer for about 5 minutes until the chicken is warmed through. 

For the Tofu version:

  • Add the black bean sauce and puffed tofu. 
    Add the mushrooms and tomatoes.
    Simmer for about 5 minutes until the tofu is warmed through. 

For all versions

  • To serve, garnish with cilantro and if desired, any of the aromatics (lemongrass, lime leaves, etc). Beware though that these are pretty but not really practical to eat. 


Please read the post for detailed information about the ingredients and where to find them. This is a summary of key points:
  1. This recipe doesn't require any broth. The broth is replaced with coconut milk (the drink substitute kind, not the canned kind) or any unsweetened plant-milk, if vegan, or just regular dairy milk if you're not vegan.
  2. Traditionally, this recipe is made with palm sugar, which has a beautiful caramel taste. If you can't find it, you can swap coconut sugar, brown sugar, or even white sugar, being sure to use vegan white sugar if need be.
  3. This recipe is traditionally made with galangal. I've suggested ginger as it's easier to find, but use galangal if you can find it. 
  4. If you can find a vegan version of fish sauce, use that. If not use black bean sauce to achieve that same funky fermented flavour. Do not swap the fish sauce 1 for 1 with the black bean sauce. This recipe uses 1/4 cup of fish sauce or 2 teaspoons of black bean sauce. 
  5. Lime leaves will keep well in your freezer and they only take a few minutes to defrost. 
  6.  You can keep the lemongrass in the freezer, tightly wrapped. 
  7. You should be able to find most of the ingredients at an Asian grocery store, or even some well-stocked grocery stores.


Calories: 529kcal | Carbohydrates: 24g | Protein: 10g | Fat: 47g | Saturated Fat: 39g | Sodium: 846mg | Potassium: 817mg | Fiber: 2g | Sugar: 11g | Vitamin A: 280IU | Vitamin C: 21.5mg | Calcium: 104mg | Iron: 8.3mg