Cambodian Pineapple Soup with Fish, Tamarind, and Herbs

Updated November 3, 2026

Total time
50 min
prep 25 min · cook 25 min
Serves
4
portions as written
Safe temperature (USDA)
145°F / 63°C
check the thickest piece

Jump to recipe

Cambodian Pineapple Soup with Fish, Tamarind, and Herbs

Cambodian pineapple soup is a bright, sweet-sour broth, often made with fish, ripe pineapple, tomatoes, and tamarind, then finished with leafy greens and fresh herbs. Versions vary by household and region; this one keeps the broth light and savory, with tender fish and a balance of fruit sweetness, tamarind tang, and fish sauce.

Ingredients

  • 1 tablespoon neutral oil (15 ml), such as canola or rice bran oil
  • 2 lemongrass stalks (about 25 g), outer leaves removed, lightly bruised, and cut into 3-inch lengths
  • 1 medium shallot (about 50 g), thinly sliced
  • 2 garlic cloves (about 6 g), finely chopped
  • 6 cups water or unsalted fish stock (1.4 L)
  • 2 cups fresh pineapple chunks (about 330 g), cut into bite-size pieces
  • 2 medium ripe tomatoes (about 300 g), cut into wedges
  • 1½ tablespoons tamarind concentrate (about 22 g), or prepared tamarind pulp as directed on its package
  • 1 tablespoon fish sauce (15 ml), plus more to taste
  • 1 teaspoon granulated sugar (4 g), plus more to taste if the pineapple is tart
  • 1 pound firm white fish, such as catfish, tilapia, or cod (450 g), cut into 1½-inch chunks
  • 2 cups chopped water spinach (about 70 g), tough stems removed
  • 2 green onions (about 20 g), thinly sliced
  • ¼ cup chopped cilantro (about 10 g)
  • ¼ cup chopped ngo om, also called rice paddy herb (about 10 g), if available
  • ¼ teaspoon freshly ground black pepper (about 0.5 g)
  • 1 lime, cut into wedges (about 60 g), for serving

Instructions

  1. Prepare the ingredients. Remove any pin bones from the fish, then cut it into evenly sized chunks and keep it chilled while you prepare the vegetables. Bruise the lemongrass with the side of a knife to help release its aroma. Slice the shallot and garlic, cut the tomatoes and pineapple, and wash and chop the greens and herbs. If using prepared tamarind pulp rather than concentrate, follow the package directions to make about 1½ tablespoons of usable concentrate. This recipe has no marinating or soaking time.
  2. Start the aromatic broth. Heat the oil in a large pot over medium heat. Add the lemongrass, shallot, and garlic and cook for about 4 minutes, stirring frequently. The shallot should soften and the mixture should smell fragrant, but the garlic should not brown. If it starts to color too quickly, lower the heat; scorched garlic can make the broth bitter.
  3. Simmer the fruit and seasonings. Pour in the water or stock, then add the pineapple, tomatoes, tamarind concentrate, fish sauce, sugar, and black pepper. Bring the liquid to a gentle boil, then reduce the heat so it simmers steadily for 12 minutes. This gives the pineapple time to soften slightly and the tomato and tamarind flavors time to spread through the broth. Keep the pot uncovered so the soup does not boil over.
  4. Poach the fish. Lower the fish chunks carefully into the simmering broth and cook for about 7 minutes, turning them once only if needed. Keep the liquid at a gentle simmer rather than a hard boil, which can break up the fish. Check the thickest piece with a food thermometer: fish must reach 145°F (63°C), the USDA FSIS safe minimum internal temperature. The flesh should also look opaque and separate easily with a fork. If a piece has not reached temperature, simmer it a little longer and check again.
  5. Finish with greens and herbs. Stir in the water spinach and cook for 2 minutes, just until tender and bright green. Turn off the heat, remove the lemongrass pieces, and stir in the green onions, cilantro, and ngo om. Taste the broth before serving. Add fish sauce for more savory saltiness, a pinch of sugar if the fruit is especially sharp, or a squeeze of lime for a fresher sour edge. Serve hot with lime wedges.

Tips

  • Choose fish that holds together. Catfish is a familiar choice for this style of soup, while cod, tilapia, or another firm white fish works well too. Cut the pieces about the same size so they cook evenly. Delicate fish can still be used, but lower it into the broth gently and avoid stirring once it begins to cook.
  • Adjust tamarind gradually. Tamarind concentrates differ in strength, and prepared pulp can be milder than a commercial concentrate. Start with the amount listed, taste after simmering, and add a little more if needed. If tamarind is unavailable, add lime juice a teaspoon at a time at the end; lime gives a sharper, more citrusy sourness rather than tamarind’s rounded, fruity tang.
  • Use herbs strategically. Ngo om, or rice paddy herb, is traditional in several Southeast Asian soups but may be difficult to find. Thai basil plus cilantro is a practical substitute; it makes the finish more anise-like and less grassy. Add tender herbs after the heat is off so their aroma stays fresh.
  • Keep the broth gentle. A rolling boil can make fish fall apart and can soften the vegetables too much. Once the liquid reaches a boil, lower it to a steady simmer. If you prefer a clearer broth, skim any foam that rises before adding the fish.

