Loaded with flavour, these homemade Italian meatballs are always juicy, satisfying and so easy to make. They can also be frozen so they’re perfect when meal prepping as well.

Just like the best spaghetti Bolognese and chicken pesto pasta, these meatballs are a much-loved classic for a reason.

A meatball in red sauce on a wooden spoon.

Why you’ll love it

These easy Italian meatballs are a favourite in our house and they will be in yours too.

  • Incredibly easy to make
  • Loaded with flavour
  • Juicy and tender
  • Versatile – easy meatball sauce, in gravy or use them in sliders
  • Perfect for prepping ahead – even freezing
A white dish filled with meatballs.

Ingredients for simple meatballs

You don’t need a lot of ingredients, many are pantry staples and others are easily substituted.

Ingredients for Italian meatballs on a marble worktop.
Ingredients for easy Italian meatballs.
  • Milk (1): This is a tenderiser for the meat, so they stay tender and juicy and it is used to soften the breadcrumbs.
  • Pork & veal mince (2): This combination of meats gives the best flavour and stays juicy. You can substitute the veal for beef if it’s more easily available.
  • Parmesan (3): Use freshly grated parmesan (Pecorino Romano is also good).
  • Breadcrumbs (4): Homemade breadcrumbs are always great to have on hand, but you can use panko breadcrumbs or even blitz up some stale bread to crumbs. All will work here.
  • Salt and pepper (5): For simple seasonings.
  • Parsley (6): You can use dried or fresh parsley in this recipe – measurements for both options in the recipe card.
  • Onion (7): Make sure to chop it very, very finely so that it softens in the short cooking time. You can also use the coarse side of a box grater to grate it.
  • Egg (8): This binds and holds everything together.
  • Garlic (9): Just one garlic clove, minced, gives loads of umami flavour.

How to make them

6 images showing the steps to making meatballs.
Steps showing how to make Italian meatballs.

  1. Soften the breadcrumbs in the milk for a few minutes (photo 1).
  2. Combine everything in a bowl (photo 2)  and gently mix until just combined (photo 3).
  3. Divide into 24 even scoops (photo 4) – I use a cookie scoop for this.
  4. Roll into smooth balls (photo 5).
  5. Bake for 10 minutes until cooked and golden (photo 6).

How to cook meatballs

  • Overhead grill / broil: My favourite method – this is quick and gives the meatballs caramelisation (adding flavour) without the need for extra oil. It takes only 10 minutes.
  • Bake: You can bake them for 12-15 minutes in a hot oven. This works just fine but doesn’t give quite as good caramelisation.
  • Fry: Frying meatballs and moving them around as they cook gives them a great colour and caramelisation all over but you will need to add oil to the pan, which you don’t need when baking or grilling.
  • Homemade Pasta Sauce: You can place the raw meatballs in the sauce so that it all cooks together. The upside is that the flavours meld together and you don’t need added oil. The downside is you don’t get the caramelisation on the meatballs and added flavour and texture that comes with it.
A fork holding a meatball over a plate of meatballs.

How to serve these meatballs

These meatballs are also great served in rich beef gravy with mashed potatoes, or serve them in a meatball stroganoff or this meatball pasta bake. They’re also great, flattened out and served in sliders.

Making them ahead

Homemade Italian meatballs can be prepped ahead of time, both in their raw and cooked states. They reheat quite well.

  • Raw: You can roll the meatballs and store them in an airtight container in the fridge 1-2 days ahead. You can also freeze them, letting them thaw in the fridge overnight.
    The best way to freeze raw meatballs is to sit them on a baking tray in the freezer until hard, then transfer to an airtight container.
  • Cooked: Once cooked, the meatballs will keep well in an airtight container in the fridge for 2-3 days or freezer for up to 3-4 months. Make sure they are well wrapped if freezing, the better protected they are, the longer they will keep. Let them thaw in the fridge overnight.
  • In sauce: If you have leftovers with the sauce, it reheats beautifully in a pan over medium heat in about 10-12 minutes.

