When someone asks, "I'm new to Thai food, what should I make first?" Tom kha gai is my answer. Tom yum maybe the most famous soup of Thailand, but its milder creamier sister, tom kha gai, is my go-to when I'm in the mood for something comforting. This Thai coconut chicken soup is infused with the classic Thai herbs: lemongrass, galangal, and makrut (kaffir) lime leaves. This recipe is easy, quick, and a must-try for Thai food lovers.

Want to save this recipe?
What is Tom Kha Gai?
Tom kha gai ต้มข่าไก่, which is sometimes spelled tom ka gai or tom kha kai, is one of the most popular soups amongst Thai food lovers. Tom means to boil, kha means galangal, and gai means chicken. So it's a chicken soup whose main flavour comes from galangal, but another key component not mentioned in the soup is coconut milk.
Tom kha gai soup is available at nearly every Thai restaurant overseas, but because it's such an easy recipe, it's a dish that's perfect for simple weeknight home cooking. Though chicken is the original version, you can make tom kha using other proteins. Typically in Thailand, alternative proteins are fish or seafood, as they pair best with the flavour profile of tom kha soup.
Tom kha gai is a great dish to make for a party because it is gluten-free, not too spicy, has easy-to-love flavours, and it can be made vegan with modifications I provide later on in this article.
Ingredients and Notes
Here are all the ingredients for my tom kha gai recipe and important notes about them. For the amounts, see the full recipe card below. There aren't that many, but each one is critical to the flavour of the soup. Kha in the soup name refers to the galangal, so that's the the one ingredient that cannot be substituted.

If you want to learn more about some of the Thai ingredients listed below, simply click the link to watch my "101" videos on them!
- Boneless skinless chicken thighs. Chicken breast is okay to use, but the methods need to be modified as per the notes in the recipe card.
- Chicken broth or stock, unsalted, preferably homemade. Good quality of the stock will greatly improve the final product.
- Coconut milk. I recommend using UHT pasteurized coconut milk that comes in paper cartons as they taste much better than canned. Aroy-D is my preferred brand but Chaokoh is also okay to use. Read more about coconut milk quality in my guide to coconut milk.
- Lemongrass, bottom half only, smashed until broken and cut into 2-inch pieces. Fresh or frozen are both acceptable in this recipe. Dried is not ideal, but okay if that's all you have. Do not use powdered lemongrass.
- Galangal, thinly sliced into rounds. This is a key flavour of the soup so it cannot be skipped or substituted. Some people say you can use ginger, and while you can use it, the flavour will not be the same. If fresh is not available, look for frozen galangal at your Asian grocery store. *If your frozen galangal comes in a whole piece, let it thaw at room temp for 10-15 minutes just until it's soft enough to slice. Put it back in the freezer after you've sliced off what you need. Do not let it thaw completely or it'll turn mushy.
- Makrut lime leaves (aka kaffir lime leaves), twisted to bruise and torn into chunks. Fresh or frozen will work for this. Dried is not ideal, but okay to use if that's all you have.
- Thai chilies, smashed just until broken. This soup is not meant to be very spicy, so letting whole, broken chilies gently infuse into the soup gives just enough of a kick. If making this soup for kids you can omit the chilies altogether.
- Oyster mushrooms or another Asian mushroom. In Thailand straw mushrooms are traditional, but since they are not available here my preference is for oyster mushrooms.
- Fish sauce.
- Palm sugar. If not available you can sub light brown or white sugar. Since it is used in a small amount, what kind of sugar you use is not important.
- Cilantro or green onions for garnish
- Fresh lime juice
How to Make Tom Kha Gai
Here's a bird's eye view of how to make tom kha gai, but to ensure success, be sure to watch the video tutorial in the recipe card below as it's always good to see how it's done, and I often include extra tips you don't want to miss!

- Bring chicken stock and salt to a boil, add the chicken and simmer for 15 minutes until fork tender.
- Add coconut milk.
- Add the herbs and the chilies.
- Add the mushrooms.

