Tom Kha Gai -- Thai Coconut Soup




Introduction: Tom Kha Gai -- Thai Coconut Soup

About: I've been posting Instructables since the site's inception, and now build other things at Autodesk. Follow me for food and more!

A traditional and tasty Thai soup, this is my favorite comparison point between Thai restaurants and an excellent twist on chicken soup for cold winter days.  I'm a huge fan of coconut, chicken soup, and creamy soups in general, so it's a winner for me.

Of course, making it at home means I can customize it to my preferences.  It's surprisingly easy to make!  This recipe is loosely adapted from David Johnson's Thai Food, a brick-sized comprehensive guide to Thai cooking. 

Note that you can make a pescatarian version (fish stock, shrimp instead of chicken) or even vegetarian or vegan (veg stock, tofu for chicken, soy sauce for fish sauce) though the latter will lack some of the pungency that only comes with fish sauce.

Step 1: Tools and Ingredients

This recipe scales beautifully - just multiply the ingredients below.  I've included substitutions for ingredients you may not have easily at hand, but a trip by an asian grocery will turn up everything on this list handily.  I buy lots of lemongrass and galanga ahead, then chop and freeze in pre-sorted ziplok bags for future use.  They keep quite well.  You can also do this with the shallots, coriander root, and kaffir lime leaves.

