Traditional Italian Meatballs

I’d like to say that these aren’t your Nonna’s meatballs, but that is EXACTLY what these are. I use a combination of lean ground beef and ground pork in my meatball recipe to add lots of flavour and to ensure that they are as juicy as can be! The addition of some Parmesan cheese and basil makes them extra delicious!

Servings: 4 main servings

Difficulty: Easy 

Prep Time:  30 minutes   |   Cook Time: 60 minutes   |   Total Time: 1 hour 30 minutes


  • 1 pound lean ground beef
  • 1 pound lean ground pork
  • 1/2 cup milk
  • 1/2 cup plain, unseasoned breadcrumbs
  • 1 teaspoon salt
  • 1 teaspoon ground black pepper
  • 1/2 teaspoon dried chili flakes
  • 2 cloves garlic, finely chopped
  • 1 egg yolk
  • 1/2 cup grated Parmesan cheese
  • 1/8 cup parsley, finely chopped
  • 1/8 cup basil, finely chopped

For the Tomato Sauce:

  • 3 tablespoons olive oil
  • 2 cloves garlic, finely chopped
  • 1/2 teaspoon dried chili flakes
  • 1 700ml jar Passata tomato sauce (or canned tomato puree works too)
  • 2 sprigs fresh basil (stem included), plus 8 large leaves for garnish
  • 1 teaspoon white sugar
  • 1/2 cup Parmesan cheese, for garnish


In a small bowl, combine the milk and breadcrumbs. Stir until fully incorporated and then set aside.

In a large mixing bowl, add the beef and pork, followed by the remaining ingredients, including the soaked breadcrumb mixture. Use your hands to mix everything until just combined, ensuring to not over-mix the meat. You don’t want tough meatballs!

Roll the meatballs between your hands until they are smooth and round. I like to make my meatballs the size of golf balls, but you can make them whatever size you like. Set the meatballs on a lightly oiled plate as you continue to roll them. Once they are all complete, place the plate of meatballs in the fridge to firm up for 15 minutes.

Once the meatballs have firmed up, you can start to fry them. Add the olive oil to a large pot or dutch oven over medium-high heat. Once hot, add the meatballs to the pot in a single layer, making sure not to overcrowd the pot. You may have to work in batches. Fry the meatballs for 2 minutes on each side, or until the meatballs are fully browned on all sides. You don’t have to fully cook the meatballs here as they will cook as they simmer in the tomato sauce.

Once all the meatballs have browned, remove them from the pot and place on a plate while you make the tomato sauce. Add the garlic and chili flakes to the pot and cook until fragrant, about 1 minute. Next, add the jar of tomato sauce, basil sprigs, and the sugar and mix to combine. Next, place the meatballs back into the pot in a single layer and cover them with the tomato sauce. Once the meatballs are coated in the sauce, reduce the heat to low and cover the pot. Let the meatballs simmer for at least 60 minutes, or longer if you prefer! The longer the meatballs simmer, the more flavourful the sauce gets!

Once the meatballs have simmered, remove the basil sprigs from the pot and discard them. Garnish the meatballs with some grated Parmesan and the basil leaves. Serve warm by themselves or with some spaghetti.