- Add about half of the fish sauce and sugar and simmer for 5 minutes.
- Turn off the heat and add most of the lime juice, holding back a little. Taste and add more of the reserved fish sauce and lime juice to taste.
- Stir in chopped cilantro and/or green onions.
- Serve on its own or with jasmine rice!
Vegan Modification
Even though chicken is at the heart of this soup ("gai" in tom kha gai means chicken), there is a way to make a vegan version that's still quite satisfying. Here are some simple modifications:
- Use vegetable broth instead of chicken. I recommend checking out the veggie stock I made for my mushroom tom yum recipe. I don't recommend Western-style store bought vegetable broth as those tend to have a flavour that doesn't work here.
- Instead of chicken, I love using a fun mix of Asian mushrooms. Oyster, shimeji, fresh shiitake, or maitake are all great candidates. Of course you can substitute tofu instead if you like it, and for soup I always recommend fried tofu or tofu puff as they absorb more of the broth than fresh tofu.
- Add some tomatoes. Since there's only mushrooms, to add some variety and extra umami, I love to add tomatoes. Using halved cherry tomatoes are better as they are less likely to turn to mush in the soup. The combination of tomato and coconut is divine.
- Use soy sauce instead of fish sauce. Or if you have a favorite brand of vegan fish sauce, go ahead and use that.
Shortcut: Making Tom Kha Gai Without Chicken Stock
If you don't have any chicken stock, you can make tom kha gai with water, but obviously you will be giving up some flavour. But there is a trick that will not result in any flavour compromise! Instead of boneless chicken thighs, use chicken drumettes. The bones and collagen will make the broth rich and delicious, you're basically making chicken stock WHILE making the soup itself! The methods will remain the same, but if your drumettes are large you will need to increase the initial simmering time to 20 minutes.
This is the technique I use in my quick and easy tom yum chicken wings recipe, so check that recipe out if you want to see how this technique works!
Frequently Asked Questions
For this dish, nothing. kha means galangal, so you really can't make this soup without it. However, if fresh isn't available, look for frozen galangal which works perfectly, and if needed you can use dried galangal as well.
No, ginger is not a good substitute for galangal. But if you decide to use ginger instead anyway, know that the flavour of the soup is going to be quite different from the galangal version.
Tom kha gai is a great soup to make in advance as it keeps well and reheats well. It will last up to a week in the fridge, and it can also be frozen. Ideally you should leave out the lime juice and green onions/cilantro and add them when ready to serve for the best flavour. I'd also put a note on the container to remind yourself to add the lime so you don't forget!
To reheat, you can simply microwave it or reheat it stovetop.

