Italian Meatballs

These classic Italian-American style meatballs are huge and pillowy soft! They're mixed with ground beef and pork, loaded with herbs and cheese, and served with a traditional tomato sauce. Make them baseball-sized for a dinner entree, or roll them smaller for an appetizer.

Easy Meatballs in tomato sauce served in a bowl
Elise Bauer

When I was a kid, the only time we ever had meatballs was with spaghetti or in albondigas soup.

It never occurred to me that one could simply have meatballs with sauce, until I wandered into a restaurant in San Francisco and ordered some Italian meatballs, as an appetizer, or so I thought.

To me, meatballs were small little things and three of them would have made a lovely starter for the more substantial entrée to follow. Hah!

My eyes practically fell out of their sockets when the meatballs arrived. They were almost the size of baseballs. Holy moly. But they were fabulous, and it just meant I had more food to share with my friends.

Italian Meatballs
Elise Bauer

The Best Italian Meatballs

These meatballs aren't quite the size of baseballs though they could be if you wanted them to. Actually you could make them any size you wanted.

They're tender, loaded with herbs and cheese, a mixture of ground beef and pork, and covered with a classic tomato sauce.

How to Make Italian Meatballs

To make meatballs start with bread. Soak a few slices of white bread (crusts removed) in hot milk and mash them until the bread breaks down and becomes a paste. Let this cool slightly, then combine with ground pork, ground beef, a mix of ricotta and Parmesan cheeses, spices, and eggs. Mix only until everything is barely combined; over-mix and you're meatballs will be tough.

Form the meatballs with your hands and roll them in flour. Brown them in a skillet, then finish cooking them in tomato sauce. You can make your own tomato sauce, as we do here, or you can use store-bought sauce.

Baked Meatballs in Tomato Sauce served in a bowl
Elise Bauer

How Long to Cook Meatballs?

Once browned, these large-sized meatballs will need about 15 to 20 minutes to cook in the sauce. Smaller meatballs will take less time.

When done, the meatballs should be cooked all the way through the center. If you want, you can check them with a digital thermometer; the meatballs should register 160°F in the center.

Storing and Freezing Meatballs

Cooked meatballs can be stored with the tomato sauce in the refrigerator for about 5 days. Reheat gently on the stovetop or in the microwave.

The meatballs can also be frozen, either cooked or uncooked:

  • If uncooked, freeze the shaped meatballs on a parchment-lined tray until solid, then transfer to a freezer container and store for up to three months. Thaw in the fridge before cooking.
  • If cooked, allow the meatballs to cool completely, then transfer to a freezer container and freeze for up to three months. Meatballs can be frozen either on their own or with the tomato sauce. Thaw overnight in the fridge before reheating gently on the stovetop or in the microwave.

Love Meatballs? Try These Recipes


Watch This Italian Meatballs Recipe

Italian Meatballs

Prep Time 25 mins
Cook Time 60 mins
Total Time 85 mins
Servings 8 servings
Yield 16 meatballs

We've used equal amounts of ground beef and ground pork. You could also use a third each of ground beef, pork and veal.


