Hot and Sour Soup with Shrimp

Hot and Sour Soup with Shrimp (tom yum goong, ต้มยำกุ้ง) is probably the most famous Thai dish, both inside and outside of Thailand. It’s eaten very often here, usually in a type of hot pot with fire underneath. There are hundreds of variations of tom yum, and this recipe includes the two most common versions of Tom Yum Goong.


  • 2 lemongrass stalks, cut into 1″ pieces and smashed a bit (about 1/3 cup)
  • 6 lime leaves (1 tablespoon), torn with center vein removed
  • 2 tablespoons galangal sliced thin
  • 1 tablespoon coriander roots, about 2 roots
  • 2 tablesoons shallots, whole with skin removed (1-2 shallots)
  • 1 cup tomato (about 1 medium tomato), sliced into 6-8 pieces lengthwise
  • 2 cups broth (pork, chicken)
  • 1/2 cup straw mushrooms, ends removed and halved
  • 2 tablespoons (about 7) red medium-sized thai chilies, smashed
  • 4 or 5 medium-sized saltwater shrimp, whole and uncleaned, the fresher the better
  • pinch salt
  • 1 1/4 teaspoon fish sauce
  • 1 1/2 teaspoons :roasted chili paste:
  • 1 tablespoon lime juice (or more to taste)
  • 3 tablespoons milk (from a cow not a coconut). *optional
  • 3 small dried chilies, roasted *optional – add if adding milk
  • 1 tablespoon coriander chopped


  1. Prepare all the ingredients. Remove the outer layer of the lemongrass stalks and cut off the end. Cut into 1-2″ pieces and smash with the side of a heavy knife to release flavor. Tear the center vein off the lime leaves. Slice your galangal into thin slices. Cut the tomato into 6 pieces lengthwise. Peel the skin off the shallots and smash lightly. Clean your coriander roots well. Smash the fresh chilies with the back of a heavy knife, or in a mortar and pestle. If using fresh Thai straw mushrooms, slice the bottoms off and cut in 1/2 lengthwise. If making the version with milk: roast the dried chilies until fragrant and browned in a dry wok on medium heat (see note).
  2. Clean the shrimp by peeling off the backs and snapping off the top part of the heads, but leave the fat on at the base of the head (the reddish brown goop). This is very important, as that fat imparts a signature flavor into Tom Yum Goong. Don’t discard it. Then, peel out the legs + intestine underneath, but leave the tails on. Set aside.
  3. Boil the broth on high until it comes to a rapid boil. (see note about broth below). Add the lime leaves, lemongrass, coriander root, galangal, shallot(s) and tomato. Boil for 4-5 minutes until the broth tastes herbal. if you’re using fresh ingredients, 4-5 minutes should be enough. In a separate pan, boil the mushrooms in plain water.
  4. After you’ve boiled 4-5 minutes, add a pinch of salt and the shrimp. Strain the cooked mushrooms and add them to the soup as well. Cook until shrimp turn pink, about a minute.
  5. Add the fish sauce and remove from heat. You will now season the soup.
  6. Add lime juice, chili paste, smashed fresh chilies. Taste the soup. Is it sour? Is it salty? If no, add a bit more, 1/4 teaspoon at a time.
  7. If making the version with milk: Add the milk and dried chilies. If doing this step you’ll need to add a bit more lime juice and fish sauce as the milk tames it down a bit. Add about a teaspoon more of each.
  8. Add cilantro and serve. This soup is best served really hot!


This recipe is for the two most common Tom Yum Goong recipes. Both have chili paste (nam prik pao). The only difference is the addition of milk. Milk gives it a somewhat rounded flavor. It's not enough milk to make the soup creamy, just enough to make it less harsh. If you do add the milk, add the dried roasted chilies and a bit more fish sauce and lime juice as well.

A vegetarian Tom Yum recipe can be found here: Tom Yum Het, a clear version of tom yum made with mushrooms.

You can use freshwater prawns for this soup if you'd prefer.

This recipe makes a small soup, enough for 2 to eat with a meal. If cooking for a larger group you may want to double or triple this recipe.

Thais do not fish out the parts of this soup you don't eat before serving - they know to avoid munching on the lemongrass stalks, galangal, cilantro root and lime leaves. If serving this to guests who are unfamiliar with Thai food, you may want to let them know what to eat and what not to eat, or fish out the herbs before serving.

