Xiu Mai

Growing up, I always thought meatballs were something that comes from Italy, so I was pleasantly surprised when I found out Vietnam also has its own version of meatballs. These Xiu Mai or Vietnamese meatballs remind me a little bit of bun cha hanoi but way more comforting with its tomato sauce. When I first tasted these meatballs, it tasted distinctly Vietnamese, and I loved it! Ingredients like fish sauce and sesame oil give it that yummy umami flavor, and the tomatoes and sugar balance it out with sweetness. I love this recipe so much, and I’m so excited to share it with you!

A spoon holding up a Vietnamese meatball or xiu mai over a bowl of meatballs.

How my mom makes Xiu Mai

There are many variations of this dish across street vendors who sell this dish and families who enjoy it on a daily basis. My family likes to use carrots in the meatball whereas a lot of people prefer jicama instead. I love how the sweetness from the carrots complements the umami flavors in the dish. My mom likes to use ketchup in the sauce which is not normally used, but she says it adds color and flavor to the sauce. And to top it all off, we eat it with a crunchy banh mi baguette.

Some deets about key ingredients

  • Baguette – The baguette helps give some structure to the meatballs. In Vietnamese cooking, we use baguettes anytime we need bread, but you can use any kind of bread you want. Good substitutes are white bread and wheat bread.
  • Carrots – This is my mom’s personal touch, and one I love. You can substitute carrots with jicama.
  • Shallots – Adds a sweetness to these meatballs. A great substitute is sweet yellow onion.
  • Sesame oil – Adds a smokey umami flavor to the xiu mai. I added more sesame oil than I usually do because I love the flavor it adds to the meatballs. Feel free to add less.
  • Corn starch – Substitute with all purpose flour, potato starch, or tapioca starch.
  • Chicken broth – I used low sodium chicken broth for this recipe since there’s already so much salt in this sauce. I tested this recipe with regular chicken broth, and it was way too salty! You can substitute with water or vegetable broth.
  • Corn starch – Corn starch helps thicken the sauce. You can substitute with all purpose flour or tapioca starch.

How to make Xiu Mai

  1. Soak the baguette in water to soften the bread. Use a cheesecloth or paper towel to squeeze out as much liquid as possible. Add it to a large bowl.
  2. Next, saute the minced garlic and shallots until they become brown. Add them to the bowl. Add the rest of the ingredients for the meatballs and mix. Form meatballs that are 2 inches in diameter and place them in a bowl.
    • Tip #1: The tip I love the most is using an ice cream scoop. Scooping the meatballs with an ice cream scoop then rolling them between your hands is the best way to form uniform meatballs. And when they’re uniform, they cook evenly.
  3. Bring water to a simmer in your steamer pot and add the steamer insert. Put the bowl in the steamer insert and steam for 15-20 minutes until the meatballs are cooked through. If the steamer insert is too deep for the bowl, add another bowl flipped upside down and put the bowl of meatballs on top. This makes it easier to pull out the bowl.
    • Tip #2: If you don’t have a steamer, fill a large pot with 2-3 inches of water. Place a bowl upside down in the pot and bring to a simmer. Then put in your meatballs and steam!
  4. While the meatballs are steaming, make the sauce. Add the onions to a large sauce pan over medium high heat. Cook for 2-3 minutes until translucent. Add the tomatoes and cook for 5 minutes until the tomatoes soften. Add the ketchup and chicken broth and cook for 5-10 minutes until the sauce thickens. Lastly, add the fish sauce, sugar, and a corn starch slurry to the sauce and mix. Make the corn starch slurry by mixing the corn starch and 2 tbsp of water.
  5. Once the meatballs are done, add them to the sauce. Bring the sauce to a simmer and remove from the heat. Serve meatballs with a baguette and enjoy!

How do you serve and eat xiu mai?

The traditional way to serve xiu mai is with a baguette! When eating, place some of the meatball and the sauce on the bread and take a bite. You can also serve this with white rice. I’ve had it with both and they both are yummy compliments to the dish.

Xiu Mai in a black bowl served in a baguette.

Did you make this dish?

If you made this dish, I would love to see!

Follow Cooking Therapy on Instagram, snap a photo, and tag and hashtag it with @cooking__therapy and #beccascookingtherapy.

Stay connected and follow along on FacebookPinterest, and Instagram for all my latest recipes.

Disclaimer: If you purchase anything through a link on this site, I may receive a small commission from the purchase at no extra cost to you. I also only recommend products that I would personally use. Thank you so much for the support!

Xiu Mai

Get the Recipe:
Comforting Xiu Mai (Vietnamese Meatballs)

These Xiu Mai or Vietnamese Meatballs are the perfect comfort food for colder days. They are made with some traditional ingredients like fish sauce and sesame oil combined with some more modern ingredients like ketchup. Altogether, they make an amazing, flavorful dish.
4.88 from 8 ratings

Ingredients
 
 

Meatballs

Sauce

Instructions
 

  • Soak the baguette in water to soften the bread. Use a cheesecloth or paper towel to squeeze out as much liquid as possible. Add it to a large bowl.
  • Next, saute the minced garlic and shallots until they become brown. Add them to the bowl (2-3 minutes).
  • Add the rest of the ingredients for the meatballs and mix.
  • Form meatballs that are 2 inches in diameter and place them in a bowl. Grab some meat and roll it between your palms until it forms a ball.
  • Bring water to a simmer in your steamer pot and add the steamer insert. Put the bowl in the steamer insert and steam for 15-20 minutes until the meatballs are cooked through. If the steamer insert is too deep for the bowl, add another bowl flipped upside down and put the bowl of meatballs on top. This makes it easier to pull out the bowl.
  • While the meatballs are steaming, make the sauce. Add the onions to a large sauce pan over medium high heat. Cook for 2-3 minutes until translucent.
  • Add the tomatoes and cook for 5 minutes until the tomatoes soften.
  • Add the ketchup and chicken broth and cook for 5-10 minutes until the sauce thickens.
  • Lastly, add the fish sauce, sugar, and a corn starch slurry to the sauce and mix. Make the corn starch slurry by mixing the corn starch with 2 tbsp of water.
  • Once the meatballs are done, add them to the sauce.
  • Bring the sauce to a simmer and remove from the heat.
  • Serve meatballs with a baguette and enjoy!

Notes

Store in the fridge for 2-3 days in an airtight container.
Calories: 572kcal, Carbohydrates: 55g, Protein: 27g, Fat: 28g, Saturated Fat: 10g, Polyunsaturated Fat: 4g, Monounsaturated Fat: 12g, Cholesterol: 83mg, Sodium: 2435mg, Potassium: 930mg, Fiber: 4g, Sugar: 21g, Vitamin A: 6288IU, Vitamin C: 21mg, Calcium: 117mg, Iron: 4mg
Did you make this recipe?Please leave a star rating and review below!
If you love this post, share it!