Classic Italian Meatballs with Tomato Gravy

By , Test Kitchen Director · Reviewed by AislePrompt Editorial · ·

Juicy homemade meatballs slowly simmered in a rich tomato gravy, perfect for serving with pasta or crusty bread. This italian-inspired beef ready in about 55 minutes pairs ground beef, ground pork, breadcrumbs for a weeknight-friendly dinner that comes together with one pan and minimal cleanup. Each serving lands at about 420 calories and feeds 6, so it slots cleanly into a weekly meal plan and pairs well with a quick salad or grain on the side. Tap "Plan a meal with the AI" below to drop this recipe into your week and send the ingredients straight to Instacart. Nutrition values are approximate, calculated from USDA FoodData Central (fdc.nal.usda.gov) — verify against ingredient labels for any health-driven dietary plan.

Prep: 20 min Cook: 35 min Serves 6 Italian cuisine 420 cal/serving
Build a week of meals around this recipe → Shop this recipe on Instacart → Shop equipment ↓

Ingredients

Equipment for this recipe

Top-rated tools to make this recipe successfully.

More Bakeware & baking tools → Shop all kitchen tools →

Instructions

  1. Step 1: In a large bowl, combine 1 lb ground beef, 1/2 lb ground pork, 1/2 cup breadcrumbs, 1/4 cup whole milk, 1 large egg, 1/4 cup grated Parmesan cheese, 3 minced garlic cloves, 2 tbsp chopped fresh parsley, 1 tsp salt, and 1/2 tsp black pepper. Mix gently until just combined.
  2. Step 2: Shape mixture into 1 1/2-inch meatballs, about 20 pieces.
  3. Step 3: Heat 3 tbsp olive oil in a large skillet over medium heat. Add meatballs in batches and brown on all sides for about 6 minutes total. Remove and set aside.
  4. Step 4: In the same skillet, add 1 small diced onion and sauté for 4 minutes until translucent. Add 28 oz crushed tomatoes, 1 tsp dried oregano, 1 tsp dried basil, and 1 tsp sugar. Stir and bring to a simmer.
  5. Step 5: Return meatballs to the skillet, cover, and simmer gently for 25 minutes until meatballs are cooked through and sauce thickens.
  6. Step 6: Serve meatballs topped with sauce alongside pasta or rustic bread.

Frequently asked questions

How long does Classic Italian Meatballs with Tomato Gravy take to make?

Total time is about 55 minutes (20 min prep + 35 min cook). Most home cooks find this fits comfortably into a weeknight; double the batch on Sunday for two dinners.

How do I store leftover Classic Italian Meatballs with Tomato Gravy?

Cool to room temperature within 2 hours, then store in an airtight container in the fridge for up to 4 days. Reheat covered in a 350°F oven for 10-12 minutes, or microwave at 70% power in 60-second bursts to keep ground beef from drying out.

Can I substitute ingredients in Classic Italian Meatballs with Tomato Gravy?

Yes — most ingredients in this recipe have flexible swaps. For oil, use any neutral high-smoke-point oil (avocado, grapeseed, refined coconut). For aromatics, dried herbs at ⅓ the volume of fresh work in a pinch. The full ingredient list is shoppable on Instacart so you can see substitutes in real time.

How do I scale Classic Italian Meatballs with Tomato Gravy for a different number of people?

The recipe is written for 6 servings. Multiply each ingredient by (your serving target / 6). Cook time stays roughly the same up to 2x; for 3-4x batches, switch from a skillet to a sheet pan or stockpot so the food isn't crowded — overcrowding steams instead of browns.

What goes well with Classic Italian Meatballs with Tomato Gravy?

Italian beef like this pair well with a simple grain (rice, couscous, or crusty bread), a quick salad with acid (lemon vinaigrette, pickled onions), and a pan sauce or yogurt-based dip. Tap "Plan a meal with the AI" to get specific side suggestions.