Thai Tom Yum Soup With Coconut Milk (Tom Khaa) Recipe

Tom Yam Soup with Shrimps.
Michael Rheault Getty
  • Total: 25 mins
  • Prep: 15 mins
  • Cook: 10 mins
  • Yield: 2 to 3 cups (2 to 3 servings)
Nutritional Guidelines (per serving)
393 Calories
20g Fat
43g Carbs
19g Protein
See Full Nutritional Guidelines Hide Full Nutritional Guidelines
Nutrition Facts
Servings: 2 to 3 cups (2 to 3 servings)
Amount per serving
Calories 393
% Daily Value*
Total Fat 20g 26%
Saturated Fat 17g 86%
Cholesterol 19mg 6%
Sodium 2309mg 100%
Total Carbohydrate 43g 16%
Dietary Fiber 6g 23%
Protein 19g
Calcium 239mg 18%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)

Try this delicious version of Thai tom yum soup made with coconut milk (tom khaa). The coconut milk gives it a little more thickness and flavor while still keeping it healthy. It's an easy recipe, and quick to cook up, but tastes like it is Thai restaurant-quality.


  • 4 to 6 cups good-tasting chicken stock
  • 1 stalk lemongrass (minced)
  • 3 makrut lime leaves or 1 teaspoon grated lime zest
  • 3 to 4 cloves garlic (minced)
  • 1 to 2 red chiles (finely sliced, or substitute 1/2 to 3/4 teaspoon dried crushed chile)
  • Generous handful fresh shiitake mushrooms (sliced)
  • 12 medium raw shrimp (shells removed)
  • 1 to 2 cups broccoli florets (or other greens of your choice)
  • A handful of cherry tomatoes
  • 1/2 can good-quality coconut milk
  • 3 tablespoons fish sauce
  • 1 tablespoon freshly squeezed lime juice
  • 1/3 cup fresh coriander (roughly chopped)
  • 1/2 teaspoon sugar (optional)

Steps to Make It

  1. Place stock into a deep cooking pot and bring to a boil.

  2. Add the lemongrass and boil for 1 to 2 minutes. If using fresh lemongrass, also add the upper stalk pieces for extra flavor.

  3. Add lime leaves, garlic, chile, and mushrooms. Reduce heat to medium and simmer 1 to 2 minutes.

  4. Add shrimp, broccoli, and cherry tomatoes. Simmer 3 to 4 minutes, or until shrimp are pink and plump.

  5. Reduce heat to medium-low and add the coconut milk, fish sauce, and lime juice. Stir well to combine and gently simmer until hot.

  6. Test the soup for salt and spice, adding more fish sauce instead of salt, or more chiles as desired. If too sour, add 1/2 teaspoon sugar. If too spicy for your taste or if you'd like it creamier, add more coconut milk. If too salty, add another squeeze of lime juice.

  7. Serve in bowls with fresh coriander sprinkled over. For an extra hit of flavor, you also can add some Thai chili sauce, either store-bought or the homemade version: nam prik pao chili sauce recipe.

Recipe Variations

Depending on which Thai chef is cooking, evaporated milk may be added instead of coconut milk (this is often the case in Thailand). Traditional tom yum is made with either evaporated milk, or without any milk whatsoever, as in this traditional tom yum soup recipe.

For a vegetarian version, see vegetarian tom yum soup recipe.

If you prefer chicken over shrimp, substitute chicken breast, cut into bite-size pieces as in this tom kha gai (tom yum soup with chicken & coconut milk) recipe.

For a noodle version, see this Thai chicken noodle soup recipe.