Pork or Chicken broth can be made by simply boiling pieces of pork or chicken in water. Leaving the meat on the bone is best. If you do cheat and use a flavor cube or pre-made broth, make sure it's simply meat broth and not flavored with vegetables as well.



Tear the vein off the lime leaves


Slice the galangal into thin pieces


Prepare the herbs as shown


Set up everything before cooking


Dry roast the chilies (if adding milk)


Clean the shrimp but leave the fat on


Boil the herbs and tomato on high


After 4 minutes, add the shrimp


When done, season the soup

44 thoughts on “Hot and Sour Soup with Shrimp

  1. Chris-
    I did a very official and formal poll of Thais in Bangkok (ok, I asked a few friends) and they all seem to like the milk version better. So while it may not be the old fashioned way of doing it, it’s really common here. Give it a try and let me know which version you like better! Don’t forget to up the lime+fish sauce if adding milk.

  2. I’ll definately be giving the milk version of tom yum a try. I love the fragrant flavours of Tai cuisine, but I found it a bit too much (too hot!). Would the recipe work as well with less chilli? Its great that you included pictures with the recipe, thanks!

  3. Thank you so much for the recipe! Have been looking everywhere for an authentic recipe that does not use generic tom yum paste and this was exactly it. Made it this evening and it was absolutely perfect. Thanks.

  4. I haven’t tried this version before but I’ve made Tom Yum many times in the past. Just a question: Why do you add chilli paste AND fresh chillies too? I’m against using any kind of paste for this soup because I find it becomes too oily. A Thai chef I work with makes Tom Yum using Tom Yum paste and then adds most of the above ingredients. Result: Flavourful but not sure if it’s from his creation or from the store-bought paste. And again it’s very oily. Is this how authentic Thai food is suppose to be? I hate making stuff from prepared pastes. Just seems like the easy way out.

  5. Leek –
    The chili paste gives it the reddish colour and a roasted flavor. The fresh chilis give it the bulk of the heat. It’s not a “tom yum paste” — we’re against using any type of instant food as well. This is “chili paste” — naam prik pao, a paste made from roasted chilies, fried garlic, fried shallots and shrimp. You can make it yourself, or buy it from the store ready-made.

    Tom Yum Paste is an instant soup-base paste, instead of boiling the herbs and spices to create your own broth. We recommend to use the herbs if you can find them where you are. We don’t know anyone here in Thailand who uses tom yum paste. Everyone uses the fresh herbs.

    This recipe is about as authentic as you can get.

  6. I love the proper tom yum soup you get in thailand…and have to thank you for this amazing recipe! Been looking for the real thing that I had back in bangkok…and this looks like it! The milk must give the soup the whiteish colour I had no idea they add that in, and was wondering why I wasn’t getting the same base colour of the soup!! Thanks!!

  7. Made this tonight. It was a hit with everyone. Just an FYI the instructions do not indicate when to add the shallot.. caught that just after I added the shrimp. No worries had a pound of Fresh water shrimp/prawn as stand-by. I increased the shrimp fat by double, also the lemon grass and kaffir. I made a fresh stock from 2 center cut pork chops/4.5 cps water let that reduce to 3cps. also flash dried my birdseye(toaster oven set on defrost. I use the chilli paste in soy oil for the color enhancement it also provides for the oil in the broth. I must say this is the best I have tasted even the rest’s. in Atlanta cannot compare. Dont increase the amount of birdseye if using the chilli paste in soy oil unless you like to sweat.
    Thanks for this recipe

    Hope to try more


    1. John-

      Thanks for the heads up about the shallot, I’ve added it to the recipe steps. I’m glad your tom yum came out well!

  8. Whoa, I haven’t had tom yum anywhere near this good since I left Thailand. It was absolutely fabulous, and after the first taste, the people I cooked for looked at me in amazement like I was a culinary goddess. I’ll rate it 5/5 or more!

    1. All of the dishes on our site make one dish, about enough for one person if that’s all you’re eating. Thai meals usually are about one dish per person, so if you have three for dinner, make this and two more dishes.

    1. Hi Laila,

      Yes you can try coconut milk. The type of chili used is birdseye. You can see a picture of the type of chili in the glossary (linked from the ingredients list).

  9. This is my son’s favorite Thai soup! I made mussels tom yum the other day and he said it was nice but not as nice the seafood one from our favorite Thai restaurant haha! I’m so glad I found your site. 🙂

  10. OH MY GOSH!! Out of this world and so happy that I can make this at home!!! I love the milk version better:) Thank you for sharing this Cee.

  11. I just tried your recipe and it was excellent. I was extremely impressed by myself thanks to you. The milk does make it just that little better in in my opinion. I had vivid memories of being back in Bangkok, eating this on the side walk in the heat.

  12. and i whant to say – cooking delicious tom yum is not so hard stuff. it’s more difficult to get all these components like lemongrass if you live not in south-asian region. however they can be ordered online. here’s a link to tom yum shop:

  13. dear Cee,
    I have plans to sell tom yam, tom yam how sales in thailand, what tom yam soup was made before and placed into a large pot, or if there is a new order is cooked? What can be added noodles, cabbage and beef kikil (from the cow leg) Pls reply me at : [email protected]

  14. This recipe looks good. I’d like to make it a veggie version. If I substitute veggie broth for chicken broth, and salt for fish sauce, will the taste approximate the goodness that is intended?

  15. Hi cee,

    Thanks for the reply. I did see the veggie version…but it is a different kind of soup. I really like this Tom Yum Goong recipe, with milk, with the chillie not fully mixed into the broth. The general recipe of this soup looks to be exactly like what I’m hoping to make. Would the absence of fish sauce completely alter the flavoring of this version?

    Thanks again. You have a great site.

  16. Awesome recipe, even without the galangal. I had to use a ‘chilli paste with soya bean oil’ & it’s been a hit with friends both times.

  17. looks like a great recipe! definitely gonna give it a try! How much does this recipe serve?

  18. My only criticisms of this recipe is that it calls for lime leaves and lime juice. But surely the author meant *Kaffir* lime leaves, but regular lime juice. For someone attempting to make this dish for the first time in an authentic way, one would surely want the Kaffir lime leaves if possible.

  19. Edit: So, I read the author doesn’t want to use the word “Kaffir” because it is offensive in other parts of the world. However, while in Thailand in the cooking classes I went to, they were always called Kaffir lime leaves. If I was just looking for recipes, and went down the list of ingredients to pick up at my local asian supermarket to try to make some of these recipes, I wouldn’t know the author meant Kaffir lime leaves unless I clicked on the link for Lime Leaves to find out more about that ingredient…instead, I’d probably just buy lime leaves… Just a minor quibble. Great recipe, can’t wait to try it tonight.

  20. Jeremy,
    Don’t be such a prat. At any food store in Chinatown where I live, lime leaves are called lime leaves. I don’t know what you’re on about.

  21. Hi, i have been searching for tom yum soup without using paste instead of fresh ingredients and i am so so happy that i’ve found your post here! i believe it would be healthier and sincere in cooking, which i adore.. Thank u =)

  22. I have tasted a tom yum soup that has hot, sour and sweet in it along with browned garlic flavor in the broth. Can you shed any light as to how this is done? It is very good too.

    1. I’m not entirely sure which version you’re talking about. Perhaps the next time you have it ask them what it’s called exactly and I can help.

  23. Love your website! I cannot find coriander root. If I leave it out, will it greatly affect the taste of the soup?

  24. Thanks for your email! I completely forgot to get back to you and subsequently lost your address. The soup was a great success! Perfect that we made it two days before I got horribly sick with flu. The spice cleared me right up! Couldn’t find the coriander root bc I needed it for the very next day and no time to scour gardens 🙂 Did fine without it. Can’t wait to try it again!

  25. Utterly delicious-thank you so much. Tastes exactly like the real thing. Do you deliver cooking lessons in Thailand? I assume you’re based there after reading some of your responses to comments. I live in Japan and so all ingredients available though coriander root was missing as couldn’t get it. Still tasted wonderful 🙂

    1. I was based in Thailand during the writing of most of this site, but now am back in the US where I teach cooking lessons. Glad the recipe worked out even though you could not find coriander root. I have a hard time finding it here as well.

Comments are closed.