Tom Kha Soup with Cod

Anytime we hit a Thai restaurant this is our go-to: one bowl of steaming, coconut-y soup please, two spoons, and don’t skimp on the lime!

It’s a filling soup that hits everything on the palate: the sweet, the spicy, the salty, the sour – even the umami! (Thank you, fish sauce.) Only problem: sometimes (often, let’s be honest) the chicken arrives at the table a little overcooked and sad in that piping hot soup.

Our version takes the usual tom kha gai (chicken) and replaces it with cod. And the results are…

Well, it’s a winner. See if you don’t agree. One of our household favorites, for sure.

The actual cooking part isn’t too involved. Everything’s in the ingredient prep. Actually, it’s kind of fun: you get to SMASH lots of stuff. (Check out the pictures.)

The other key is finding the right ingredients—challenging, especially if you live out in the middle of nowhere (like us). We love the country life, but it made our go-to tom kha recipe (here) a little tricky. (We still recommend it. It’s a more traditional tom kha, second-to-none if you can find the right ingredients for it. Ours is a little more dense, like a stew, with easier-to-find stuff in it.)

And even if you can’t find our ingredients, all hope is not lost. See the notes after the recipe for some substitution ideas.(1)

Enjoy, and let us know what you think in the comments!


Tom Kha Soup with Cod

Preparation: 30 mins

Cook Time: 20 mins

Serves 4

Ingredients:Tom Kha - 01 ingredients

  • 1.25 – 1.5 lb. cod (Pro tip: We buy the frozen cod chunks from Trader Joe’s at $3.99/lb.— approx. ½ the price of the frozen whole cod fillets!)
  • 2 cups of chicken broth/stock
  • 1 lemongrass stalks
  • 2 serrano peppers
  • 2 inch piece of fresh ginger
  • 6 medium white mushrooms
  • 5 kefir lime leaves or zest of 2 limes
  • 14 oz. can full fat coconut cream
  • ¼ small head of cabbage (roughly 2 cups when thinly sliced)
  • 2-4 limes (depending on how sour you like it)
  • ¼ cup of a nice fish sauce (with more standing by, for flavor adjustment) (2)
  • fresh cilantro (for garnish)

(If you like a more traditional style, cut the amount of cabbage and mushrooms in half.)


  1. Defrost cod (if necessary). If pieces are whole, cut into large chunks and set aside.
  2. Concentrate stock: put stock and any juice from the cod package in saucepan over med high heat and reduce by half. Continue preparing your ingredients (steps 3-9) while it reduces.
  3. Cut lemongrass stalks in half lengthwise, then SMASH with butt end of knife handle (or any other blunt object you have lying around the kitchen). Cut into 1 inch pieces, and set aside in bowl.Tom Kha - 02 lemongrass smash
  4. Peel and chop ginger and add to the bowl with the lemongrass in it.Tom Kha - 03 ginger
  5. Remove stems from lime leaves, SMASH (bruise) with knife handle, and tear into small pieces, and add to same bowl. Having fun yet?Tom Kha - 04 veggie bowl
  6. Quarter, core, and super thinly-slice cabbage, add to same bowl. (This is kind of our rice substitute: it adds some texture and stretches the recipe so you can get 4 servings out of it. Shredded cauliflower would be another good option).Tom Kha - 05 cabbage
  7. Slice mushrooms very thinly and set aside.Tom Kha - 07 mushroom mushroom
  8. Seed serrano peppers, chop, and… yep, Hulk SMASH. (Use a paper towel to hold the peppers while you work, so you don’t get serrano juices on your fingers—it’s a HOT pepper. You can leave the seeds in if you really like the heat. Also, be sure to rinse the knife, cutting board, and your hands after this step.) Keep the serranos separate from your other ingredients.Tom Kha - 06 serranos
  9. Juice 2 limes, set aside. Have two more standing by for flavor adjustment. (As Leela on She Simmers puts it: “[Tom kha] should be predominantly sour, followed by salty.” We agree and we like it nice and limey!)
  10. Allow reduced chicken stock to come down from boil. Add coconut milk, and your bowl of veggies (lemongrass, ginger, lime leaves, & cabbage) and heat the soup over medium until just below a simmer. Occasionally stir while it heats up, approx. 5-8 mins.Tom Kha - 08 add veggies
  11. Add cod chunks, stir in. Layer the mushrooms on top. Let fish cook in the soup for two mins, then stir in the mushrooms. Control heat, never let it come over a simmer. Stir occasionally until mushrooms are cooked through and fish is just shy of flaking (careful not to overcook the fish – it’ll finish cooking off the burner while you add the remaining ingredients), approx. 5 mins.Tom Kha - 09 add mushroomsTom Kha - 10 stir it all
  12. Remove from heat
  13. Add the serranos, lime juice, and fish sauce. Here’s where you play with the flavors a bit: Squeeze in more limes if you like, though be careful! (It is, we discovered, possible to make it too limey! Who knew??) Also, if you’re using a not-so-great fish sauce then go light on it, starting with just a couple tablespoons. (Trust us, if you don’t like the flavor of your fish sauce, you’ll not going to like a quarter cup of it in your soup!)Tom Kha - 11 remove from heat
  14. Ladle into bowls and serve garnished with chopped cilantro.
  15. Enjoy! 🙂Tom Kha - 12 tahdha


(1) Here are some acceptable substitutions, if you can’t find all the ingredients:

  • cabbage -> shredded cauliflower
  • lime -> lemon -> apple cider vinegar (if all else fails)
  • lime leaves -> zest from two limes or lemons (whichever you are using in the recipe)
  • coconut cream -> coconut milk (the canned stuff, NOT the carton beverage–totally different beast!)
  • serrano peppers -> jalapeno peppers (fresh, NOT pickled) -> red pepper flakes
  • you can skip the lemongrass if you can’t find it 🙁

(2) Fish sauces are like wine: some are great, and some would make better engine degreaser. Wondering which one to buy? Check out this link:

We went with Red Boat and we were not disappointed!

Leave a Reply

Your email address will not be published. Required fields are marked *