Quick Thai Coconut Soup (Tom Kha Gai)
This Thai coconut soup is the one I turn to when I want something deeply comforting in under 30 minutes. Creamy coconut milk meets tangy lime, fragrant lemongrass, and tender chicken in a broth that feels like a weeknight luxury.

If you keep coconut milk and fish sauce in your pantry, the rest is mostly fresh aromatics. Once the broth simmers, it comes together so fast that the rice barely finishes before the soup is ready.
Why This Soup Works
The full-fat coconut milk rounds out the sharp lime and salty fish sauce without dulling them. That balance stays on the spoon right through the last bite.
I cook the chicken right in the broth so it stays juicy and infuses the soup with a gentle, savory depth. The mushrooms soak up all that flavored liquid and give you something tender to chase with each spoonful.
Ingredients

- 1 lb boneless skinless chicken thighs: cut into bite-size pieces, thigh meat stays moist
- 1 can (13.5 oz) full-fat coconut milk: do not shake the can, spoon the thick cream on top if separated
- 3 cups chicken broth: low sodium gives you more control over the salt
- 2 stalks lemongrass: trim the tough ends, peel away dry outer layers, smash the stalks with the back of a knife
- 3 to 4 slices galangal: fresh or frozen, about 1/4-inch thick coins, ginger works in a pinch (see Variations)
- 5 to 6 kaffir lime leaves: tear them to release the oils, or use 1 tsp packed lime zest as a substitute
- 8 oz mushrooms: oyster, straw, or cremini, sliced thick
- 3 tbsp fish sauce: start at 2 and adjust, Red Boat brand is clean and bright
- 2 tbsp fresh lime juice: juice from about 1 lime, add right before serving
- 1 tsp sugar: balances the salt and sour
- 3 to 4 Thai bird chilies: sliced thin, seeds in if you like heat
- Handful fresh cilantro: torn leaves for serving
Variations / Substitutions
- Ginger for galangal: use one 2-inch piece of fresh ginger sliced into coins, the flavor will be sharper and more familiar but still works
- Tofu instead of chicken: firm tofu cubes added with the mushrooms, the soup stays vegan if you swap fish sauce for soy sauce
- Lime zest instead of leaves: skip the leaves and stir in the zest with the lime juice, it gives a similar floral note just a little louder
- Heat level: drop the chilies to one or omit them entirely; add chili oil at the table instead for more control
- Dairy-free: the recipe already is, just watch the fish sauce if you need it fully plant-based and use a vegan alternative
If you enjoy this, you might also like our Thai Red Curry with Vegetables, which uses the same coconut milk base in a different way.
How To Make Quick Thai Coconut Soup
Step 1: Simmer the Aromatics

Pour the 3 cups chicken broth into a medium pot and set it over medium-high heat. Add the smashed lemongrass, galangal slices, and torn kaffir lime leaves. Once small bubbles start breaking the surface, turn the heat down to medium-low and let it simmer gently for 5 minutes, long enough for the broth to smell fragrant and get a light herbal taste.
The broth will turn slightly cloudy and the air around the stove will smell like a good Thai kitchen. You want a steady simmer here, not a full rolling boil, so the flavors release slowly without clouding the final soup.
Step 2: Poach the Chicken

Stir in the 1 tbsp sugar and 2 tbsp fish sauce, then slide the bite-size chicken pieces straight into the simmering broth. Keep the heat at medium-low so the liquid just barely bubbles. Cook the chicken for 8 to 10 minutes, until you cut into a thick piece and see no pink at the center.
The chicken will turn opaque and firm up as it cooks, and the broth will start to take on a little more body from the juices. Stir once or twice to make sure the pieces cook evenly and do not bunch up.
Step 3: Fold in the Mushrooms

Add the sliced mushrooms and pour in the entire can of coconut milk, including any thick cream that has settled. Stir everything together and let it heat through for 3 to 4 minutes, just until the mushrooms soften and turn silky but still have a slight bite. Do not let the soup boil hard once the coconut milk is in, or the broth can separate and look grainy.
The mushrooms will shrink a little and darken, and the soup will turn a creamy pale color with small golden fat droplets resting on top. The texture becomes rich without feeling heavy.
Step 4: Ladle and Garnish

Remove the pot from the heat. Fish out the lemongrass stalks, galangal slices, and lime leaves with a spoon or strain them out if you prefer. Stir in the 2 tbsp fresh lime juice, then taste and add the remaining fish sauce if it needs more salt. Ladle the hot soup into deep bowls and scatter torn cilantro and sliced chilies over the top. Serve right away while steamy.
The lime brightens everything the moment it hits the broth, and the cilantro leaves wilt just enough from the heat. Each bowl should have a visible slick of coconut cream and a few flecks of chili.
Tips for the Best Broth
- Galangal is fibrous and can be hard to find, but frozen or jarred slices work just as well as fresh. Do not try to eat the coins, remove them before serving.
- Fish sauce brands vary a lot in saltiness, so start with less and taste after the lime goes in. You can always add more, but you cannot pull it back out.
- Kaffir lime leaves freeze beautifully. Keep a bag in the door of your freezer and pull out a few straight from frozen anytime you make this soup.
Scale this soup for a crowd:
| Servings | Chicken (lb) | Broth (cups) | Coconut milk (oz) | Fish sauce (tbsp) | Lime juice (tbsp) |
|---|---|---|---|---|---|
| 2 | .5 | 1.5 | 7 (half can) | 1.5 | 1 |
| 4 | 1 | 3 | 13.5 (1 can) | 3 | 2 |
| 6 | 1.5 | 4.5 | 20 (1.5 cans) | 4.5 | 3 |
Storing Leftovers
Store any leftover soup in an airtight container in the fridge for up to 3 days. Reheat it gently over low heat and add a fresh squeeze of lime before serving to wake up the flavors. The coconut milk may thicken when cold, but it will thin out again as it warms.
What To Serve With Thai Coconut Soup
A mound of steamed jasmine rice on the side turns this into a filling dinner. The rice soaks up the broth and balances the spicy tartness. For an even heartier bowl, spoon the soup over warm rice noodles instead. A simple cucumber salad dressed with rice vinegar and a pinch of sugar cuts through the richness.
Frequently Asked Questions
Can I use light coconut milk?
Yes, but the soup will be thinner and less creamy. Stir a spoonful of coconut cream on top at the end if you want back some of that richness.
My coconut milk looked solid in the can. Is it ruined?
No, that is the cream separating from the liquid. Just spoon it all into the pot and stir, it will melt into the broth as it heats.
Can I make this soup vegetarian?
Absolutely. Replace the chicken with firm tofu and the fish sauce with soy sauce or tamari. Use vegetable broth and add a splash of white miso for depth.
Why did my broth separate into oily patches?
That usually happens when the soup boils rapidly after adding coconut milk. Keep it at a gentle simmer and the coconut fat will stay blended.

Ingredients
Method
- Combine chicken broth, lemongrass, galangal, and lime leaves in a pot. Bring to a gentle simmer over medium-low heat and cook 5 minutes.
- Stir in sugar and 2 tbsp fish sauce. Add chicken and poach at a low simmer 8 to 10 minutes until cooked through.
- Add mushrooms and coconut milk. Cook 3 to 4 minutes over low heat, without boiling, until mushrooms soften.
- Remove from heat. Take out the lemongrass, galangal, and lime leaves. Stir in lime juice and remaining fish sauce to taste. Ladle into bowls and top with cilantro and sliced chilies.