For the meatballs:

  • 1 pound ground beef (at least 16 percent fat)

  • 1 pound ground pork

  • 2/3 cup milk (whole or 2 percent)

  • 3 slices of white bread, crusts removed (about 3 ounces)

  • 1/4 cup ricotta cheese

  • 1/4 cup grated Parmesan or Romano cheese

  • 2 large eggs

  • 1 teaspoon salt (or 2 teaspoons kosher salt)

  • 1 tablespoon chopped fresh parsley

  • 2 teaspoons black pepper

  • 1 teaspoon dried oregano or marjoram

  • 2 to 3 cloves garlic, minced

  • About 1 cup flour, for dusting

  • 1/3 cup extra virgin olive oil

  • 2 1/2 cups (24 ouncestomato sauce (recipe follows, or use already prepared)

For the tomato sauce:

  • 2 tablespoons extra virgin olive oil

  • 3/4 cup finely chopped onions

  • 3/4 cup finely chopped carrots

  • 3/4 cup finely chopped celery

  • 2 tablespoons chopped fresh parsley

  • 1 clove garlic, minced

  • 1 (28-ounce) can crushed or whole tomatoes, including the juice, or 1 3/4 pound of fresh tomatoes peeled, seeded, and chopped

  • 1/2 teaspoon dried basil or 2 tablespoons chopped fresh basil

  • 1 teaspoon tomato paste

  • Salt and freshly ground black pepper to taste


  1. Make the tomato sauce:

    Heat olive oil in a large skillet on medium heat. Add the onions, carrots, celery, and parsley. Stir to coat with the oil, reduce the heat to low and cover the pan. Cook for 15 to 20 minutes until the vegetables are soft and cooked through.

    Remove the cover, add the garlic, and increase the heat to medium high. Cook the garlic for half a minute, then add the tomatoes (if using whole canned tomatoes, break up with your fingers as you add them to the pan). Add the tomato paste and basil. Season with salt and pepper.

    Bring to a low simmer, reduce the heat to low and let cook uncovered until thickened while you prepare the meatballs, 15 to 30 minutes.

    Purée in a blender, or push through a food mill for a smooth consistency. Return to pan. Adjust seasonings.

    Make the tomato sauce for cooking homemade italian meatballs
    Elise Bauer
  2. Soak the torn bread in hot milk:

    Heat the milk in a small pot until steamy. Turn off the heat, tear the bread into little pieces and soak it in the milk until it partially dissolves. Mash it until you get something that resembles a paste. Turn it out onto a plate to let it cool.

    Submerge the bread in hot milk and let it soak
    Elise Bauer
    Soak the bread in hot milk in a saucepan
    Elise Bauer
  3. Make the meatball mixture:

    In a large bowl, combine the beef, pork, ricotta cheese, grated Parmesan, eggs, salt, parsley, oregano, black pepper, garlic cloves and the bread-milk mixture. Mix it well with your hands until it barely combines.

    Don't overwork the mixture or it will become tough. It is OK to have some discernible bits of bread or meat in the mix; better that than overworked meatballs.

    Mix together the meat mixture for the italian meatballs with your hands
    Elise Bauer
    The meat mixture for homemade italian meatballs
    Elise Bauer
  4. Form the meatballs:

    Wet your hands and form the meatballs. A traditional size for this sort of meatball is 2-3 inches across, but you can make them any size you want.

    Once you roll the meatball in your hands, roll it in the flour to give it a good coating. Set each one on a baking sheet as you work. You might need to rinse your hands a few times as you make the meatballs.

    Shape homemade meatballs with your hands
    Elise Bauer
    Coat homemade italian meatballs in flour
    Elise Bauer
  5. Brown the meatballs:

    When all the meatballs are formed, heat olive oil in a large skillet over medium-high heat. Brown the meatballs on at least two sides. Don't worry about the center getting cooked through, as you will finish these in the sauce.

    Brown both sides of the meatballs in a skillet
    Elise Bauer
    Brown the italian meatballs in a skillet
    Elise Bauer
  6. Finish cooking the meatballs in tomato sauce:

    Once all the meatballs are browned, arrange them in the sauce, turning each one over in the sauce to coat.

    Cover the pot and simmer gently for 15-20 minutes. Serve with the sauce and pasta or crusty bread. Sprinkle with a little chopped parsley for garnish if you want.

    Submerge the italian meatballs in tomato sauce in the skillet
    Elise Bauer
    Best Meatballs cooked in tomato sauce in a cast iron skillet
    Elise Bauer
Nutrition Facts (per serving)
624 Calories
38g Fat
31g Carbs
39g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 8
Amount per serving
Calories 624
% Daily Value*
Total Fat 38g 49%
Saturated Fat 12g 58%
Cholesterol 157mg 52%
Sodium 831mg 36%
Total Carbohydrate 31g 11%
Dietary Fiber 4g 13%
Total Sugars 8g
Protein 39g
Vitamin C 15mg 73%
Calcium 184mg 14%
Iron 6mg 31%
Potassium 944mg 20%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
Nutrition information is calculated using an ingredient database and should be considered an estimate. In cases where multiple ingredient alternatives are given, the first listed is calculated for nutrition. Garnishes and optional ingredients are not included.