Go Back
+ servings
Print Recipe
5 from 3 votes

Vietnamese Meatball Banh Mi (Banh Mi Xiu Mai)

This Vietnamese Meatball Banh Mi (Banh Mi Xiu Mai) makes a delicious and fulfilling breakfast or main meal. The juicy pork meatballs are served with a flavorful tomato sauce and crispy banh mi (Vietnamese baguette).
Prep Time10 minutes
Cook Time20 minutes
Total Time30 minutes
Course: Breakfast, Main Dish
Cuisine: Vietnamese
Keyword: banh mi xiu mai
Servings: 2 people
Calories: 1181kcal
Author: Sophie

Ingredients

For the Meatballs

  • 1 small onion, diced (about 2/3 cup diced onions)
  • 1/2 tablespoon minced garlic
  • 10 oz ground pork
  • 3/8 teaspoon salt
  • 1/3 cup panko breadcrumbs
  • 1/4 cup milk
  • black pepper
  • olive oil

For the Tomato Sauce

  • 1/2 tablespoon minced shallot
  • 1/2 tablespoon minced garlic
  • 3 ripe medium tomatoes, diced (about 12 oz or 2 cups diced tomatoes)
  • 1 tablespoon fish sauce
  • 1/2 tablespoon soy sauce
  • 1 teaspoon tomato paste
  • 1/3 cup water (or chicken stock)

For the Cornstarch Slurry (optional)

For Serving

  • 2 banh mi or baguettes, lightly toasted
  • thinly sliced scallions (for garnishing)

Instructions

  • Place a sauté pan over medium heat. Add some olive oil, and then add diced onions and garlic. Sauté for about 3-4 minutes until translucent to develop sweetness. Be careful to not let them burn. Set aside to cool.
  • In a mixing bowl, add ground pork, cooked onions, other ingredients for the meatballs and plenty of freshly cracked black pepper. Mix thoroughly for 2-3 minutes until the mixture is well combined and sticky.
    Ingredients for Vietnamese meatballs (xiu mai)
  • Use about a little over 1 1/2 tablespoons of filling to form each meatball. Place them into a heatproof plate. Place the plate in a steamer (or a large pan/pot), and steam until the meatballs are almost cooked through, about 5-6 minutes. Transfer the meatballs to a plate and reserve the meat juice released while steaming.
    Steaming Vietnamese meatballs (xiu mai)
  • Place the sauté pan on medium - medium high heat. Add some olive oil, and then add shallot and garlic. Sauté for a few seconds until fragrant. Add diced tomatoes, stir and cook until the tomatoes start to soften and release juice. 
  • Add meat juice plus additional water or chicken stock so that we add about 2/3 cup of additional liquid to the tomato sauce. Add tomato paste, fish sauce, soy sauce, black pepper, stir and bring to a simmer. Lower heat, cover and let the sauce simmer gently for a few minutes or until flavors meld together. Adjust seasonings to taste.
    Making tomato sauce for Vietnamese meatball banh mi (banh mi xiu mai)
  • Add meatballs to the pan. Cover and continue to simmer for a couple of minutes, flip the meatballs once, until they are cooked through and lightly coated with the sauce. 
    Cooking Vietnamese meatballs in tomato sauce (xiu mai)
  • Transfer the meatballs to serving plates/bowls. If you want to thicken the tomato sauce, mix together cornstarch and water to make the cornstarch slurry. Then slowly add cornstarch slurry while stirring the sauce to thicken it. Only add as much as you need to thicken the sauce to your liking.
  • Add the tomato sauce to the serving plates/bowls. Garnish with scallions and serve immediately with banh mi or baguettes.

Notes

In step 5, the amount of liquid to be added to the sautéed tomatoes depends on how juicy your tomatoes are. Mine are juicy, so I added 2/3 cup of additional liquid which consists of 1/4 cup of the meat juice released from steaming the meatballs and a little over 1/3 cup of water (or chicken stock). You can certainly make it thinner and more saucy than I suggest.
With this recipe, I make 12 meatballs which are enough to serve 2-3 people.

Nutrition

Calories: 1181kcal | Carbohydrates: 149g | Protein: 51g | Fat: 40g | Saturated Fat: 14g | Cholesterol: 105mg | Sodium: 3130mg | Potassium: 1315mg | Fiber: 10g | Sugar: 12g | Vitamin A: 1630IU | Vitamin C: 32.3mg | Calcium: 299mg | Iron: 9.8mg