Xíu Mại (Vietnamese Meatballs)

This post may contain affiliate links. As an Amazon Associate I earn from qualifying purchases.

Xíu mại, also known as Vietnamese meatballs, is made by combining ground pork with jicama, aromatics, and seasoning. This mixture is hand-shaped into balls before being poached or steamed. The meatballs are then drenched with a flavorful tomato sauce.

a plate with 6 meatballs in tomato sauce and a side of sliced bread.

It is the Vietnamese version of the Italian dish meatballs with marinara sauce but using Asian spices and seasoning.

You’ll see these savory Vietnamese pork meatballs served at street food stalls, Vietnamese restaurants, or at home. They are commonly paired with French baguettes, lettuce, rice vermicelli noodles, or pickled vegetables and are a popular filling for banh mi sandwiches. This versatile dish is a delicious and convenient option – perfect for busy commuters on the go!

What Does It Taste Like?

These pork meatballs are juicy and tender, with a mild flavor enhanced by the addition of jicama, onion, and garlic. The addition of vegetables in the meatballs not only provides a subtle crunch but also helps to keep them moist and flavorful. Each bite is filled with an umami-rich and a slightly sweet taste from the fish sauce, sugar, and tomato paste.

Ingredients

Ingredients needed to make xiu mai: ground pork, onion, garlic, jicama, fish sauce, salt, pepper, sugar, sesame oil, tomato paste, tomatoes, water, and cornstarch.

For the meatballs

  • Ground pork: Buy it at your local grocery store or Asian supermarket. If they do not carry it, you can ground your own pork by using pork shoulder or pork butt. Sometimes pork loin can be used too. You can also substitute ground pork for other ground meats such as ground chicken, ground turkey, or ground beef.
  • Jicama: Finely chop or dice (to save time, you can also use a food processor to chop). It is healthy and gives the meatballs a subtle crunch. You can find this at any local or Asian grocery store. If you have trouble finding it, substitute it with water chestnuts, daikon, or carrots.
  • Aromatics: yellow onion (or shallots) and garlic cloves. Used for flavoring.
  • Fish sauce: Choose a high-quality fish sauce, as this is what gives the meatballs most of their flavor. Popular brands include Red Boat or 3 Crabs.
  • Seasoning: salt, pepper, sugar – used for flavor.

For the sauce

  • Sesame oil: Used for flavor and aroma.
  • Garlic cloves: Used as aromatic.
  • Tomatoes: Choose tomatoes with low seed content and low water content so that your sauce isn’t thin and watery. Some great choices are Roma tomatoes or San Marzano tomatoes. Another option is to squeeze out some of the seeds before cooking them. Canned tomatoes also work.
  • Tomato paste: Use tomato paste from a can or tube.
  • Chicken bouillon powder or Better Than Bouillon Chicken Base.
  • Seasoning: You’ll need fish sauce, sugar, and black pepper.
  • Water: Used to thin out the sauce.
  • Cornstarch: Used to thicken the tomato sauce.

Serve it with baguette bread slices or rice.

Substitution and Variations

  • Traditionally, ground pork is used for this recipe, but you can also substitute it with ground chicken or ground beef.
  • If you can’t find jicama at the store, substitute it with canned water chestnuts. Daikon or carrots might also work.
  • Instead of yellow onions, substitute it with green onions (spring onions) or shallots
  • If you do not have fish sauce, you can substitute it with soy sauce and vinegar.
  • If you do not have Chicken bouillon powder or Better Than Bouillon Chicken Base, substitute the water with chicken broth.
  • If you do not have sesame oil, substitute it with vegetable oil or olive oil.
  • Instead of fresh tomatoes, use canned tomatoes.
  • If you do not have cornstarch, substitute it with potato starch or all-purpose flour.
  • Variations:
    • Add wood ear mushrooms for a subtle crunch.
    • Add chopped rice vermicelli noodles for another texture.

Directions

Steps to make xiu mai: 1. chop jicama, onion, and garlic for the meatballs. 2. Saute the vegetables.

Make the meatballs

  1. In a skillet, on medium-high heat, add oil and yellow onions. Let it cook for 1-2 minutes until fragrant. Add jicama and garlic, and cook for another 1 minute. Let this mixture cool completely.
  2. In a medium bowl, mix together ground pork, jicama, yellow onion, garlic, fish sauce, salt, ground pepper, and sugar. Use your hands to form 1½ inch balls, the size of a golf ball, for the rest of the pork mixture. This will yield around 10 meatballs.
