Learn how to make comforting Khao Tom in just 20 minutes! Made with easy-to-find ingredients, this classic Thai rice soup feels like an elevated version of the much loved chicken and noodle soup.

I like to make myself a bowl of Khao Tom soup whenever I have day-old rice and want something other than fried rice. It’s quick, tasty, and hits the spot when I’m craving traditional Southeast Asian flavors.
Although it’s commonly eaten for breakfast in Thailand, this soup is just as good for lunch, dinner, or anytime you want an easy, nourishing meal that wonโt weigh you down. Itโs savory and delicate and also very versatile. While my version of Khao Tom contains fish balls, it can also be made with tofu, chicken, and other proteins.
Why You’ll Love This Recipe
- Ready in about 20 minutes
- Great use for leftover rice
- Comforting and easy to digest
- Customizable with different proteins
Table of contents

What is Khao Tom?
Khao Tom is a traditional Thai rice soup made by simmering day-old rice in broth until the grains are soft and fragrant. It’s somewhere between a rice soup and a congee.
Itโs typically flavored with garlic, fish sauce, and a touch of sugar, then topped with fresh cilantro, green onions, and white or black pepper. Protein options vary and can include fish balls, ground chicken, shrimp, or pork.

Khao Tom Ingredients
- Aromatics: The garlic and celery build the base of this soup by infusing it with mild, clean, and slightly sweet flavors. Together, they create a delicate foundation that complements the rice and broth instead of competing with them. This is why Khao Tom tastes soothing and balanced rather than intensely spiced.
- Broth: A mix of chicken broth, fish sauce, soy sauce, and sugar, gives the soup its classic Thai taste.
- Protein: Fish balls are commonly used and keep the soup on the lighter side, while ground chicken makes it more filling.
- Toppings: Coriander leaves and stems add freshness and a nice herbaceous taste, while the green onions add sharpness and a nice crunch.

How to Make Khao Tom
- Cook the garlic and celery: Start by warming the oil in a medium pot over medium-high heat. Once itโs hot, add the garlic and celery and let them cook until fragrant. Youโre not looking for color here โ just enough heat to soften the celery and release the aroma of the garlic.
- Add the ingredients for the broth: Pour in the chicken broth, followed by the fish sauce, soy sauce, and sugar. Give everything a good stir and bring the soup to a gentle boil.
- Add the rice and let simmer: Add the cooked rice and lower the heat. Let the soup simmer for a few minutes so the rice can absorb some of the broth. The goal is a light, soupy consistency, not a thick porridge.
- Add the protein: Once the rice has softened, add the fish balls. Keep the soup at a steady simmer until the fish balls are fully cooked.
- Serve: Turn off the heat and ladle the soup into bowls. Finish with plenty of chopped cilantro, green onions, and a generous pinch of ground pepper right before serving.

Cooking Tips
Coriander stems: While many of us tend to only use the leaves of coriander, the stems are also very aromatic and often used in traditional Thai cooking.
Make it vegan: Use vegetable broth instead of chicken broth, soy sauce instead of fish sauce, and tofu instead of fish balls.
Add fresh ginger: A thumb size amount of grated ginger adds warmth and a little heat. It’s also great if youโre feeling under the weather.
Make it spicy: Use toppings such as freshly chopped Thai chilis, a dash of chili oil or chili paste, or a squirt of sriracha sauce.
Storage and Reheating
Fridge: Store the leftovers in an airtight container and refrigerate for up to 2 days.
Reheat: Transfer the leftover soup to a pot and reheat on low. You may need to add a splash of broth or water if the soup has thickened and is looking like congee.

Frequently Asked Questions
No. Khao Tom is light and clear, with rice grains still intact. Congee on the other hand is cooked until the grains are mushy and the soup is cloudy and porridge-like.
Jasmine rice is the most traditional choice because of its aroma and soft texture, but long-grain white rice also works well. Brown rice can be used, though it will have a slightly firmer bite and won’t be as fragrant.
Freezing isnโt ideal because the rice changes texture once thawed. If you plan to freeze it, freeze the broth and protein separately and add the day-old rice when reheating.

What To Serve With Khao Tom
Khao Tom pairs well with simple sides such as vegetable egg rolls and edamame with soy and sesame sauce. Topping the soup with some pickled vegetables add some tanginess and makes the flavors jump.
If you are looking for something more filling, I suggest making a full Thai spread and serving it with popular dishes such as Thai basil chicken, pad thai, or panang curry.
Did you like this soup? Are there changes you made that you would like to share? Share your tips and recommendations in the comments section below!
Print
Thai Rice Soup (Khao Tom)
- Prep Time: 15 minutes
- Cook Time: 10 minutes
- Total Time: 25 minutes
- Yield: 2 servings 1x
- Category: Soup
- Method: Boiling
- Cuisine: Thai
- Diet: Low Calorie
Description
A light, comforting Thai rice soup that only takes 20 minutes to make from start to finish.
Ingredients
- 1 tablespoon vegetable oil or grapeseed oil
- 2 garlic cloves, minced
- 1 celery stalk, finely chopped
- 4 cups low sodium chicken broth
- 1 tablespoon fish sauce
- 1 tablespoon soy sauce
- 1/2 teaspoon sugar
- 1 1/2 cup day-old jasmine rice, long grain rice, or brown rice
- 10 fish balls or 1/2 cup ground chicken
- 1/2 cup coriander leaves and stems, finely chopped
- 2 green onions, finely chopped
- Ground black pepper, to taste
Tip: You can also used freshly cooked rice but day-old rice works better in keeping the soup from turning mushy.
Instructions
- Start with the aromatics. In a medium size pot over medium high heat, add the oil and swirl it around to coat the bottom surface. When the oil is hot, add the garlic and celery and cook for 2 minutes, until the celery has begun to soften.
- Season the broth. Add the chicken broth, fish sauce, soy sauce, and sugar, and stir.
- Boil the soup. Add the rice and bring the soup to a boil. Lower the heat and simmer for 5 minutes.
- Cook the fish balls. Add the fish balls and cook for 7 minutes.
- Garnish and serve. Turn the heat off and ladle the soup into bowls. Top with cilantro and green onions and serve with ground white pepper.
Notes
Storage: Save the leftovers in an airtight storage container and refrigerate for up to 2 days.ย
Nutrition
- Serving Size: 1 serving
- Calories: 468
- Sugar: 3.1g
- Sodium: 1096mg
- Fat: 18.6g
- Saturated Fat: 6.5g
- Unsaturated Fat: 0.8g
- Trans Fat: 0g
- Carbohydrates: 50.5g
- Fiber: 0.8g
- Protein: 23g
- Cholesterol: 0mg