Authentic Tom Kha Gai (Thai coconut chicken soup)
Ingredients
- 2 cups chicken stock, unsalted, preferably homemade
- 1 ½ cups coconut milk, (see note 1)
- ½ teaspoon table salt
- 1 lb chicken thigh, boneless skinless, cut 1-inch pieces (see note 2)
- 1 stalk lemongrass, bottom half only, smashed and cut in 2-inch pieces
- 12 thin slices galangal, (see note 3)
- 5 makrut lime leaves, twisted to bruise and torn into big chunks
- 1-3 Thai chilies, to taste, smashed until broken or cut into large pieces
- 2 tablespoon fish sauce
- 1 teaspoon finely chopped palm sugar, or granulated sugar
- 5.5 oz oyster mushrooms, torn into bite-size pieces
- 2 ½ tablespoon lime juice
- chopped green onion and/or cilantro, for garnish
- Jasmine rice, for serving, optional
Want to save this recipe?
Notes
- For a lighter soup, you can add reduce the coconut milk by about ½ cup and increase the chicken stock by the same amount.
- If using chicken breast, cut into ½-inch thick slices and marinate in 1 tablespoon of fish sauce while you're prepping. Skip step #1 as chicken breast does not need to be simmered and is best cooked only briefly, and omit the salt. Reduce the chicken stock to 1 ½ cups and add it at step #2. Add the chicken breast to the soup at the end along with the mushrooms in step #3 and cook for a couple of minutes just until the chicken is done. Be sure to taste and adjust the salt at the end!
- The lemongrass, galangal and makrut lime leaves are meant for infusion only and not meant to be eaten. Please inform your guests or remove them before serving.
FULL VIDEO TUTORIAL
All my recipes come with step-by-step video tutorials with extra tips not mentioned in the blog post, so make sure you watch the video to ensure success. If you enjoy them, consider subscribing to the YouTube Channel to not miss an episode. Thank you!
Subscribe to my YouTube ChannelInstructions
- Bring chicken stock to a boil, then add the salt and chicken thigh. Simmer gently for 15 minutes or until chicken is fork tender.2 cups chicken stock, ½ teaspoon table salt, 1 lb chicken thigh
- Add the coconut milk, lemongrass, galangal, makrut lime leaves, chilies, mushrooms, about half of the fish sauce, and sugar. Simmer for 5 minutes to infuse.1 ½ cups coconut milk, 1 stalk lemongrass, 12 thin slices galangal, 5 makrut lime leaves, 1-3 Thai chilies, 2 tablespoon fish sauce, 1 teaspoon finely chopped palm sugar, 5.5 oz oyster mushrooms
- Taste and add more fish sauce as needed. Turn off the heat and add about 2 tablespoon of the lime juice, then taste and add more as needed. Top with green onions and/or cilantro.2 ½ tablespoon lime juice, chopped green onion and/or cilantro
- Serve with jasmine rice as part of a larger Thai meal, or enjoy on its own. See this video about how to eat a Thai meal for how Thai people serve soup! (Note: the herbs are for infusion only and are not meant to be eaten. Either remove them before serving or inform your guests.)Jasmine rice
Thuy says
This is delicious. I used chicken thighs. The chicken was tender, but it was bland. Should I marinade it in salt or fish sauce? Also, I think there was too much mushrooms. I only used a little over 4 ounces. Might reduce that the next time. thank you for sharing the recipe.
D says
This is one of my favorite soups. I'm trying to save money by making my own favorite dishes and this is one of the option I chose to do just that. I just tried this recipe and wasn't expecting much as it was my first time making it (you know what they say, third time's the charm). But it came out SO well. The instructions were so easy to follow and now i have a delicious meal prep for the week!
Boris says
The recipe is just awesome ! I am cooking the soup now for the second time in a row in a week ! Thank you so much for this easy and quick delicious meal!
Gen says
We made this soup tonight. So fresh and zingy. My husband and I both loved it.
MJ says
I absolutely LOVE this recipe...though this time I, also, made 1 sub--- 1 tablespoon of chili crunch for the thai chili component b/c that is what i had on hand. It turned out beautifully! I think that this recipe is so fabulous...I even make it camping on the fire! Cheers!
Sam says
This is insanely good! Aside from Pad Thai, I’ve never ventured into Thai food until I had Tom Kha Gai at a restaurant the other day. I was instantly obsessed so I went searching for an authentic recipe and so glad I landed on this! It was so easy to make and was seriously the best soup I’ve ever had. This will be a weekly staple at home for me! 💖
Emma Hawthorne says
This was my first time ever making tom kha gai and it came out perfectly! I followed along with both the written recipe and the YouTube video. The soup was fantastic and everyone loved it!
steven lynch says
I always add canned evaporated milk at the end.
It adds creamy flavour.
Try it!
Note. My thai gf gave me this tip.
Nicole Karazin says
Made this tonight with the papaya salad, turned out great! It was the perfect balance of sweet and sour. I didn't use a protein but think adding tofu or chicken would be very easy. I omitted the shrimp because I didn't have time for that and it was still wonderful.
Heidi says
Thank u for the lovely recipe ,really flavorful -it was uncomplicated to cook and prepare ,perfect on a busy day . Watched your video and u explain it all so well and also you are easy to understand which is appreciated for those of us who don’t have English as our mother tongue.
Chrystal says
Hi! Can’t wait to try this recipe!
Quick question: can I use coconut cream instead of coconut milk? What is the difference exactly? For example, another recipe I’m going to try is sticky rice and mango: most recipes call for coconut milk while others say coconut milk or cream.
Are they good alternatives if we don’t have one over the other?
Adam from HTK says
Hi Adam here and this might help re the difference in cream vs milk? https://hot-thai-kitchen.com/thai-ingredients Cheers!
Amy Palanjian says
This is delicious and very easy!
Jo says
Hi,
I'm wondering why we aren't adding the aromatics with the chicken to give them more than 5 minutes?
5 minutes for galangal and lemongrass seems insufficient.
Does it have a fresher flavour that way?
Thanks
Jo
Dave says
Lemongrass will lose all it's flavour quickly if boiled any longer, I assume the same applies to galangal.
Dee F says
Is it weird that I still eat the galangal even though I know it's not to be eaten? 😝
Niall says
Can't wait to try this! Just watched your updated video tutorial. I'm unable to source fresh lime leaves anymore - the only kind I can get a dried lime leaves from a local South-East Asian grocery store. So annoying as I adore the aroma of fresh! Do you have any tips on how to substitute dry for fresh leaves? Or whether they'll do the job at all?
Any thoughts would be appreciated - thank you!
Pailin Chongchitnant says
You can use dried, I'd probably add a few more as I think the aroma will not be as strong.
Niki says
I've made this soup 3 times in the past couple of weeks. I'm addicted! I love Thai food and this tastes authentic and is so easy! Think I'll make it again today!
Luc says
Hi, I left the fat on the chicken thighs and it blended in with the coco milk, the soup did not feel greasy. I wonder if you usually cut the fat from the chicken thighs in certain or all your recipes or leave it on. Thanks
Megan says
This recipe will now be part of our regular meal rotation and we're so happy about it! We tried this tonight and were thrilled with how easy it was to make and how creamy it was. I can't handle much spice, so we altered the recipe by omitting the Thai chilis and replacing it with a spoonful of chili crisp. Thank you for such a delicious recipe!
MJ says
I absolutely LOVE this recipe...though this time I, also, made 1 sub--- 1 tablespoon of chili crunch for the thai chili component b/c that is what i had on hand. It turned out beautifully! I think that this recipe is so fabulous...I even make it camping on the fire! Cheers!
Cara Gonzalez says
Thank you so much for this recipe. This soup is my favorite soup and I’m so glad I can make this myself now. I tripled the recipe as I was pretty confident I’d love it and did not disappoint. Made the Thai chicken stock first and then the soup. I used chicken drum sticks for the stock and then for the mushrooms I used a combo of oyster mushrooms and mixed Asian mushrooms because it was what I had. Very happy and it’s perfect for winter. Thanks Palin!
Samantha says
Extremely easy to follow recipe and the result is an excellent and delicious Tom Ka Gai!! I’ll definitely make this again, and again! I didn’t have any kaffir lime leaves so substituted with three peels of lime rind - works just fine!
Mignon says
This was very good! Added Napa cabbage and used shiitake mushrooms that we had on hand. Will definitely make again 👍
Szandra says
Divine!!!! Just like how I remember having it in Thailand. Chicken thighs are a great call, the meat was perfectly tender and it gave the chicken stock a massive boost of flavour.
Yummm, thanks for the great recipe 😊