Steps to make xiu mai: 3. mix all meatball ingredients in a bowl. 4. form the meatballs and steam them.
  1. Cook the meatballs (3 options)
  • Steam. Fill the steamer with 2 cups of water. Place the meatballs in the steamer and cook for 6 minutes.
  • Bake. Arrange the meatballs on a greased tray, leaving some room in between each one. Bake at 350°F for 15 minutes.
  • Air Fry. Arrange the meatballs in the air fryer and air fry them at 350°F for 6 minutes.
Steps to make xiu mai: make the tomato sauce.

Make the tomato sauce

  1. In a saucepan, on medium heat, add sesame oil and garlic. Cook for 20-30 seconds until fragrant. Add water, chicken bouillon powder, tomatoes, tomato paste, fish sauce, sugar, and ground pepper. Stir until well combined. Cover the pot. Bring it to a boil, and then turn down the heat and let slowly simmer for 20 minutes.

Thicken the tomato sauce and add the meatballs

  1. In a small bowl, mix together 2 teaspoons of cornstarch and 3 teaspoons of water. Add this mixture to the tomato sauce to thicken it. (Optional: If you want to remove the tomato chunks, use a blender or an immersion blender. Do a few quick pulses to remove the chunks.)
  2. Add the meatballs to the tomato sauce. Ladle the sauce over the meatballs and let it simmer for 2-3 minutes so that the meatballs soak up the flavors of the sauce.

Serve with slices of French baguette.

Vietnamese pork meatballs in a pot of tomato sauce.

Pro Tips

– Sweat the onions and jicama and let them cool completely before adding them to the meatball mixture. If you skip this step, the vegetables will be uncooked.
– Do not overwork the meatball mixture when mixing the ingredients together. This will cause it to be dense.
– Adjust the sauce to your liking. If you prefer a thicker sauce, use less water and thicken it with a cornstarch slurry. If you need more cornstarch, use a 1-to-1 ratio of cornstarch and water. If you prefer a thinner sauce, add more water.
– If you do not want tomato chunks in your sauce, puree it using a blender or an immersion blender.
– Taste and season in the end. The flavors will need time to develop, and some of the liquid will evaporate, so you won’t know what it will truly taste like until the end. Add more sugar, fish sauce, or ground pepper if needed.

a plate with 6 meatballs in tomato sauce and a side of sliced bread.

How to Serve the Meatballs

These meatballs are commonly served with a crispy French baguette. This combination of flavors is quite popular in the country, especially in the southern region.

To make the perfect dipping experience, start by lightly toasting the baguette slices until they hold a slight crunch on the outside and are still slightly soft in the middle. Then, scoop out a spoonful of meatballs and sauce and place it on top of the toasted baguette slices.

spoon scooping out one Vietnamese meatball (xiu mai).

Bánh mì xíu mại is another way to eat this. The meatballs are stuffed into a Vietnamese baguette and accompanied by pickled vegetables such as daikon, carrots, and onions. The combination of flavors from the salty-sweet pork meatballs in a flavorful tomato sauce with crunchy pickled vegetables and fresh herbs such as cilantro, mint, or basil creates an unforgettable flavor.

If you don’t have bread, another great way to enjoy it is over white rice or rice noodles.

Frequently Asked Questions (FAQ)

How do I thicken the sauce?

To thicken the sauce, use a cornstarch slurry that consists of a 1-to-1 ratio of cornstarch and water.

How do I thin out the sauce?

If you prefer a thinner sauce, add more water. Start with 1/4 cup at a time. Adjust the seasoning at the end.

How do I get rid of the tomato chunks in the sauce?

Use a potato masher to mash up some of the tomato chunks. You can also use a blender or an immersion blender and blend it to your liking.

How to Store Leftovers

Refrigerate

The best way to store leftover meatballs is to let them cool completely and then keep them in the refrigerator in an airtight container. If properly stored, they will last 3-5 days.

Freeze

To make these last longer, they can also be stored in the freezer for up to 6 months. When storing them in the refrigerator or freezer, it’s a good idea to label and date the container so that you know when they were stored and how long they have been there.

Reheat

If it was in the freezer, let it thaw in the fridge overnight before reheating. When you’re ready to eat it, heat it over medium-low heat for 8-10 minutes, stirring occasionally. Use a thermometer to check the temperature of your sauce and meatballs, and make sure it’s at least 165°F before serving.

You can also reheat the meatballs in the microwave. Place the meatballs in a shallow dish with some of the sauce and cover it with plastic wrap or wax paper. Heat it in the microwave for 1-2 minutes, then stir and heat again for an additional 30 seconds to 1 minute, or until they are heated through.

Xiu mai on a plate with sides of sliced bread.

Vietnamese Meatballs (Xíu Mại)