Substitutions and variations

  • Meat: You’ll get the best flavour from an even combination of beef or veal and pork. You could swap the pork for Italian sausage for even more flavour.
  • Spice: Feel free to add a good pinch of dried chilli flakes to the meatball mixture for a little kick.
  • Breadcrumbs: use panko, homemade dried breadcrumbs or freshly made (using stale bread).
  • Milk: The milk not only softens the breadcrumbs but it also tenderises the meat but if you want to swap, you could use water or beef stock.
  • Cheesy middle: Cut small cubes of mozzarella or gouda and encase them inside the meatballs for a gooey, cheesy meatballs.

PIN IT: Pin this recipe for later!

Meatballs in a pan of red pasta sauce with pasta in the background.
Meatballs in a pan of red pasta sauce with pasta in the background.
5 from 1 rating
Tender, juicy classic homemade Italian meatballs smothered in an easy pasta sauce are perfect for a quick dinner. Makes 24 meatballs.


  • spaghetti / pasta for serving


  • ½ cup panko breadcrumbs
  • ¼ cup milk (60ml)
  • 250 g pork mince (ground pork) (9oz)
  • 250 g veal mince (ground veal), or beef. (9oz)
  • cup, not packed finely grated Parmesan (20g / 0.7oz)
  • 2 teaspoons dried parsley (or ¼ cup chopped fresh)
  • ¼ cup very finely chopped red onion
  • 1 large egg, beaten
  • 1 large clove garlic, minced
  • 1 teaspoon salt
  • ½ teaspoon pepper


  • 2 teaspoons oil
  • cup chopped red onion (about 1/2 small onion)
  • 1 clove garlic
  • 400 g tinned crushed tomatoes (14oz)
  • 400 ml passata (13.5 fl oz)
  • ¼ cup fresh chopped basil (or 2 teaspoons dried basil)
  • pinch of dried chilli flakes
  • 1 teaspoon sugar
  • ½ teaspoon salt

For best results, always weigh ingredients where a weight is provided


  • Cook some spaghetti or fettuccini to packet instructions. This can cook while you get on with everything else.


  • Heat the overhead grill / broiler on high. Line two baking trays with baking paper.
  • Add the breadcrumbs to a large bowl and pour over the milk. Stir with a fork and let it sit for 5 minutes.
  • Add the remaining meatball ingredients (mince, parmesan, parsley, onion, egg, garlic, salt and pepper) to the bowl and mix until combined (try not to overmix). Chill for 10 minutes
  • Use a small cookie scoop to scoop the meat, then roll into smooth balls.
  • Place on a baking paper lined baking tray a couple inches apart, then grill / broil for 10 minutes until tops are golden.


  • Place a mesh sieve over a bowl and pour in the crushed tomatoes. Set aside to drain.
  • Heat the oil in a large frying pan over medium-high heat. Add the onion, stirring regularly until softened (3-4 minutes). Don’t let them colour.
  • Use a spoon to press the crushed tomatoes in the sieve to remove some more of the liquid and then tip the pulp into the pan. Reserve the liquid.
  • Add the garlic and cook, stirring often for 4-5 minutes until the tomatoes start to look very thick and most of the moisture is gone.
  • Add the juice from the tomatoes, the passata, basil, chilli, sugar and salt. Add ¼ cup water to the passata bottle, give it swirl and add that too. Mix well.
  • Bring the sauce to a simmer, then keep on a low simmer, stirring regularly for about 10 minutes until nice and thick or to desired consistency.
  • Add the cooked meatballs and mix well.
  • Reserve ¼ cup of the pasta water, then drain the pasta.
  • Add the pasta to the meatballs and sauce and mix well to coat (add the pasta water if you need to loosen the sauce). Serve.


  1. You can use homemade dried breadcrumbs. freshly made breadcrumbs (from stale bread) or panko breadcrumbs.
  2. Don’t overmix the meat mixture or they won’t stay tender.
  3. These meatballs can be made 1-2 days ahead and cooked fresh when needed or even cooked ahead of time and reheated in pan over medium heat for 10-12 minutes.
  4. Meatballs can be frozen (raw or cooked). Freeze them on a baking tray until solid, then transfer to an airtight container in the freezer for 3-4 months.
More pasta recipes
More great dinner recipes
Have you tried this recipe?Don’t forget to leave a rating and comment below and let me know how it was! I love hearing from you. Nutrition information is approximate and derived from an online calculator. The brands you use may cause variations.