Tom Kha Gai is a delicious Thai coconut chicken soup that’s emblematic of Thai cuisine’s harmonious balance of salty, sweet, sour, spicy, and bitter flavors.
This Tom Kha Gai recipe tastes just like what you might find at a particularly good Thai restaurant, and despite its complex taste, you can make it in about 30 minutes. It’s a one pot-meal that’ll bring you right out of that dinner rotation rut you’ve been in. (I know it’s not just me!)
What is Tom Kha Gai?
If you’re not familiar with Tom Kha Gai, prepare to have your socks knocked off! This iconic Thai soup features a coconut milk base infused with fragrant aromatics like lemongrass, chilies, galangal, and lime leaves (or lime zest), along with sliced chicken, mushrooms, and fresh herbs.
The coconut milk gives the dish a rich and creamy mildness.
It’s long been a must-order when we go out to a Thai restaurant! Not sure why it took me so long to post a recipe for it, but today is the day!
Why You’ll Love It
- Quick comfort food: Unlike soups that simmer for hours, this flavor-packed bowl comes together in about 30 minutes
- Versatile: Easy to customize with your preferred protein, spice level, and add-ins
- One-pot wonder: Minimal cleanup!
The Building Blocks of Tom Kha Gai
Let’s go over the ingredients (& possible substitutions if you’re in a pinch):
The Aromatics:
- Lemongrass: Lemongrass is kind of non-negotiable. Increasingly, it’s becoming available in regular supermarkets in more populated areas, and you can find it in Asian markets. Otherwise, see if an online Asian grocer like Sayweee can deliver it to your door!
- Galangal: This is another non-negotiable, as galangal (a relative of ginger with a unique spicy, citrusy, piney, and slightly bitter flavor) is in the name of the soup! I can’t find fresh galangal in our local Asian market, but I CAN get frozen galangal, which works perfectly well. That said, if you absolutely can’t find galangal, and you’re staring down a no galangal, “no soup for you!” situation, then I won’t fault you for substituting regular ginger.
- Makrut (kaffir) lime leaves: You can find these fresh from some well-stocked Asian markets (especially those that specialize in Southeast Asian ingredients), but you can more easily get them in dried form online. That said, a great substitute is lime zest!
- Thai chilies: These little chilies can really pack a punch. Omit them if you don’t like spicy food or you’re cooking for kids and spice-sensitive family members.


The Soup Base:
- Chicken stock: Use any canned/boxed chicken stock or homemade stock, preferably one with a clean flavor (i.e. not too infused with Western vegetables/herbs). I have also used water mixed with Better Than Bouillon Chicken Base (3 cups water + 1 tablespoon chicken base), and it worked great.
- Thai red curry paste: This isn’t a traditional ingredient in Tom Kha Gai, which is why it’s optional. But I find that it adds an extra punch of flavor and color. I use Maesri red curry paste, which contains chili, garlic, shallot, lemongrass, sugar, makrut lime, galangal, and other spices. In other words, the paste contains all of the main aromatics in this soup! If you’re making substitutions, a spoonful of Thai curry paste ensures you’re getting all the right flavors in there!
- Coconut milk: I prefer full-fat coconut milk. If you want your soup lighter, you can use light coconut milk (which is watered down), or simply replace some of the coconut milk with more stock.
The Main ingredients:
- Boneless skinless chicken thighs: I prefer to use chicken thighs here, as they’re more flavorful, but you can also use boneless skinless chicken breasts. Want to make this recipe vegan? Don’t worry, I have suggestions below the recipe!
- Mushrooms: I’m not fussy when it comes to the type of mushrooms to use here. Oyster mushrooms and shiitake mushrooms are robust, delicious, and great choices. That said, I’ve also made this recipe using run-of-the-mill button mushrooms or baby portabellas, which is what you’ll most often find in restaurant versions here in the U.S. anyway, so of course they work. Other options include straw mushrooms, seafood mushrooms, enoki mushrooms, and beech mushrooms. Try a mix!
The Flavor Balancers:
- Fish sauce: Even if you’re not a seafood fan, I wouldn’t skip it! It adds umami, saltiness, and its signature flavor to this soup.
- Lime juice: For that bright acidity and sour punch! You can serve the soup with additional lime wedges for those who like even more sourness.
- Sugar: A little sweetness brings out all the other complex flavors in the soup. I used palm sugar, but any brown sugar or granulated sugar will work.
- Cilantro: Cilantro adds freshness and aromatic flavor. If you’re cilantro-averse, you can use scallions!