Serving Suggestions

Serve the soup hot in deep bowls, making sure each portion gets fish, pineapple, tomato, greens, and plenty of broth. A bowl of steamed jasmine rice is the usual kind of accompaniment to consider: spoon some rice into the bowl or serve it alongside so diners can decide how much broth to soak up. Rice is not included in the recipe’s 50-minute timing, so start it separately if you want it ready at the same time.

Put lime wedges and extra sliced green onion or herbs on the table. The lime is useful for diners who want a more pronounced sour finish, while extra herbs bring a greener aroma. Because the soup already has a sweet-and-sour profile, simple sides work best: plain rice, lightly blanched greens, or crisp cucumber slices are enough without competing with the broth.

Variations

Use a different fish or seafood. Salmon gives the broth a richer flavor, while shrimp can be used in place of some or all of the fish. Add shrimp near the end and cook until opaque and firm; check that it reaches 145°F (63°C) with a food thermometer. A mix of fish and shrimp makes a more substantial pot, but avoid cooking seafood for a long time or its texture can turn tough.

Make it meat-free. Replace the fish with firm tofu and use vegetable stock instead of fish stock. Omit the fish sauce and season with a little extra salt or a vegetarian fish-sauce alternative. Tofu will not provide the same savory seafood flavor, so add the replacement seasoning gradually and taste the broth before serving.

Change the vegetables. Water spinach is a useful leafy addition, but it is not always sold in regular supermarkets. Substitute baby spinach, which wilts quickly, or chopped bok choy, which needs a little longer to soften. If using spinach, add it during the final minute rather than cooking it for the full 2 minutes.

Use canned pineapple when necessary. Drain canned pineapple chunks and use the same 2-cup measure. They are generally softer and sweeter than fresh pineapple, so begin with the listed sugar amount but taste before adding more. Avoid pineapple packed in heavy syrup if you want the broth’s sweetness to stay balanced. A little extra tamarind or lime can correct a broth that tastes too sweet.

Storage and Reheating

For food safety, refrigerate the soup within 2 hours of cooking. Transfer it to a shallow, covered container so it cools promptly, and keep it refrigerated for 3 to 4 days. The fish may become a little firmer after storage, and the greens will lose some of their fresh color, but the broth remains useful for a quick meal. If you know you will have leftovers, you can also cook only the fish and greens you expect to eat and store extra broth separately.

Reheat leftover soup in a saucepan over medium-low heat, stirring gently and bringing it to 165°F (74°C); check the center with a food thermometer. Avoid a vigorous boil, which can break the fish into small pieces. Add a splash of water if the broth has concentrated, and brighten it with fresh lime or herbs after reheating. Freeze in a sealed, freezer-safe container for up to 2 months for best quality. Thaw in the refrigerator before reheating; the fish and greens may be softer after freezing, so the texture is best when the soup is freshly made.

Frequently Asked Questions

What makes Cambodian pineapple soup sour?

Tamarind is the main souring ingredient in this version. It gives the broth a tart, rounded flavor that balances the sweetness of pineapple and the savory saltiness of fish sauce. Some cooks use other souring ingredients or adjust the balance to suit the fruit and their preference. Lime is a convenient substitute, but it tastes brighter and more citrus-forward, so add it gradually at the end.

Is this soup traditionally made with fish?

Fish is a common choice for Cambodian sour soups, and it pairs naturally with pineapple, tomato, and herbs. Recipes vary, however: the fish, vegetables, herbs, and degree of sourness can change between households and regions. This recipe uses firm white fish because it is easy to portion and cooks quickly. You can use another fish or follow the tofu variation if you want a meat-free bowl.

Can I make Cambodian pineapple soup ahead?

You can prepare the vegetables and herbs and measure the seasonings several hours ahead, keeping everything covered and refrigerated. For the best fish texture, cook the soup close to serving time. If you need to cook it completely in advance, refrigerate it promptly and reheat gently to 165°F (74°C); add fresh herbs after reheating rather than storing them in the hot broth.

How do I keep the fish from falling apart?

Choose a firm fish, cut it into generous, even chunks, and add it only after the broth and vegetables have simmered. Keep the pot at a gentle simmer and do not stir repeatedly. Use a spoon to lift portions rather than whisking the broth. If the fish flakes easily but has not yet reached 145°F (63°C), continue cooking gently and check the thickest piece again.

Can I use tamarind pulp instead of concentrate?

Yes. Tamarind pulp is often sold as a dense block and usually needs to be soaked in hot water and strained before use. Follow the package directions, then measure out about 1½ tablespoons of the prepared liquid to start. Since products vary in strength, taste the broth after simmering and add more only if it needs additional tang. Tamarind concentrate is more convenient, but the exact amount may need adjustment.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).