Thai Coconut Shrimp Soup
Also called Tom Kha Goong or Thai Red Curry Shrimp Soup, this dish is one of the most craveable soups you can make at home. It hits every flavor note you want from Thai food. The broth is creamy from coconut milk, tangy from lime, savory from fish sauce, and carries a gentle heat from red curry paste and chili oil. Plump shrimp cook in minutes, mushrooms add earthiness, and fresh cilantro finishes it with brightness. It looks restaurant quality but takes about 25 minutes from start to finish.
This is the kind of soup that feels special enough for guests yet simple enough for a weeknight. It is naturally gluten free and dairy free. Serve it on its own as a light meal or ladle it over jasmine rice to make it heartier. Once you learn the base, you can swap the protein, adjust the spice, and make it your own.
Why This Recipe Works
The balance is what makes Thai soups so addictive. Here we build it in layers. Aromatics like lemongrass, ginger, and garlic infuse the broth first. Red curry paste brings depth and heat without needing 10 different dried spices. Coconut milk adds body and tames the spice so it is rich but not overwhelming. Fish sauce gives umami that salt alone cannot match. Lime juice goes in at the end to keep it bright and fresh. Shrimp cook directly in the broth, which means they stay tender and the broth picks up their sweetness.
Using canned coconut milk instead of light versions is key. The fat is what gives the soup that silky, luxurious texture you see in restaurants. If the broth breaks or looks oily, it is usually because it boiled too hard. Keep it at a gentle simmer and you will get a smooth, cohesive soup.
Ingredients
Serves 4 to 6
For the Soup Base
Coconut Milk: 2 cans, 13.5 ounces each, full fat. Shake the cans well before opening. Aroy-D and Chaokoh are consistent brands. Do not use coconut cream unless you plan to thin it. Light coconut milk will make a thin, watery broth.
Chicken Broth: 3 cups low sodium. The broth thins the coconut milk and adds savory depth. Vegetable broth works if you want to keep it pescatarian. Use good quality broth because it is a major part of the flavor.
Red Curry Paste: 3 tablespoons. Mae Ploy and Thai Kitchen are widely available. Mae Ploy is more concentrated and spicier. Start with 2 tablespoons if you are heat sensitive. Curry paste varies a lot by brand, so taste and adjust.
Lemongrass: 2 stalks. Trim the root end and the tough top. Bruise the stalks with the back of a knife or a rolling pin to release oils, then cut into 2 inch pieces. If you cannot find fresh, use 2 tablespoons lemongrass paste or 1 tablespoon dried lemongrass. Remove the pieces before serving because they are fibrous.
Ginger: 1 inch piece, sliced into coins. No need to peel if it is organic. Galangal is traditional in Tom Kha, but ginger is easier to find and works well. If you do find galangal, use the same amount.
Garlic: 3 cloves, minced. Fresh garlic gives a cleaner flavor than jarred.
Shallot: 1 small, thinly sliced. Shallot adds a mild, sweet allium flavor. You can use ¼ of a red onion as a substitute.
Fish Sauce: 2 tablespoons. Red Boat is a high quality option. This is the main source of salt and umami. If you need a vegan substitute, use soy sauce plus a pinch of salt, but the flavor will change.
Brown Sugar: 1 tablespoon. Palm sugar is traditional, but light or dark brown sugar works. It balances the heat and sour notes.
Lime Juice: 2 tablespoons, fresh squeezed. About 1 large lime. Add it at the end so the flavor stays bright. Bottled lime juice tastes flat here.
Chili Oil or Chili Crisp: For drizzling. This is optional but adds heat and looks beautiful. You can use homemade chili oil or store bought like Lao Gan Ma.
For the Add Ins
Shrimp: 1 pound large or extra large, 21 to 25 count, peeled and deveined, tails on or off. Thaw frozen shrimp overnight in the fridge or under cold running water. Pat them dry so they sear instead of steam. If you use pre-cooked shrimp, add them at the very end just to warm through.
Mushrooms: 1 cup sliced. Oyster, shiitake, or cremini mushrooms all work. Oyster mushrooms are most traditional and have a silky texture. If using shiitake, remove the woody stems.
Red Bell Pepper: ½, thinly sliced. Optional, but it adds color and a slight sweetness.
Cilantro: ½ cup fresh leaves, roughly chopped. If you dislike cilantro, use Thai basil or green onions.
Lime Wedges: For serving. Extra acidity lets everyone adjust to taste.
Optional Garnishes
Thinly sliced red chilies for extra heat
Crispy fried shallots for crunch
A drizzle of coconut cream for a richer look
Equipment You Need
4 to 5 quart heavy bottomed pot or Dutch oven
Sharp knife and cutting board
Wooden spoon or silicone spatula
Ladle for serving
Step by Step Instructions
Prep All Your Ingredients
Thai cooking moves fast once the heat is on. Have everything sliced, measured, and ready. Bruise your lemongrass, slice ginger, mince garlic, slice shallot and mushrooms, juice your lime, and pat the shrimp dry. If your shrimp are frozen, make sure they are fully thawed and drained. Water on the shrimp will cool the broth and make them rubbery.
Build the Aromatic Base
Set your pot over medium heat. Add 1 tablespoon of neutral oil like avocado or vegetable oil. If your coconut milk has a thick layer of cream on top, you can use 2 tablespoons of that instead of oil. Add the sliced shallot, garlic, ginger, and bruised lemongrass. Stir for 2 minutes until fragrant. You want the garlic to smell toasty but not brown. Browning makes it bitter.
Add the red curry paste. Stir and mash it into the oil for 1 to 2 minutes. This step toasts the spices in the paste and blooms the flavor. The paste should darken slightly and smell very fragrant. If it sticks, add a splash of chicken broth to loosen it.
Create the Broth
Pour in the chicken broth and scrape the bottom of the pot to release any stuck bits. Bring to a gentle simmer. Add both cans of coconut milk and stir until smooth. Add the fish sauce and brown sugar. Reduce the heat to medium low. You want a bare simmer, not a rolling boil. Boiling coconut milk can cause it to separate and look curdled.
Add the sliced mushrooms and red bell pepper if using. Simmer for 5 minutes so the mushrooms soften and the broth infuses with the lemongrass and ginger. Taste the broth now. It should be salty, a little sweet, and have a good curry flavor. Adjust with more fish sauce for salt or more brown sugar if it is too sharp.
Cook the Shrimp
The shrimp go in last because they cook fast. Increase the heat slightly to bring the broth back to a gentle simmer. Add the shrimp in an even layer. Cook for 2 to 3 minutes, stirring once, until they are pink, opaque, and just curled into a C shape. Do not cook until they are a tight O shape. That means they are overcooked. They will continue to cook a little from residual heat. If you are using very large shrimp, they may need 4 minutes.
Finish and Balance
Turn off the heat. Fish out the lemongrass stalks and ginger slices if you want. Some people leave them in for looks but warn guests not to eat them. Stir in the fresh lime juice. Taste again. This is where you make it yours. Need more salt: add a splash of fish sauce. Need more sour: add another squeeze of lime. Need more heat: stir in a spoonful of chili oil or more curry paste dissolved in a little broth.
Serve
Ladle the soup into bowls. Make sure each bowl gets several shrimp and mushrooms. Top with a generous handful of fresh cilantro. Add a drizzle of chili oil for color and heat. Serve with lime wedges on the side. If you want to make it a full meal, add a small scoop of jasmine rice to each bowl or serve rice on the side.
Pro Tips for the Best Soup
Do Not Boil the Coconut Milk: A hard boil will break the emulsion and leave you with a greasy, separated broth. Keep it at a gentle simmer where you only see a few bubbles. If it does break, you can try to bring it back by whisking in 1 tablespoon of cornstarch mixed with 2 tablespoons of cold water, but prevention is easier.
Use Fresh Lime Juice: The difference between fresh and bottled is huge here. Add it after you turn off the heat. Cooking lime juice makes it bitter.
Salt Level: Fish sauce is salty and brands vary. Start with 1.5 tablespoons, then add more at the end. It is easier to add salt than to fix an over salted soup. If you do over salt, add a splash more coconut milk or a squeeze of lime to balance.
Shrimp Size Matters: Large shrimp have better texture and are harder to overcook. If you only have small shrimp, reduce the cooking time to 1 to 2 minutes.
Bloom the Curry Paste: Do not skip sautéing the curry paste. Raw curry paste tastes flat and chalky. Toasting it in oil unlocks the flavor.
Strain If You Want: For a restaurant smooth broth, pour the soup through a fine mesh strainer before adding shrimp, then return the broth to the pot. This removes the lemongrass and ginger pieces.
Recipe Variations
Tom Kha Gai: Swap the shrimp for 1 pound of thinly sliced chicken breast or thigh. Simmer the chicken in the broth for 6 to 8 minutes until cooked through before proceeding. Gai means chicken in Thai.
Vegetarian Tom Kha: Use vegetable broth, swap fish sauce for soy sauce or vegan fish sauce, and use tofu or more mushrooms instead of shrimp. Add baby corn and bamboo shoots for texture.
Tom Yum Goong: For a clearer, more sour and spicy version, skip the coconut milk and increase broth to 5 cups. Add 2 tablespoons of Thai chili paste in soybean oil, more lime juice, and sliced tomatoes. This is the classic hot and sour shrimp soup.
Noodle Soup: Add 4 ounces of rice noodles. Soak them in hot water until tender, drain, and divide between bowls before ladling soup over. This makes it a full meal.
Extra Vegetables: Baby spinach, bok choy, or snap peas can be stirred in at the end. They will wilt in the hot broth in 1 minute.
Make Ahead, Storage, and Reheating
This soup is best fresh because shrimp can get rubbery when reheated. If you want to meal prep, make the broth base through step 3 and stop before adding shrimp. Cool it, then store in the fridge up to 3 days. When ready to eat, bring the broth to a simmer and proceed with adding shrimp and finishing.
Leftover soup keeps for 2 days in the refrigerator. Store in an airtight container. Reheat gently on the stove over medium low heat until just steaming. Do not let it boil. The microwave works too. Use 50 percent power and stir every 30 seconds. The shrimp will be firmer on day two but still good.
This soup does not freeze well. Coconut milk separates and the shrimp turn mealy when thawed. If you must freeze, freeze the broth base only, without shrimp or mushrooms. Thaw overnight, reheat, and add fresh shrimp.
Frequently Asked Questions
Can I use light coconut milk?
You can, but the soup will be thin and less rich. If you only have light, use 3 cans and simmer the broth 5 minutes longer to reduce it slightly. Or add ¼ cup of coconut cream at the end.
What if I cannot find lemongrass?
Use 1 tablespoon of lemongrass paste from a tube, or zest from 1 lime as a backup. The flavor will not be exactly the same, but the soup will still be good. Dried lemongrass works too. Use 1 tablespoon and strain it out.
Is this soup very spicy?
With 3 tablespoons of Mae Ploy curry paste it is a medium heat. With Thai Kitchen it is mild to medium. Control the spice by reducing the curry paste to 1.5 tablespoons and skipping the chili oil. You can always add heat at the table. For more heat, add sliced Thai chilies with the garlic or use more chili oil.
Can I use pre cooked shrimp?
Yes, but add them at the very end. Stir them in after you turn off the heat and let them sit 2 minutes in the hot broth to warm through. Simmering pre cooked shrimp makes them tough.
My broth tastes flat. How do I fix it?
Flat broth usually needs acid or salt. Add another teaspoon of fish sauce, wait 30 seconds, and taste. Still flat: add another squeeze of lime juice. The goal is balance between salty, sour, sweet, and spicy. If it tastes only of coconut, you may need more curry paste. Whisk 1 teaspoon of paste with a little hot broth in a bowl, then stir it in.
What is the difference between Tom Kha and Tom Yum?
Tom Kha means boiled galangal and always has coconut milk. It is creamy and aromatic. Tom Yum means boiled mix and is usually clear, hot, and sour without coconut milk. Both can be made with shrimp, which is Goong, or chicken, which is Gai.
Serving Suggestions
Serve this soup as a starter for a Thai dinner. It pairs well with Pad Thai, Thai basil chicken, or green papaya salad. For a simple meal, serve it with jasmine rice or sticky rice to soak up the broth. A cold Thai iced tea or a light lager beer balances the spice. For a low carb option, serve it as is or over cauliflower rice.
Nutrition Information
Per serving, based on 6 servings. Estimates only and will vary by brand.
Calories: 340
Protein: 18g
Carbohydrates: 9g
Fat: 27g
Saturated Fat: 22g
Sodium: 980mg
Fiber: 1g
Sugar: 4g
Using light coconut milk reduces calories to about 210 per serving but also reduces richness.
Final Thoughts
Once you make this Thai Coconut Shrimp Soup at home, you will see how fast and simple it is. The key is prepping your ingredients before you start cooking and not boiling the coconut milk. From there it is all about tasting and balancing at the end. Make it once as written, then adjust the curry paste, lime, and fish sauce to fit your taste. That is how Thai cooking works. It is not rigid. It is about finding the balance you like.