Developing This Recipe
My version builds on this great recipe from Hot Thai Kitchen, but with some modifications based on our tastes and a little bit of inspiration from Chinese cooking techniques.
I’ve incorporated a simple velveting method for the chicken that gives it a tender, succulent texture in the soup, and I stir-fry the mushrooms before adding the other soup ingredients, which I also think improves their texture.
I adjusted the ratios of stock and coconut milk and used a bit more mushrooms while reducing the amount of chicken. (Though there’s still plenty!) I also included the optional Thai curry paste.

On to the recipe! See how simple it is to make this restaurant-quality soup yourself. Once you try it, Tom Kha Gai may just become your new favorite comfort food.
Tom Kha Gai Recipe Instructions:
Combine the sliced chicken with the cornstarch, and 2 teaspoons each of neutral oil and fish sauce. Set aside.


To a medium soup pot over medium-high heat, add the remaining 1 tablespoon of oil and the mushrooms. Fry the mushrooms (I used a mix of oyster and button mushrooms) for about 5 minutes, or until tender.


Add the chicken stock, lemongrass, galangal, lime leaves or zest, chilies and red curry paste (if using), and sugar. Bring to a boil over medium-high heat. Cover, lower the heat, and simmer for 6 minutes.

Stir in the coconut milk, and bring back up to a simmer over medium-high heat. Watch the pot and don’t let it come up to a rolling boil, or the coconut milk could split.


Add the chicken. Bring back up to a simmer, lower the heat to medium-low, cover, and cook for 8 minutes, until the chicken is cooked through.
Turn off the heat, and stir in the remaining fish sauce, lime juice, and fresh cilantro (or scallions/green onions, if you’re not a cilantro fan).


Season with salt to taste if needed. Ladle into bowls, and serve on its own or with some steamed jasmine rice!

Tom Kha Gai (In 30 Minutes!)
This tasty Tom Kha Gai (Thai coconut chicken soup) delivers the perfect balance of sour, spicy, sweet, savory, salty flavors in just 30 mins!

serves: 4
Prep: 5 minutes
Cook: 25 minutes
Total: 30 minutes
Instructions
-
Combine the sliced chicken with the cornstarch, and 2 teaspoons each of neutral oil and fish sauce. Set aside.
-
To a medium soup pot over medium-high heat, add the remaining 1 tablespoon of oil and the mushrooms. Fry the mushrooms for about 5 minutes, or until tender. Add the chicken stock, lemongrass, galangal, lime leaves or zest, chilies and red curry paste (if using), and sugar. Bring to a boil over medium-high heat. Cover, lower the heat, and simmer for 6 minutes.
-
Stir in the coconut milk, and bring back up to a simmer over medium-high heat—watch the pot and don’t let it come up to a rolling boil, or the coconut milk could split. Add the chicken. Bring back up to a simmer, lower the heat to medium-low, cover, and cook for 8 minutes, until the chicken is cooked through.
-
Turn off the heat, and stir in the remaining fish sauce, lime juice, and fresh cilantro (or scallions/green onions, if you’re not a cilantro fan). Season with salt to taste if needed. Ladle into bowls, and serve on its own or with some steamed jasmine rice!
Tips & Notes:
Instruct your diners to discard any lemongrass, lime leaves, and galangal pieces—or pick them out before serving—as these are just meant to infuse the broth.
nutrition facts
Calories: 387kcal (19%) Carbohydrates: 14g (5%) Protein: 24g (48%) Fat: 28g (43%) Saturated Fat: 20g (100%) Polyunsaturated Fat: 2g Monounsaturated Fat: 4g Trans Fat: 0.02g Cholesterol: 81mg (27%) Sodium: 388mg (16%) Potassium: 850mg (24%) Fiber: 1g (4%) Sugar: 5g (6%) Vitamin A: 792IU (16%) Vitamin C: 22mg (27%) Calcium: 47mg (5%) Iron: 5mg (28%)

Recipe Variations & Vegan/Vegetarian Adaptations
- Add some cooked rice noodles to make it a noodle soup. (Any thickness, but I like rice vermicelli—throwback to this recipe!)
- Add vegetables. Trying to get more greens into your diet? Add a handful of leaves like choy sum or baby spinach.
- Replace some of the chicken with tofu to make the dish a little lighter and go easier on the meat.
- Switch up the proteins. Instead of chicken, try shrimp or velveted fish fillet pieces (see this fish stir-fry recipe for fish velveting instructions).
- Make it vegan by using our Asian vegetable stock instead of chicken broth, substituting the fish sauce with light soy sauce or vegan fish sauce, and substituting tofu and other vegetables for the chicken. Along with the curry paste, add a tablespoon of tomato paste or some chopped fresh tomato. This will add extra umami to the dish (tomatoes are a natural source of glutamate).