Mozzarella-Stuffed Meatballs in Tomato Sauce

Pork and beef meatballs stuffed with melty, gooey mozzarella, swimming in a rich tomato sauce makes for a filling weeknight meal! The best part? This recipe is on the table in 40 minutes.

  • Prep time: 20 minutes
  • Cook time: 20 minutes
  • Yield: 16 meatballs, serves 4


For the meatballs:

  • 1/3 cup whole, 2% or low-fat milk
  • 1 1/2 slices white bread, crusts removed and torn into pieces
  • 3/4 teaspoon salt
  • 1/8 teaspoon freshly ground black pepper
  • 3/4 pound ground beef
  • 3/4 pound ground pork
  • 3/4 cup finely grated Parmesan
  • 1 large egg, beaten in a bowl
  • 2 to 3 ounces fresh or low-moisture mozzarella, cut into 16 (1-inch) pieces
  • 2 tablespoons olive oil

For the tomato sauce:

  • 2 (28-ounce) cans whole tomatoes, preferably San Marzano
  • 2 tablespoons olive oil
  • 2 cloves garlic, thinly sliced
  • 1/2 teaspoon salt
  • 1/8 teaspoon freshly ground black pepper
  • Pinch of sugar (optional)
  • 6 to 7 basil leaves, torn into pieces, plus more for serving
  • 1/2 cup shredded mozzarella
  • 1/2 cup shredded Parmesan


1 Preheat the oven to 400ºF. Heat the milk in the microwave for 30 seconds, or in a pot on top of the stove, until warm to the touch.

2 Make the meatball mixture: Place the bread pieces in a large bowl. Pour the warm milk over them and let soak for about 5 minutes, or until the milk is absorbed and the mixture cools. Add the salt and pepper to the bowl and mash with a fork to break up the bread.

Add the ground beef, pork, Parmesan, and egg to the bowl and mix with your hands until well combined.

Ground beef and pork sausage meatball recipe - sliver bowl with torn bread Ground beef and pork sausage meatball recipe - silver bowl with bread and milk mixtureGround beef and pork sausage meatball recipe - beef and pork sausage in silver bowl

3 Form the meatballs: Divide the mixture into 16 equal pieces and roll each into a round the size of a golf ball. With your finger, make an indentation in each ball and press a piece of mozzarella into it. Pinch the meat to close the hole. Roll the meatball again to enclose the cheese.

Pork and beef meatball recipe - meatballs with mozzarella inside

4 Bake the meatballs: Heat the oil in a large oven-safe skillet set over medium heat. Add the meatballs to the skillet in one layer, and place the hot skillet in the oven. Bake the meatballs for 10 minutes. If the meatballs have not browned, turn on the broiler and broil for 2 to 3 minutes or until browned.

Remove from the oven and tilt the skillet. Spoon out and discard any excess oil. If you have broiled the meatballs, reset the oven heat to 400ºF.

Cheese Stuffed Meatballs - meatballs in skillet

6 While the meatballs bake, make the sauce: Pour both cans of tomatoes and their juices into a bowl. Use your hand to break them into smaller chunks. They will break down even more in the cooking process.

Pork and beef meatball recipe - tomatoes Homemade Tomato Sauce - tomatoes cooked down in pan

7 Cook the sauce: In a large, wide saucepan, add the oil and garlic. (You do not heat the oil first.) Place the pan over medium heat and cook for 45 seconds to 1 minute, or until the garlic starts to sizzle.

Add the tomatoes, salt, and pepper to the pan and bring to a simmer. Continue to simmer for 10 minutes, or until the sauce thickens slightly. Taste and add more salt, pepper, and a pinch of sugar (to taste.) Stir in the basil leaves.

Homemade Tomato Sauce - oil and garlic in silver panHomemade Tomato Sauce - basil with tomato sauce in pan

8 Finish the meatballs: Pour the sauce over the meatballs in the skillet. Sprinkle with the shredded mozzarella and Parmesan. Return the pan to the oven and continue to cook for 10 minutes, or until the sauce bubbles and the cheese melts. Sprinkle with the torn basil leaves and serve.

Cheese Stuffed Meatballs - meatballs covered with sauce and cheese in skillet