1 can coconut milk
2-3 cups chicken stock (homemade is best, then the stuff in cartons; boullion cubes are a last resort.)
pinch of salt
1 teaspoon palm sugar (I usually substitute brown sugar)
2 stalks fresh lemongrass, washed and choppped in chunks (dried lemongrass is far inferior - punch it up with extra lime juice and zest at the end if you're forced to go this route)
3 red shallots, peeled and chunked (I often substitute 3 smashed cloves of garlic plus a bit of onion)
2 coriander roots, scraped (I usually substitute a pinch of whole coriander seed plus a handful of fresh coriander (cilantro) leaves)
2 chili peppers, halved (pick your favorite type, and modify number to suit your spice taste)
1.5 inch chunk of galanga root, chunked (ginger is in the same family, but tastes totally different - galanga TOTALLY makes the flavor of this dish.  If you can't get this locally, travel to a nearby city and visit the asian markets or scour the internets, buy a pound, then freeze what you can't use now.  It's a floral flavor that you'll definitely recognize if you've had tom kha gai before.)
3 kaffir lime leaves, coarsely chopped (I have a kaffir lime tree in my yard, but you can substitute lime zest if necessary.  It just won't be as fragrant and complex.)
1 teaspoon chili garlic sauce (optional, and kind of a cheat, but often good.)

1 pound boneless skinless chicken thighs, cut to 1" pieces (you can use breasts, but the thighs are moister and tastier)
1 cup chopped mushrooms (your choice - mix it up)
1-3 Tablespoons fish sauce (This stuff is pungent - if you're not familiar, add incrementally and taste before increasing.  But don't be turned off by the smell.  Definitely use some, as it's a key flavor that softens when you add it to the soup.)
1 can baby corn, drained and chopped to 1/2" chunks (optional)

1 Tablespoon lime juice (more if compensating - see notes above)
1 handful fresh cilantro, chopped
1/2 cup grape tomatoes halved, or 2 plum tomatoes coarsely chopped (optional)


1 large pot, at least 3 qt
cutting board

Step 2: Make Broth

Combine all broth ingredients (coconut milk, stock, salt, sugar, shallots/garlic, coriander, galanga, lemongrass, kaffir lime leaves, chili sauce), bring to a low boil, and simmer for at least 15 minutes.

Step 3: Strain Broth

Pour through a sieve/strainer to remove chunks, and return the broth to your big pot. You can rescue a few items from the strainer, mince them, and return them to the pot if you like - I usually don't bother. 

You can usually smoosh more tasty liquid out of the chunks if you try, so give them a stiff squeeze.

Step 4: Add Chunks

Chop chicken, mushrooms, and baby corn and add to pot with broth.  Add fish sauce, and lime zest if using.  Simmer lightly until chicken is cooked.

Step 5: Finish and Serve

Add the cilantro, tomatoes, and lime juice.  Taste - the soup should be fragrant, with a rich (read: nicely fatty) taste, and a mix of sweet/sour/salty flavors in the broth.  You can tweak the latter with more sugar (sweet), lime juice (sour), or fish sauce (salty and tangy).

Serve hot.

This soup keeps beautifully, and will taste even better the next day after the flavors mingle overnight.  You may want to hit it with a bit more fresh lime after reheating, though, just to keep it zippy.



    • Metalworking Contest

      Metalworking Contest
    • Creative Misuse Contest

      Creative Misuse Contest
    • Water Contest

      Water Contest

    57 Discussions

    I made this today. First time with Tom Kha. It was nothing short of amazing. I added 1/2 can coconut milk to give it a richer flavor (1 1/2 total) and doubled the palm sugar.

    1 reply

    Fantastic recipe and great food photography! Looks so delicious. Last week we had an Instructables Restaurant try-out and your soup was served as well. The people loved it. They finished 20 liters in less than an hour!
    Thanks for sharing this.


    1 year ago

    Very yummy coconut soup and good for health.

    How many servings is this?

    I love thai food and can't wait to try this recipe - it sounds amazingly yum!

    I tried this soup in a restaurant two years ago and fell in love! I found this recipe and bugged the produce manager at my local grocery for a month before he got me galangal. Just put the soup together today, the smell is amazing! Had to sub lime for kaffir lime leaves. Lazy - cut a lime in half and dropped it in. Too citrusy from the flesh of the lime. Used shallot and an extra clove of garlic because I simply cannot follow instructions. :P
    This soup is amazing and almost exactly like I remember! It's definitely my fave. As soon as my sticky rice is done I'll be able to have dinner. Thanks for posting this recipe! :D

    3 replies

    Ah, I panicked for no reason! I added another can of coconut milk, and it's now perfect! Goshdang, your recipe made me so happy! Have a great holiday :D

    I love this soup but I messed up!
    First and second times were amazing, 3rd time I forgot I was cooking and the flavours got muddied and dull, 4th and 5th were good, now this time, I think I've wasted a buttload of ingredients and an expensive organic foraging chicken.
    If you see this, I'll take your advice for future reference. This time the base came out BITTER. I know I let it go too long with the galanga, lime peel (we cant' get kaffir lime leaves here), cilantro, coriander seed, (we can't get coriander root here) lemongrass, and chili sauce but man, it's brownish and has a green tint, even after adding coconut milk. I know I could add another can but not sure if that's going to help the bitter undertone.
    My stock was not really dark, just a nice golden yellow.

    Have you had that problem? Do you know what could cause a bitter taste in this soup? Can you tell me why I turn on the stove and walk away and forget I'm cooking?

    I'm just pissed at myself that a $35 pot of soup is anything less than stellar and it's because obviously screwed up your amazing recipe.

    Thanks again for posting the recipe. It's awesome when I follow the instructions. :P

    Oh other thing that I do. As the galanga root and lemon grass are not edible and rather unpleasant to work around when eating, I put these items in cheese cloth and remove when the soup is ready.

    I make this often and usually a huge pot, just increase the ingredients. One other thing that we do is put a small compacted bowl of rice at the bottom of the soup bowl and then put the soup on top. Stretches it a bit further, but doesn't change the flavour. galanga root is 19.99 a lb where I live, if and when you can find it, so to get a supply of it in the freezer is quite expensive.. but so worth putting in the soup!! Thanks for the fabulous recipie.

    I opened an Instructables account just to post this comment! I made this recipe last night, after a successful pilgrimage this past weekend to a nearby Asian supermarket for galanga, kaffir lime leaves, fresh lemongrass and palm sugar. I was in Bangkok 3 months ago and had a Tom Kha Gai I've been raving/dreaming about ever since. THANK YOU for helping me recapture the taste & the joy! Once I acquired the ingredients, this recipe made it SO simple (& quick!) to prepare. My boyfriend & I loved it and wouldn't change a thing, and the leftovers for lunch today were just as great! YUM. Thank you!

    1 reply

    Awesome! So glad to help. This is my favorite soup, and learning to make it at home was a major life achievement. :)

    This is such a great recipe! I make it with leftover grilled snapper and use just coconut milk(the unsweetened beverage sort, not canned), no broth. I've added long beans, bok choy, various other veggies, it's always very nice!

    1 reply

    This is my go to "chicken soup" recipe. It's amazing. Make it immediately.