clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon
Two bowls of Vietnamese fish, pineapple, and tomato soup sprinkled with chopped green onions and cilantro.

Vietnamese Fish, Pineapple, and Tomato Soup

5 Stars 4 Stars 3 Stars 2 Stars 1 Star 5 from 1 review
  • Author: Nguyet Vo
  • Prep Time: 10 minutes
  • Cook Time: 20 minutes
  • Total Time: 30 minutes
  • Yield: 4 servings 1x
  • Category: Soup
  • Method: Stovetop
  • Cuisine: Vietnamese


This homestyle Vietnamese sweet and sour soup with fish, pineapples, and tomatoes is great all year round. It is similar to traditional Vietnamese canh chua but uses ingredients that are easier to find at most grocery stores.


Units Scale
  • 1 (20 ounce) can pineapple chunks in juice (see Note 1)
  • 2 tablespoons canola oil
  • 2 scallions, thinly sliced, plus more for serving
  • 78 ounces mild white fish, cut into large chunks (I use tilapia)
  • 1 cup cherry tomatoes, halved
  • 3 tablespoons fish sauce (see Note 2)
  • 4 cups cooked rice vermicelli noodles or white rice
  • Fresh lime juice, for serving
  • Fresh cilantro, chopped, for serving


  1. Prep pineapples. Drain pineapple juice into a 2 cup glass measuring cup. Add enough water to measure 2 cups of liquid (see Note 3). Set aside.
  2. Cook fish. Heat oil in a large saucepan over medium-high heat until hot but not smoking. Add scallions and fish and cook until fish is lightly browned and just cooked through. Transfer fish to a plate and set aside.
  3. Make broth. To saucepan, add 3 tablespoons fish sauce and cook until reduced by half, scraping to loosen any browned bits, about 2 minutes. Add pineapple juice mixture, 2 cups of water, pineapple chunks, and tomatoes. Bring to a boil, then reduce heat and simmer, uncovered, for 10 minutes until tomatoes are cooked through. Return fish to the pan along with any accumulated juices. Simmer another minute.
  4. Serve. To serve, divide noodles or rice among four soup bowls. Ladle hot soup over noodles, add a good squeeze of lime juice, and sprinkle with cilantro and scallions. Serve with additional fish sauce to taste, if desired.


  1. Be sure to use the canned pineapple chunks in juice and not the kind in heavy syrup.
  2. I like Red Boat brand fish sauce.
  3. You can also use low-sodium vegetable broth instead of water.
Right Menu Icon