Quynh Nguyen
Xíu mại, also known as Vietnamese meatballs, is made with ground pork and seasoning. This mixture is then hand-shaped into balls before being steamed and added to a flavorful tomato sauce. Perfect on its own or with rice or baguette bread.
5 from 49 votes
Prep Time 4 minutes
Cook Time 32 minutes
Total Time 36 minutes
Course Appetizer, Main Course
Cuisine Vietnamese
Servings 6 servings
Calories 246 kcal

Ingredients
  

For the Meatballs

  • 1 pound ground pork
  • ¾ cup jicama, finely diced
  • ½ yellow onion, finely diced
  • 3 garlic cloves, minced
  • ½ tablespoon fish sauce
  • ½ teaspoon salt
  • ½ teaspoon ground black pepper
  • 1 teaspoon sugar

For the Sauce

  • ½ tablespoon sesame oil
  • 2 garlic cloves, minced
  • 1 ½ cups water
  • 2 teaspoon chicken bouillon powder or Better Than Bouillon Chicken Base
  • 3 tomatoes, diced
  • 3 tablespoons tomato paste
  • ½ tablespoon fish sauce
  • 1 tablespoon sugar
  • ½ teaspoon ground black pepper
  • 2 teaspoon cornstarch
  • 2 teaspoon water

Serve With

  • French baguettes, or white rice

Instructions
 

Form the Meatballs

  • In a skillet, on medium heat, add oil and yellow onions. Let it cook for 1-2 minutes until fragrant. Add jicama and garlic, and cook for another 1 minute. Let this mixture cool completely.
  • In a medium bowl, mix together ground pork, jicama, yellow onion, garlic, fish sauce, salt, ground pepper, and sugar. Use your hands to form 1½ inch balls, the size of a golf ball, for all of the pork mixture – about 10 meatballs.

Cook the Meatballs (3 Options)

  • Steam. Fill the steamer with 2 cups of water. Place the meatballs in the steamer and cook for 6 minutes.
  • Bake. Arrange the meatballs on a greased tray, leaving some room in between each one. Bake at 350°F for 15 minutes.
  • Air Fry. Arrange the meatballs in the air fryer, and air fry them at 350°F for 6 minutes.

Make the Tomato Sauce

  • In a saucepan, on medium heat, add sesame oil and garlic. Cook for 20-30 seconds until fragrant. Add water, chicken bouillon powder, tomatoes, tomato paste, fish sauce, sugar, and ground pepper. Stir until well combined. Cover the pot. Bring it to a boil and then turn down the heat and let slowly simmer for 20 minutes.

Thicken the Tomato Sauce and Add Meatballs

  • In a small bowl, mix together 2 teaspoons of cornstarch and 3 teaspoons of water. Add this mixture to the tomato sauce to thicken it. (Optional: If you want to get rid of the tomato chunks, use a blender or an immersion blender)
  • Add the meatballs to the tomato sauce. Ladle the sauce over the meatballs and let the sauce simmer for about 2-3 minutes so that the meatballs soak up the flavors of the sauce.
  • Serve with slices of French baguette bread.

Notes

    • Sweat the onions and jicama and let them cool completely before adding them to the meatball mixture. The vegetables will be uncooked if you skip this step.
    • Do not overwork the meatball mixture when mixing the ingredients together. This will cause it to be dense.
    • Adjust the sauce to your liking. If you prefer a thicker sauce, use less water and thicken it with a cornstarch slurry. If you need more cornstarch, use a 1-to-1 ratio of cornstarch and water. If you prefer a thinner sauce, add more water.
    • If you do not want tomato chunks in your sauce, use a blender or an immersion blender to puree the sauce.

Nutrition

Calories: 246kcalCarbohydrates: 8gProtein: 14gFat: 17gSaturated Fat: 6gPolyunsaturated Fat: 2gMonounsaturated Fat: 8gCholesterol: 55mgSodium: 699mgPotassium: 362mgFiber: 1gSugar: 5gVitamin A: 134IUVitamin C: 7mgCalcium: 28mgIron: 1mg
Have you tried this recipe?Leave a star rating and let us know how it was!

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating




10 Comments

  1. 5 stars
    We love meatballs, but have never tried anything like this. They were SO good and I will definitely be making them again.

  2. 5 stars
    Great recipe! Both myself and my husband really enjoyed them, especially the sauce! A great way to change up your dinner menus! Would highly recommend it.

  3. 5 stars
    These were full of flavor. I made the recipe for dinner tonight and my family loved it – will absolutely make this again soon.

  4. 5 stars
    I made these meatballs for dinner last night and my whole family loved them! Thanks so much for sharing the recipe!