Mapo Meatballs

(1)

Meatballs made with pork and tofu simmer in a glossy, chile-red sauce powered by spicy doubanjiang and the citrusy, tongue-tingling heat of Szechuan peppercorns.

Mapo Meatballs
Credit:

Photo by Morgan Hunt Ward / Food Styling by Chelsea Zimmer / Prop Styling by Julia Bayless

Active Time:
45 mins
Total Time:
55 mins
Servings:
4
  • Grated firm tofu adds moisture to the pork mixture, producing exceptionally tender meatballs that still hold their shape.
  • Blooming the doubanjiang and dried chiles in oil develops the sauce’s deep red color and concentrated savory, spicy flavor.
  • Baking keeps the meatballs intact with minimal hands-on cooking, while a brief broil adds extra browning before they’re glazed in the sauce.

Classic mapo tofu is known for the interplay of soft tofu, ground meat, fermented chile bean paste, and the distinctive numbing heat of Szechuan peppercorns. These meatballs take their cues from that combination, bringing pork and tofu together in exceptionally tender meatballs before coating them in the tingling sauce.

The meatballs bake rather than fry, making it easier to cook all 16 at once while preserving their shape. A quick broil can give them additional browning, and their final few minutes in the skillet allow the thickened sauce to cling to every craggy surface. Spoon the meatballs and plenty of sauce over steamed white rice, then add a steamed green such as baby bok choy alongside to round out the meal.

What is spicy doubanjiang?

Spicy doubanjiang is a savory, salty paste made from fermented broad beans and chiles, often packed with chile oil. A staple of Szechuan cooking, it adds deep umami, chile heat, and rich red color to dishes such as mapo tofu. Look for it in the international aisle of well-stocked supermarkets or at Chinese and Asian grocery stores. Depending on the brand, it may be labeled chile bean paste, chili bean sauce, broad bean chile paste, or Szechuan-style broad bean sauce.

The type of tofu matters

Traditional mapo tofu is typically made with soft or silken tofu, prized for its delicate, custardy texture as it absorbs the spicy sauce. For these meatballs, however, firm tofu is the better choice. It has enough structure to bind with the ground pork and help the meatballs hold together while still providing enough moisture to keep them juicy and tender as they cook.

Notes from the Food & Wine Test Kitchen

  • Pat the tofu thoroughly dry before grating; excess surface moisture can make the meatball mixture too wet.
  • A triggered cookie scoop makes portioning easier, and wet or lightly oiled hands help shape the meatballs without packing them too firmly.
  • Freshly ground Szechuan peppercorns have the brightest citrusy fragrance; a spare pepper grinder or small mortar and pestle makes quick work of them.

This recipe was developed by Erin Merhar; the text was written by Breana Killeen.

Keep Screen Awake

Ingredients

Meatballs

  • 1 tablespoon vegetable oil

  • 8 ounces firm tofu, thoroughly patted dry

  • 1 pound ground pork

  • 1 tablespoon oyster sauce

  • 1 teaspoon soy sauce

  • 2 large scallions, finely chopped (1/3 cup)

  • 3 garlic cloves, finely chopped (1 tablespoon)

  • 2 teaspoons finely chopped fresh ginger

  • 1/2 teaspoon ground black or Szechuan pepprcorns

  • 2 tablespoons cornstarch

Sauce

  • 4 large scallions

  • 1 1/4 cups unsalted chicken broth

  • 1 tablespoon cornstarch

  • 2 tablespoons vegetable oil

  • 2 garlic cloves, finely chopped (about 2 teaspoons)

  • 2 tablespoons spicy doubanjiang (broad bean paste with red chile oil, such as Lee Kum Kee)

  • 4 dried small red chiles, seeded and roughly chopped (about 1 1/2 tablespoons)

  • 2 teaspoons rice wine vinegar

  • 1 teaspoon soy sauce, plus more to taste

  • 1/2 teaspoon ground Szechuan peppercorns

  • Cooked white rice, for serving

Directions

  1. Make the meatballs: Preheat oven to 425°F with rack positioned in upper third. Brush a small, rimmed baking sheet with oil; set aside.

  2. Grate tofu on largest holes of a box grater into a large bowl. Add pork, oyster sauce, soy sauce, scallions, garlic, ginger, and ground pepper. Gently stir to evenly distribute, being sure not to overmix. Sprinkle cornstarch over top, then mix with clean hands just until mixture binds together. (Take care not to overwork, which will make the meatballs tough.)

  3. Form mixture into 16 meatballs (about 1 3/4 ounce each). Space evenly on prepared baking sheet. Bake until lightly browned and a thermometer inserted into thickest portion registers 160°F, 15 to 18 minutes. If desired, without removing meatballs, increase oven temperature to broil and broil until browned, 1 to 2 minutes. Temperature will continue to rise to 165°F.

  4. Make the sauce: Cut white and light green parts of the scallions into 1-inch pieces. Thinly slice dark green parts on the bias; set both aside separately. Whisk together broth and cornstarch in a liquid measuring cup; set aside.

  5. Heat oil in a large skillet over medium. Add white and light green scallion pieces; cook, stirring occasionally, until slightly softened, about 3 minutes. Reduce heat to low, add garlic, broad bean paste, and dried chiles; cook, stirring constantly, until mixture is deep red, about 1 minute.

  6. Whisk chicken stock mixture to recombine, if needed; slowly add to skillet, whisking constantly. Scrape bottom of skillet using a wooden spoon. Increase heat to medium and bring to a simmer; simmer over medium, whisking frequently, until thickened, about 1 minute. Stir in  vinegar, soy sauce, and ground Szechuan peppercorns.

  7. Add meatballs and half of sliced scallions to skillet with sauce. Cook over medium, basting meatballs with sauce occasionally, until glazed and heated through, about 2 minutes. Add more soy sauce to taste, if desired. Serve meatballs and sauce over steamed white rice; garnish with remaining sliced scallions.

Make ahead

The sauce can be made and refrigerated up to two days ahead. The uncooked meatballs can be formed, tightly covered, and refrigerated up to one day before baking.

Cook this recipe and more in the MyRecipes app. Get the App
Loading shell for RecipesUgcThreaded1 Vue component in Globe.

Related Articles