Vietnamese xiu mai meatballs (xíu mại) are pork meatballs braised in a light, savory-sweet tomato sauce. They are not Chinese siu mai dumplings. No wrapper, no steamer basket - just tender spheres with a subtle jicama crunch, made for baguette dipping or a bowl of rice.

This version keeps weeknight gear simple: ground pork, pantry tomato sauce, and fish sauce for umami. Fresh tomatoes work if you have them; crushed tomatoes get dinner on the table faster. Serve as bánh mì xíu mại with cucumber and pickles, or ladle over jasmine rice.

For more tomato-braised comfort, see Spanish albondigas and classic beef meatballs in marinara. Sticky Asian glazes live on the Asian meatball recipes hub.

Key Takeaways

  • Not dumplings: Vietnamese xiu mai are meatballs in tomato sauce, not dim sum siu mai.
  • Texture secret: finely diced jicama (or water chestnuts) adds mild crunch inside soft pork.
  • Method: mix and shape, build a light tomato base, simmer covered - no deep fry required.
  • Serve two ways: crusty baguette for dunking, or rice bowls; leftovers make excellent banh mi.
  • Time: about 45 minutes total for 4 servings.

How to Make Vietnamese Xiu Mai Meatballs

  1. Peel and finely dice the jicama into about 1/4-inch pieces. Wrap in a clean towel and squeeze dry. Finely chop green onion whites for the mix; reserve greens for garnish.
  2. In a large bowl, combine ground pork, squeezed jicama, green onion whites, garlic, 1 tablespoon fish sauce, 1 tablespoon cornstarch, salt, pepper, and 1 teaspoon sugar. Mix until just combined. Shape into about 20 meatballs, 1 to 1.25 inches across. Wet hands if the mix sticks.
  3. Heat oil in a wide skillet over medium heat. Soften minced shallot for 2 to 3 minutes. Stir in tomato paste for 30 to 45 seconds until brick-red and fragrant.
  4. Add crushed tomatoes, 1 tablespoon fish sauce, 1 tablespoon sugar, water or broth, and black pepper. Bring to a gentle simmer for 5 minutes so the sauce loses its raw edge.
  5. Gently nestle meatballs into the sauce in a single layer. Liquid should come about three-quarters up the sides. Cover and cook on medium-low for 5 minutes.
  6. Uncover, rotate the meatballs carefully, cover again, and cook 8 to 10 minutes more until firm and 160F (71C) in the center. Avoid aggressive stirring early so they do not break.
  7. If the sauce is thin for bread dunking, stir in the cornstarch slurry and simmer 1 to 2 minutes until lightly glossy. Taste for salt, sugar, and fish sauce. Garnish with green onion greens. Serve hot with baguette or rice.

Ingredients

Meatballs

  • 1 lb (450 g) ground pork, 80/20 or 85/15
  • 1 cup (about 4 oz / 115 g) jicama, finely diced (sub: canned water chestnuts, drained and chopped)
  • 3 green onions, white and green parts separated, finely chopped
  • 2 cloves garlic, minced
  • 1 tbsp fish sauce
  • 1 tbsp cornstarch
  • 1/2 tsp kosher salt
  • 1/2 tsp black pepper
  • 1 tsp sugar

Tomato sauce

  • 1 tbsp neutral oil
  • 1 small shallot or 1/4 onion, minced
  • 2 tbsp tomato paste
  • 1 can (14 oz / 400 g) crushed tomatoes (or about 1.5 lb fresh tomatoes, chopped)
  • 1 tbsp fish sauce
  • 1 tbsp sugar
  • 1 cup (240 ml) water or low-sodium chicken broth
  • 1/4 tsp black pepper
  • 2 tsp cornstarch mixed with 2 tsp cold water (optional)

To serve

  • Crusty baguette or steamed jasmine rice
  • Optional for banh mi: cucumber, cilantro, pickled carrot and daikon, mayo

What Is Xiu Mai (Xíu Mại)?

Xiu mai (written xíu mại in Vietnamese) is a Vietnamese pork meatball dish simmered in tomato sauce. The name is a phonetic borrowing from Cantonese, which is why English speakers often confuse it with Chinese siu mai (shumai) dumplings. The dishes are unrelated on the plate: one is a braised meatball main; the other is an open-faced steamed dumpling.

Southern Vietnamese home cooking and Hoa Chinese-Vietnamese communities helped popularize the tomato-sauced style. In many households it is simply called pork balls in tomato sauce. Đà Lạt-style breakfast versions can be lighter and brothier; this recipe follows the thicker, dunkable tomato sauce common with baguette and rice.

Why Jicama Matters

