With tender meatballs and fragrant rice, Thai Rice and Meatball Soup (Khao Tom) is a cozy soup that makes a great stand-in for chicken noodle soup if you want something hearty and aromatic.
Although Thai Rice and Meatball Soup and other similar soups were extremely common in Bangkok for breakfast, I hadn’t had it for a few years when I came across a version in Milk Street: Tuesday Nights. I quickly made that version, wanting something that would fight off the chill of January and that would be an easy win with my kids.
The version I’m sharing below takes some inspiration from Milk Street in the meatball technique, but for the broth, I returned to my Thai cooking lessons from years ago and used a similar method to making broth for Tom Yum Goong. The process is simple – smash the aromatics gently to bring out their flavor, saute them for a few minutes, and simmer them in stock. Then, and this is key, remove and discard those aromatics before adding the meatballs and rice.
What you are left with is a soup that is full of flavor, but with no pieces of aromatics floating around to dissuade suspicious six-year-olds from diving in. It’s comfort food at its most delicious.
- Fish Sauce – For the most authentic flavor, use fish sauce in the meatballs and to flavor the broth. I prefer Red Boat Fish Sauce which has fewer additives and a very clean flavor. You can definitely use soy sauce as a sub if you prefer.
- Ground Meat – Ground pork is classic and adds a ton of flavor, but ground chicken or turkey will work just fine (use dark meat chicken or turkey if you can find them since they’ll be more tender and moist once cooked).
- Ginger, Shallots, Garlic, and Lemongrass – These are the flavorful foundation for the stock. Don’t skip any of them if you can help it, and you’ll get the most flavorful base. See below for more information on how to prepare these for adding to the soup.
- Soy Sauce – Adds savory flavor to the soup. Use Tamari to make this recipe gluten-free.
- Stock / Broth – I use store-bought chicken or vegetable stock as the base of the soup. Homemade would also be great. In a pinch you can use water, but the soup won’t have nearly as much flavor.
- Cooked Jasmine Rice – The rice should be cooked before being added to the soup and then you can continue cooking it until the soup reaches your desired consistency. This is a great use for leftover rice!
- Lime Juice – Don’t skip the lime juice stirred into the soup at the end. It adds a key fresh / tart flavor.
How to Make Stock for Thai Rice and Meatball Soup
The key to a flavorful soup is a stock made with a specific combination of aromatics – ginger, shallot, garlic, and lemongrass.
- Before getting started, smash the ginger, shallot, garlic, and lemongrass gently with a rolling pin or meat tenderizer. You want them to stay mostly intact (you won’t want small pieces of these in your finished soup), but smashing them helps them to release more flavor into the stock as it cooks. (Tip: to minimize mess, you can put these in a small plastic bag before smashing them.)
- Saute aromatics for a few minutes over medium heat to get them started cooking, 2 to 3 minutes.
- Add fish sauce, soy sauce, and stock to aromatics and simmer for 15 minutes to flavor the stock.
How Long to Simmer the Soup
This soup typically comes in two different textures, so you can customize it to your preference.
- Simmer the rice for 5 minutes for a broth-y texture in which the rice grains are small and separate.
- Simmer for up to 15 minutes for a thicker texture (like rice porridge / congee / jok) in which the rice grains absorb most of the broth and are plump.
Keep in mind that the rice will absorb the liquid as it sits, so if you serve this soup as leftovers, it will likely become the thicker porridge-like texture.
More Cozy, Hearty Soups
- Instant Pot Potato Leek Soup
- Taco Soup with Ground Beef
- Slow Cooker Black Bean Soup
- Slow Cooker Beef and Barley Soup
- Instant Pot Baked Potato Soup
- Mini Italian Meatball and Orzo Soup
- Italian Sausage Soup with Tortellini and Kale
- Chicken, Butternut Squash, and Orzo Soup
- Anchor 3-Piece Glass Mixing Bowls
- Quarter Sheet Pan or Large Plate
- Rolling Pin or Meat Tenderizer
- Saucepan or Dutch Oven
Thai Rice and Meatball Soup
- Mixing Bowls
- Saucepan or Dutch Oven
- Rolling Pin or Meat Tenderizer
- Slotted Spoon
For the Meatballs:
- 8 oz Ground Meat (use ground pork, chicken, or turkey)
- 3 Tbsp Fish Sauce
- 2 tsp Sriracha or other Hot Sauce (optional)
For the Soup:
- 1 3 inch piece Ginger, sliced
- 2 large cloves Shallots
- 2 cloves Garlic
- 2 Lemongrass Stalks (just use the lower 6 inches of the stalk)
- 2 Tbsp Fish Sauce
- 1 Tbsp Soy Sauce (use Tamari for gluten-free)
- 6 cups Chicken or Vegetable Stock / Broth
- 2 cups Cooked Jasmine Rice
- 2 Tbsp Lime Juice
- Chopped green onions and / or cilantro, for serving
- Make meatballs: Combine ground meat, 3 Tbsp fish sauce, and Sriracha in a medium bowl. Roll into small meatballs (about 2 rounded teaspoons each; you should have about 24 meatballs). Spread out on a small sheet pan or plate and refrigerate for 15 minutes while making the broth. (Refrigerating the meatballs will help them to hold their shape when added to the broth.)
- Make broth: Using a rolling pin or meat tenderizer, smash the ginger, shallot, garlic, and lemongrass stalks just to open them up. (You want these aromatics to stay intact so that you can easily remove them later, but smashing them open will help them to release their flavors.) In a saucepan or Dutch oven, combine ginger, shallots, garlic, lemongrass, fish sauce, soy sauce, and stock. Bring to a simmer over medium heat. Simmer for 15 minutes.
- Use a slotted spoon to remove aromatics from broth (you can discard them), leaving the broth at a simmer. Add meatballs to simmering broth and simmer until nearly cooked through, ~10 minutes.
- When meatballs are nearly cooked through, add jasmine rice to soup and continue simmering until soup reaches your desired consistency, 5 minutes (for a more broth-y soup) or 15 minutes (for a consistency that is more like rice porridge / jok).
- Remove soup from heat and stir in lime juice. Taste and add more fish sauce or soy sauce if you’d like the soup to be more salty.
- Ladle into bowls and top with green onions and / or cilantro. Enjoy!
*This post contains affiliate links*