A comforting opo squash soup with meatballs 瓠子肉丸湯 (hù zi ròu wán tāng) that’s commonly served in Taiwanese households. The opo squash is cooked just until translucent in a flavorful broth, with super juicy and soft meatballs. You’ll find it hard to not go for seconds (I hope)!
This soup is light enough to enjoy year-round, yet warming and soothing for winter months. Although it’s traditionally made with pork meatballs (often store-bought frozen ones for busy households), this recipe uses one of my most popular meatball recipes – juicy turkey and tofu meatballs.
It’s sometimes called winter melon soup 冬瓜丸子湯 (dōng guā wánzi tāng) in Taiwan because opo squash tastes so similar to winter melon. I’ve actually called it winter melon soup (dong gua soup) for most of my childhood and adults would make opo squash soup instead.
If you’re into cozy and nourishing soups, you’ll also like this Taiwanese bitter melon soup with pork ribs recipe. Stir-fried water spinach 蒜炒空心菜 goes well with this soup too!
jump to:
📋 ingredients
- opo squash - look for a long, cylindrical-shaped light green squash in the refrigerated produce section at a local Asian grocery store. Stores like 99 Ranch Market will carry it. You can also get it delivered through Instacart or Weee! (affiliate link)
- medium-firm tofu - freeze the tofu beforehand (you can leave it in its original package), then defrost it right before using.
- ground turkey - feel free to use ground pork for the more traditional recipe!
- kosher salt - I use the Diamond Crystal brand kosher salt (affiliate link) in most recipes since it has lower sodium levels, making it easier to layer the seasoning without accidentally oversalting a dish. It can be found in some grocery stores. *If using table salt or sea salt, use half of the amount listed in the recipe.
See recipe card for quantities.
💭 what is opo squash?
It’s a long, cylindrical-shaped variety of squash. The outer skin is smooth and usually light green in color or darker green with white spots.
Opo squash (also called calabash squash or hù zi 瓠子 in Chinese) tastes similar to a cross between zucchini and cucumber. The seeds are edible and usually soft, with a slightly sweet flavor.
It makes a great substitute for winter melon (or dōng guā 冬瓜 in Chinese), especially in soups. So much so that it’s often mistaken as winter melon – this soup recipe is actually more commonly called dong gua tang 冬瓜湯 in Taiwan since the flavors are so similar!
When cooked, opo squash turns translucent. If you like your vegetables with a bite rather than soft and mushy, cook opo just until the pieces turn translucent.
🛒 where to buy
Opo squash is available year-round at various Asian grocery stores. You can find it in well-stocked Taiwanese, Chinese or Vietnamese grocery stores, usually displayed in the refrigerated produce area.
It’s almost always available at any 99 Ranch Market (they are on Instacart and they have their own delivery app - iOS or Android) or you can also find it on Weee! (affiliate link)
💭 how to pick
Choose ones that are firm with no blemishes or soft spots if possible. Look for stems that are still attached. Heavier squash of the same size will be more tender since it has higher moisture.
🔪 instructions
I’m going to go through each step in detail below, including step-by-step photos on how to cut opo squash and make meatballs from scratch. If you’re in a hurry, click here to jump straight to the recipe.
cut the opo squash
Peel the opo squash.
Cut off the stem of the opo squash.
Trim the ends by cutting off a thin slice.
Then, cut the opo squash in half lengthwise.
With the flat sides down, cut each half into 1-inch thick pieces.
Then cut the pieces down the middle lengthwise again.
defrost the frozen tofu
Place the package into a medium mixing bowl and cover the tofu in hot water. Allow it to warm up for 5 minutes.
Squeeze the defrosted tofu over a medium bowl or container until most of the liquid is released.
form the meatballs with this pro technique
Crumble tofu and set aside to use in your meatballs.
In a medium mixing bowl, combine the tofu, ground turkey, garlic, 1 teaspoon of salt, and ground white pepper.
Pick up a handful of meatball mixture in the non-dominant hand.
Form 1½-inch diameter meatballs with your hands by squeezing the mixture through your left thumb and index finger.
Gently smooth the surface of the meatball with your dominant hand.
Continue making meatballs and place them on a parchment-lined baking sheet.
pro tip: don’t make the same mistake I did and add any grated ginger to your meatball ingredients. The enzymes in fresh ginger will make the meatballs grainy.
Only add the opo squash 8 to 10 minutes before everyone’s ready to eat. It can quickly overcook.
📖 substitutions
To make this recipe even more simple, you can use these substitutions:
- Frozen pork or beef meatballs - to replace the homemade meatballs
- Winter squash and opo squash can be used interchangeably in this recipe. Use whichever you can find. Note that winter squash is sometimes sold as an already-cut wedge since they’re a lot larger.
Note: if you're using table salt instead of Diamond Crystal kosher salt (affiliate link), make sure to cut back on the amount by half.
📖 variations
- Pescetarian - Add shrimp instead of meatballs and use water instead of chicken stock. Shell-on shrimp will add a lot more flavor than already peeled shrimp.
- Dried shiitake mushrooms - add whole dried shiitake mushrooms for added umami flavor.
- Add mung bean noodles to make this a complete meal.
🍲 equipment
Note: Some of the links below are affiliate links, which means we do make a small profit from your purchases (your price is not affected by this commission). We are a participant in the Amazon Services LLC Associates Program. If you click on an affiliate link, you consent to a cookie being placed on your browser for purposes of tracking commissions.
I use a 4-quart Staub Cast Iron pot (affiliate link) for most soups and it's the perfect size for this recipe.
This Kuhn Rikon Swiss peeler (affiliate link) is used in professional kitchens because they're sharp and peel off just a thin layer, helping you reduce food waste. It's also comfortable to hold and works for left-handed cooks too!
❄️ storage
Opo squash can be stored in the refrigerator for up to 1 week (sometimes a little longer depending on when the squash was picked). If your vegetable drawer happens to be big enough, it’s best to store it there.
After 1 week, the squash may develop brown spots. A few discolored spots can be cut off and discarded if needed, but it’s best to use the squash before spots start to show up.
The cooked soup is good for 2-3 days when properly cooled and refrigerated.
Opo squash doesn’t freeze well, but the meatballs can be frozen to cook later. Make sure to freeze them in a single layer on a sheet pan first before transferring them to a different air-tight container. This will prevent the meatballs from sticking together.
💭 top tip
Pay close attention to the soup after you add the opo squash since it’ll start to overcook as soon as the pieces turn translucent. You can taste test a piece or two as the soup cooks to be safe.
💭 faq
A young opo squash can be eaten with the skin, but I prefer to peel it. It's similar to zucchini. For more mature opo squash, the skin should be removed for a more tender taste.
Opo squash is most often cooked in a variety of ways like in soups, stews, and stir-frys. Thin slices can also be quick-pickled with salt.
Let me know if you have any questions in the comments below.
Happy cooking! ~ Cin
Want to get recipe updates, pro cooking tips, and nutrition info on East Asian ingredients straight to your inbox? Sign up here for a free PDF with cozy soup recipes.
Please give this recipe a star rating ⭐️⭐️⭐️⭐️⭐️ if you make it. I would love to hear from you! If you have any questions at all, let me know in the comments below.
Want to Save This Recipe?
I'll send it to your inbox – just enter your email below. Plus, you'll get new recipes and pro cooking tips from me!
By submitting to this form, I consent to receive emails. Don't worry, you can unsubscribe anytime.
opo squash soup with meatballs 瓠子肉丸湯
ingredients
- 1 large opo squash, about 2 pounds, peeled
- 12 ounces firm tofu, previously frozen and defrosted in the original package
- ½ inch piece of ginger, thinly sliced
- 1 quart chicken stock, low sodium
- 1 quart water
- 2 tsp Diamond Crystal Kosher Salt, (use half the amount if using sea salt or table salt)
- 1 lb ground turkey, 20% fat
- 1 clove garlic, peeled and grated
- ⅛ tsp ground white pepper
Optional
- 5 sprigs fresh cilantro, roughly cut
*The Instacart button above is an affiliate link, which means we do make a small profit from your purchases (your price is not affected by this commission).
instructions
- Cut a sliver off each end of the opo squash, then cut in half lengthwise. With the flat sides down, cut each half down the middle lengthwise again. Then cut into 1-inch thick pieces.1 large opo squash
- Remove defrosted tofu from its original package. If it hasn’t fully defrosted yet, you can place the package into a medium mixing bowl and cover the tofu in hot water. Allow it to warm up for 5 minutes.12 ounces firm tofu
- Squeeze the defrosted tofu over a medium bowl or container until most of the liquid is released. Then crumble the tofu with your hands and set aside.
- Place the sliced ginger in a large (4-quart) stockpot and fill with the low-sodium chicken stock and cold water. Season with 1 teaspoon of Diamond Crystal kosher salt. Bring to a boil over medium-high heat, then reduce heat to a simmer.½ inch piece of ginger, 1 quart chicken stock, 1 quart water
- While the pot is being heated, prepare the meatballs.
- In a medium mixing bowl, combine the tofu, ground turkey, garlic, 1 teaspoon of salt, and ground white pepper. Mix with chopsticks just until well combined.12 ounces firm tofu, 2 tsp Diamond Crystal Kosher Salt, 1 lb ground turkey, 1 clove garlic, ⅛ tsp ground white pepper
- Form 1½-inch diameter meatballs with your hands by squeezing the mixture through your left thumb and index finger (this pro technique is shown in the step-by-step photos in the recipe post).
- Add the prepared meatballs to the simmering stock. Bring back up to a simmer and cook for 5 minutes. Then add the opo squash and cook for another 5-8 minutes or until the meatballs reach a minimum temperature of 165 °F (74 °C) and just after the opo squash turns translucent.1 large opo squash
- Serve it hot and top each bowl with fresh cilantro, if using.5 sprigs fresh cilantro
equipment and highlighted ingredients
notes
🌡️ food safety
- Wash your hands thoroughly with soap and warm water before prepping ingredients and after touching raw meat
- Cook meatballs to a minimum temperature of 165 °F (74 °C)
- If using, wash the fresh cilantro under cold water and dry on a kitchen towel.
- Don't leave food sitting out at room temperature for extended periods. If not enjoyed right away, allow the soup to cool down in smaller covered containers and then store it in the refrigerator.
See more guidelines at USDA.gov.
share your thoughts below. let's chat at the kitchen table: