Chinese-Style Xi’an Meatballs with Spiced Tomato Sauce

Updated November 4, 2026

Total time
55 min
prep 25 min · cook 30 min
Serves
4
portions as written
Safe temperature (USDA)
160°F / 71°C
check the thickest piece

Jump to recipe

Chinese-Style Xi’an Meatballs with Spiced Tomato Sauce

Chinese-style Xi’an meatballs are tender pork meatballs seasoned with ginger, scallion, soy, and the warm, tingly flavor of Sichuan pepper, served in a savory tomato sauce. This practical home-style version draws on bold northwestern Chinese flavors without claiming to represent a single traditional recipe, and it pairs well with rice or noodles.

Ingredients

  • 1 lb ground pork (450 g), preferably not extra-lean
  • 2 tbsp water (30 ml), cold
  • 2 tbsp light soy sauce (30 ml)
  • 1 tbsp Shaoxing cooking wine (15 ml); substitute dry sherry or omit and use water
  • 1 tbsp cornstarch (8 g)
  • 1 tsp finely grated fresh ginger (5 g)
  • 2 scallions (about 30 g), finely chopped; reserve 1 tbsp green parts for garnish
  • ½ tsp fine salt (3 g)
  • ¼ tsp ground white pepper (about 0.5 g)
  • 1 tsp whole Sichuan peppercorns (about 2 g), lightly toasted and finely ground
  • 2 tbsp neutral oil (30 ml), divided
  • 1 small yellow onion (about 150 g), finely chopped
  • 2 garlic cloves (about 6 g), minced
  • 1 tbsp tomato paste (16 g)
  • 1 can crushed tomatoes (14.5 oz/411 g)
  • ½ cup water or low-sodium chicken stock (120 ml)
  • 1 tsp sugar (4 g), optional, to balance tart tomatoes
  • 1 tsp black vinegar (5 ml), or rice vinegar
  • Cooked rice or noodles, for serving (optional)

Instructions

  1. Toast the Sichuan peppercorns in a small dry skillet over medium-low heat for about 1 minute, shaking the pan until fragrant. Cool briefly, then grind finely with a spice grinder or mortar and pestle. Avoid browning them; excessive heat can make them bitter.
  2. In a large bowl, stir together the cold water, soy sauce, Shaoxing wine, and cornstarch until smooth. Add the pork, ginger, most of the scallions, salt, white pepper, and ground Sichuan pepper. Mix firmly with chopsticks or a fork in one direction for 1–2 minutes, until the mixture looks cohesive and slightly sticky. Do not knead for a long time, which can make the texture dense.
  3. With damp hands, form 12 meatballs, each about 1½ inches (4 cm) wide. Keep them similar in size so they cook evenly. Set them on a plate while you prepare the sauce; there is no need to chill them.
  4. Heat 1 tablespoon oil in a wide, lidded skillet over medium heat. Add the onion and cook for 4–5 minutes, stirring, until softened. Stir in the garlic and tomato paste and cook for 30 seconds. Add the crushed tomatoes, water or stock, and sugar if using. Bring to a gentle simmer, then stir in the vinegar.
  5. Heat the remaining tablespoon of oil in a second skillet over medium-high heat. Brown the meatballs in batches, turning them carefully for about 4–5 minutes total per batch. They do not need to cook through in this step. Avoid crowding the pan, which causes them to steam instead of brown.
  6. Transfer the browned meatballs to the simmering tomato sauce, arranging them in one layer as much as possible. Cover and simmer gently for 12–15 minutes, turning the meatballs once. Check the center of a large meatball with a food thermometer: ground pork must reach the USDA FSIS safe minimum internal temperature of 160°F (71°C). If it has not, simmer a few minutes longer and check again. Keep the sauce at a gentle simmer rather than a hard boil so the meatballs stay tender.
  7. Taste the sauce and adjust with a little salt, vinegar, or sugar if needed. Scatter the reserved scallion greens over the top and serve hot.

Tips

  • Use pork with some fat. Ground pork that is too lean can turn dry. If only lean pork is available, take care not to overmix, and avoid extending the simmer once the meatballs have reached 160°F (71°C).
  • Source the seasonings thoughtfully. Sichuan peppercorns give the dish its citrusy, gently numbing character. They are sold in Asian groceries and many spice shops; if unavailable, use black pepper, knowing the distinctive tingle will be missing. Shaoxing wine adds a mellow, savory aroma; dry sherry is a workable substitute.
  • Keep the meat mixture cold. Work quickly and use cold water in the mix. If the meatballs become soft or greasy while shaping, refrigerate them for 10 minutes before browning.
  • Check doneness, not color. Browning is for flavor and does not confirm that ground pork is safe to eat. Use an instant-read thermometer in the center of a meatball, and wash hands and utensils after contact with raw pork.

Serving Suggestions

Spoon the meatballs and plenty of tomato sauce over steamed rice, wheat noodles, or hand-pulled-style noodles. A bowl of plain rice is especially useful for catching the sauce. For a fuller meal, add quickly stir-fried bok choy, sautéed greens, or cucumber salad dressed with vinegar and a little sesame oil. Serve chili oil at the table for anyone who wants more heat, rather than making the whole batch spicy.

Variations

For a richer, more aromatic sauce, stir in 1 teaspoon chili-bean paste with the tomato paste; it will make the sauce saltier and spicier, so taste before adding extra salt. For a less tomato-forward version, use one 14.5-ounce (411 g) can of diced tomatoes and reduce the added water to ¼ cup (60 ml). Ground chicken or turkey can replace pork, but they tend to be leaner; cook poultry meatballs to 165°F (74°C), the USDA FSIS safe minimum, and avoid relying on the pork temperature. For a mild version, omit the Sichuan pepper and use a pinch of black pepper instead.

Storage and Reheating

Refrigerate leftovers in a shallow, covered container within 2 hours of cooking. They keep for 3–4 days in the refrigerator. Reheat the meatballs with their sauce in a covered saucepan over medium-low heat, stirring gently, until the centers reach 165°F (74°C); add a splash of water if the sauce has thickened. You can also microwave a covered portion, stirring midway and checking the temperature in the center. For longer storage, freeze cooled portions in airtight freezer-safe containers for up to 3 months for best quality. Thaw overnight in the refrigerator, then reheat to 165°F (74°C); avoid leaving cooked meatballs at room temperature for more than 2 hours.

Frequently Asked Questions

Can I make the meatballs ahead?
Yes. Shape them up to 1 day ahead, cover, and refrigerate. Brown and simmer them shortly before serving. You can also make the complete dish a day ahead; cool and refrigerate it promptly, then reheat the sauce and meatballs to 165°F (74°C).

Can I bake the meatballs instead of pan-browning?
Yes. Arrange them on a lightly oiled, foil-lined sheet and bake at 425°F (220°C) for about 12–15 minutes, turning once if convenient, until browned and at least partly cooked. Transfer them to the sauce and simmer until the centers reach 160°F (71°C). Baking uses less stovetop attention but gives less direct browning than a skillet.

Why are my meatballs tough?
Overmixing, very lean pork, or cooking them too long can make them firm. Mix just until cohesive, use pork with some fat, simmer gently, and check the temperature rather than cooking well beyond 160°F (71°C).

Is this dish supposed to be spicy?
Sichuan pepper is aromatic and produces a mild numbing sensation rather than straightforward chile heat. The recipe is moderately peppery but not chile-hot. Omit it for a gentler flavor, or offer chili oil separately.

Can I use frozen meatballs?
Plain, fully cooked pork meatballs can be simmered in the sauce, but their seasoning and texture will differ. Follow the package directions and heat them until the center reaches 165°F (74°C). If using raw frozen meatballs, thaw them safely in the refrigerator before browning and simmering; do not leave them to thaw on the counter.

What can I use instead of cornstarch?
Use 2 teaspoons (6 g) potato starch or 1 tablespoon (8 g) tapioca starch. The small amount helps bind the mixture and retain moisture; flour is less effective and may give the meatballs a heavier texture.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).