Jicama (củ sắn) is the classic crunch inside xiu mai. Finely diced pieces stay crisp-tender after simmering and keep the meatballs from tasting dense. Always squeeze dry after dicing - wet jicama is a top reason meatballs fall apart.

No jicama? Use drained, patted, finely chopped water chestnuts. Onion can stand in for shallot if you mince it fine; raw watery onion chunks are harder to mix evenly.

Sauce Balance: Savory-Sweet, Not Marinara

Vietnamese tomato sauce for xiu mai is lighter and more savory-sweet than Italian marinara. Fish sauce replaces much of the Parmesan-and-herb backbone. Sugar softens tomato acidity; tomato paste builds color fast.

Element Role in xiu mai sauce
Tomato paste + crushed tomatoes Body and color
Fish sauce Salt and fermented depth
Sugar Softens acidity, slight sweetness
Water or broth Keeps the braise spoonable for bread
Optional slurry Gloss for baguette coating

If you want a smokier European profile instead, cook Spanish albondigas in sofrito. For Italian-American red sauce, use classic beef meatballs in marinara.

How to Serve: Rice, Baguette, or Banh Mi

Rice bowl: spoon meatballs and sauce over hot jasmine rice. Add sliced cucumber and herbs.

Baguette dunk: the classic comfort move. Tear crusty bread and mop the pan.

Bánh mì xíu mại: split a soft-crust baguette, spread mayo, add 3 to 4 meatballs with sauce, cucumber, cilantro, and pickled carrot-daikon. Jalapeño optional. This is the same idea as a meatball sub with Vietnamese seasoning - pair with our meatball sub recipe technique notes if you want sandwich structure tips.

Tips for Tender, Intact Meatballs

  • Use pork with some fat (80/20 or 85/15). Very lean pork dries out.
  • Chill the shaped meatballs 10 to 15 minutes if the kitchen is warm - cold fat holds shape better.
  • Do not crowd the skillet. One layer braises evenly.
  • Swirl the pan early; stir only after the exterior sets.
  • Taste a tiny microwave sample of the raw mix if you want to check seasoning before shaping.

For general binding and panade technique across cuisines, see the how to make meatballs guide.

Make-Ahead, Storage, and Freezing

Cooked xiu mai keeps in an airtight container in the fridge for 3 to 4 days. Reheat gently on the stove with a splash of water so the sauce loosens.

Freeze cooked meatballs in sauce up to 2 months, or freeze raw shaped meatballs on a tray, then bag. Thaw overnight in the fridge before simmering. Sauce thickens in the fridge; thin with broth when reheating.

Variations

  • Pork + shrimp: replace about 3 oz of pork with finely minced raw shrimp for extra bounce.
  • Half beef: 50/50 pork and beef for a deeper flavor.
  • Turkey: workable if you add 1 tablespoon oil to the mix; lean turkey is drier.
  • Air fryer meatballs: cook shaped meatballs until nearly done, then finish 5 to 8 minutes in the simmering sauce so they still soak up tomato flavor. Pair method notes with air fryer meatballs.
  • Party tray: keep warm in a slow cooker on low and set out toothpicks - same spirit as crockpot party meatballs.

FAQ

Is Vietnamese xiu mai the same as Chinese siu mai?

No. Chinese siu mai (shumai) are open-topped steamed dumplings with wrappers. Vietnamese xiu mai are pork meatballs simmered in tomato sauce with no wrapper. The names sound similar because of shared linguistic roots, not because the dishes match.

Can I make xiu mai without jicama?

Yes. Use canned water chestnuts, drained, patted dry, and finely chopped. You lose a little of the mild sweetness of jicama, but you keep the crunch contrast that defines the meatball texture.

Do I need to steam the meatballs first?

Not for this weeknight method. Many traditional recipes steam before saucing. Here, a covered simmer in sauce cooks them through while they pick up tomato and fish sauce flavor. Handle gently for the first several minutes so they set.

What should I serve with Vietnamese meatballs in tomato sauce?

Baguette for dipping, jasmine rice, or a full banh mi with cucumber, cilantro, and pickles. A simple side salad or pickled vegetables cut the richness of the pork.

Can I use frozen meatballs?

Store-bought Italian-style frozen meatballs will not taste like true xiu mai (missing jicama, fish sauce, and pork profile), but you can warm them in this tomato-fish sauce base for a quick fusion dinner. For more freezer shortcuts, see frozen meatball recipes.

How spicy is xiu mai?

The base recipe is mild and savory-sweet. Heat comes from optional jalapeño on a sandwich or chili sauce at the table, not from the tomato braise itself.

Sources