Classic Italian Meatballs (Tender and Juicy)
This post may contain affiliate links. Please read my disclosure policy.
A family-style meatball recipe with equal parts ground chuck and pork, milk-soaked fresh breadcrumbs, and sharp pecorino — these are the meatballs my mother made every Sunday, and the ones I’ve been chasing ever since. Bake the meatballs in the oven or cook on the stovetop.

My mom made the best Italian meatballs, and everyone who sat at her table knew it. After she died, I spent years making batch after batch trying to get back to that exact texture — dense enough to hold their shape in the pan, but yielding the moment you cut into one. It took a lot of meatballs before I figured out what she was doing.
The answer was the breadcrumbs. Not dried, not panko — fresh white bread, torn and soaked in milk until it collapses into a soft paste. That mixture, worked into the ground beef and pork before anything else, is what keeps these meatballs juicy all the way through, even after a hard sear and 15 minutes in a covered pan.
The ingredients that actually make the difference

- Meat: An equal split of ground beef chuck and ground pork gives you the fat ratio this recipe needs. Chuck runs 15–20% fat, while pork shoulder (what most packaged ground pork comes from) is similarly generous. If you’re tempted to use lean ground beef because it seems like the responsible choice, I’d steer you back — the result will be noticeably firmer and less forgiving. Old-school Italian-American meatball recipes often call for a three-meat mix of beef, pork, and veal. Veal is wonderful if you can find it and want to use it; it adds a delicate, almost sweet undertone. I leave it out because ground veal has become harder to find and the beef-pork combination holds up the way I like it. Bulk Italian sausage works well in place of the ground pork — just pull back on the added salt by about half a teaspoon since the sausage is already seasoned.
- Fresh bread crumbs: I’m going to be honest with you — good breadcrumbs are what separates a good meatball from a great one. Fresh crumbs made from white bread — not panko, not the stuff in the green can — are lighter and more porous than dried, which means they absorb the milk fully and turn almost creamy before you’ve added a single ounce of meat. That mixture is called a panade, and its job is to interrupt the meat proteins so they can’t contract too tightly during cooking. Skip it or swap in dried crumbs and you’ll still have a fine meatball — just a noticeably firmer one. I tested this side by side enough times to be sure.
- Grated cheese: My family is southern Italian, and pecorino is what we always used — sharper and considerably saltier than Parmesan. Because it’s saltier, it does double duty. It flavors the meat through and through, which means you can be slightly more restrained with the added salt. If you substitute Parmesan, the meatballs will still be good, but the flavor will be milder and you may want to nudge the salt up by a quarter teaspoon. Either way, grate it fresh — the pre-grated stuff in a shaker has a dry, muted flavor that doesn’t distribute evenly.
- Garlic: Grate it on a rasp, press it, or chop it very fine. You want it to disappear into the mixture, not turn into chewy pieces that announce themselves in the finished meatball.
- Fresh parsley (or basil, or both) Either works; a mixture of both is particularly good. Dried herbs are an acceptable substitute — use about two teaspoons — but fresh parsley especially brings a clean, grassy brightness that dried ones can’t quite replicate.
How to mix meatballs that hold together

1. Tear the bread into rough pieces, put them in a bowl and pour the milk over. Let them soak a full 5 minutes — you want the bread saturated, not just damp. This is the step most people skip or rush, and it’s the one that matters most. 
2. Add the egg, cheese, garlic, salt and pepper directly to the soaked bread. Building the panade as a complete mixture first means the seasonings distribute evenly through every meatball. 
3. Mash with a fork until you have a coarse, cohesive paste — this is the panade. It should look almost like a loose scrambled egg mixture with texture.

4. Put the ground pork and beef in your largest mixing bowl. 
5. Combine the two meats with a fork until blended well — you don’t want a block of all pork next to one of just beef.

6. Add the panade and parsley to the meat all at once. 
7. Mix until the ingredients just come together. Over mixing compacts the proteins — the main reason meatballs become tough.

8. Form into 1/4-cup portions with an oiled cookie scoop or measuring cup. 
9. Cup each portion in both palms and press firmly enough that it holds its shape, then roll lightly. A meatball that’s too loosely formed will crack. You don’t need perfect spheres.

10. Cook meatballs: Heat olive oil in a large skillet over medium-high heat. Cook meatballs until browned all over, then cover the pan, lower the heat and cook 8-10 minutes. 
11. To bake meatballs: Arrange on an oiled baking sheet and bake 20 minutes at 425 degrees, turning halfway.
Make a Sunday dinner around these meatballs
The most traditional is spaghetti and marinara — brown the meatballs, transfer them straight into a pot of quick homemade marinara and let them finish cooking in the sauce. That last 10 minutes in simmering tomatoes is what my mother always did, and it’s what I still think produces the best result.
If you want to go deeper into Sunday territory, simmer them in Italian meat sauce instead. The meatballs absorb the sauce as they cook and the sauce absorbs the meatballs — it becomes even richer.
For something a little less expected, serve them over ricotta gnocchi or homemade potato gnocchi instead of pasta. The pillowy texture against the dense, sauced meatball is worth trying at least once.
Round it out with a green salad dressed with my balsamic vinaigrette — something sharp and mildly sweet to complement the meat.

Classic Italian Meatballs (Tender and Juicy)
Recipe Video
Ingredients
- ½ cup (54 g) fresh breadcrumbs, from 1-2 slices white bread (crust removed)
- ¼ cup (60 ml) milk
- 2 egg yolks
- ½ cup (50 g) grated pecorino Romano cheese, or Parmesan cheese
- 2 garlic cloves, finely chopped or grated
- 1 teaspoon (8 g) salt, or 2 teaspoons Diamond brand kosher salt (see note below)
- 1 teaspoon ground black pepper
- 1 pound (450 g) ground beef chuck
- 1 pound (450 g) ground pork, or veal
- ¼ cup grated onion, optional
- â…“ cup (30 g) chopped parsley, or basil
- Olive oil
Instructions
- Put the breadcrumbs in a small bowl and pour the milk over. Let them soak for 5 minutes. Add the egg yolks, cheese, garlic, salt, and pepper to the bowl and mash together to form a coarse paste.
- Put the beef, pork and onion (if using) in a large bowl and mix with a fork to blend. Add the bread mixture and parsley. Blend everything together well, using your hands, large wooden spoon or large fork. You can also mix in a standing mixer on low speed, just until blended. The meatball mixture can be mixed and refrigerated 2 days ahead of shaping and cooking.
- Form the meatballs: Use a ¼-cup measuring cup or cookie scoop to portion the mixture and roll lightly into balls. They don’t have to be perfect — craggy meatballs have character and hold the sauce better!
To cook on the stovetop:
- Pour enough oil into a large skillet to coat the bottom and place over medium-high heat. When the pan is hot, add as many meatballs as will fit in the pan without crowding. Note: They should sizzle as soon as they hit they pan or the pan isn’t hot enough.
- Brown the meatballs on all sides. Cover the pan, lower the heat and continue cooking and until the meatballs are firm and cooked through (165 degrees on a instant thermometer), which should take about 15 minutes total. Repeat the frying with remaining meatballs, pouring out the oil and adding a fresh layer each time.To finish cooking in tomato sauce:If you'd rather finish cooking the meatballs in tomato sauce (my preference), transfer them to a pot of simmering sauce just after browning on all sides. They won't be cooked all the way through. Simmer until they're cooked through, 10-12 minutes.
To bake the meatballs:
- Preheat the oven to 425 degrees.
- Arrange the meatballs on an olive-oiled coated rimmed baking sheet. Bake 10 minutes, then turn the meatballs over with a spatula or pair of tongs. Continue baking until nicely browned and cooked through, another 10-12 minutes.
- Serve the warm meatballs with marinara sauce or your favorite prepared tomato sauce.
Karen’s Notes and Tips
- To make fresh breadcrumbs:Â Trim the crust from a few slices of hearty country or Italian-style bread. Tear the bread into large pieces and pulse in a food processor until you see coarse pea-size crumbs or just tear them into pieces with your hands.
- To use dried breadcrumbs: Adjust the amount to 1/3 cup instead of the 1/2 cup of fresh crumbs. I recommend unseasoned dried breadcrumbs. If yours are seasoned, reduce the amount of salt in the recipe by 1/2 teaspoon.
- Panko: Use the full amount (1/2 cup), adding more by the tablespoon if the mixture doesn’t hold together
- Gluten-free breadcrumbs: Fresh or dried will work fine, following the tips above.
- Note on salt:  Kosher salt has a larger grain than regular table salt. Because the granules are fluffier than fine salt, there’s less salt per volume in a teaspoon of kosher salt than there is fine salt. The brand of kosher salt that I use for all recipes on this site is Diamond Kosher. If you use Morton kosher salt or another brand of kosher salt other than Diamond, reduce the amount of salt specified by one-half.
- Meatballs can be made ahead and frozen up to 2 months. Cool the cooked meatballs completely. Arrange them in a freezer-proof container or heavy-duty freezer bag. Label the container with the contents and date. Defrost overnight in the refrigerator, then gently heat in your favorite tomato sauce on the stovetop..
- An electric standing mixer is handy to blend the meat and seasonings if you’d rather not do it by hand.
Nutrition per serving
Nutrition facts are calculated by third-party software. If you have specific dietary needs, please refer to your favorite calculator.

Hey, I’m Karen
Creator of Familystyle Food
Professionally trained cook, cookbook author, and the person behind every recipe here. I cook the way I was trained: Start with good ingredients, understand why they work, and don’t apologize for the salt. These are the recipes I actually make, for the people I love. Read more about me here.












Love a good meatball and these certainly are!
Made with ground chuck, pork and spicy Italian sausage. Fine grated the onions along with the garlic and added the rest of the cast of characters.
Delicious 😋
5 stars…
Thank you for this great recipe. I just made the meatballs and tasted one. So moist and delicious. I appreciate the mixing instructions to make a paste. Thanks for the freezing tips too. I love it when I have something premade in the freezer for a simple dinner.
Made them small to use on a pizza so reduced the cook time. They were very good but I would make them spicier next time. I didn’t use the onion because I had onion as another topping on the pizza.
We made the meatballs last night and absolutely loved them!!! Perfect little balls and wonderfully moist! Thank you.
I made a half portion of this meatball recipe tonight, very tasty. One suggestion: followed everything in quantity but only used a 1/4 tsp of black pepper instead of 1/2 tsp it would have been as per a 1/2 recipe. The full batch of meatballs calls for 1 tsp of black pepper!
The black pepper was still overpowering. I recommend using only a few large dashes of black pepper so you can taste the other milder flavors of basil, parsley and Parmesan. Still enjoyed it, meatballs came out cooked perfect, and the grated onion was almost a purée instead of chopped, I like that part. We then put them in a marinara for dinner with pasta
After not making meatballs for over a year, I couldn’t remember the recipe. And because Mom’s not here to ask, I hit up google. Well I’ve tried close to a dozen different recipes….this by far is the best. Next time I’ll add more garlic! Thanks so much for my go to recipe for meatballs! Delish and 5 stars for sure!
Oh, Terry this is so nice to hear! I’m honored my meatballs could step in for your Mom’s recipe. I love that they’ve earned a permanent spot in your rotation 🥰
Followed to a T. Did not get meatballs. Hope everyone likes bolognese. That’s what it turned into. Waste of 3 pounds of meat!!
Lisa, You say you used 3 pounds of meat. The recipe only calls for 2. Did you increase the amount of egg and breadcrumbs? If not, it’s hard to form meatballs because there isn’t enough binder.
To get uniformed sized meatballs make the mixture into a large rectangle one inch high. Cut the rectangle into an inch grid. Uniform cubes that you roll into balls. No scouping nor weighing.
Great tip! Thank you for sharing.
So delicious 😋 I love how the breadcrumbs absorb the sauce. Meatballs were juicy. I added butter as well as olive oil when cooking as I only used 93% lean beef. I will make this again for sure. Thanks!
First time making meatballs and they were amazing! Great recipe!!!!
I’m so happy that your first attempt was so successful – yay!!
These were the best meatballs I have ever had. I used 6 meatballs and put gravy over them. They were delicious. I made up more and this weekend I am going to try it in spaghetti. I can’t get enough of them.
Great recipe. My only tweak was cooking meatballs at 350 for probably a total of an hour, flipping once after about 40 minutes. I think they get a bit dry at that temp.
But great basic recipe!! Especially since you included the panade!!
DELICIOUS. Making them again this week and saving the recipe to my cookbook for years to come.
I just made very large meatballs. 2 pounds of chop meat and it made 16 huge meatballs and they are in the oven. They smell delish. Thank you for the recipe.
Delicious, very tender and easy to make! the bEST!!
I have made meatballs many times before, experimenting with several recipes from chefs who graduated from culinary school, and went on to work in 4-5 star resteraunts. Honestly, they were all good. HOWEVER, this one was noticeably a cut above the rest, according to my family who has had them all.
1st time, I used fresh ground chuck 85% lean, and fresh ground pork. They turned out great. The 2nd time I did 1 & 1/2 X the recipe using 1.5 lb fresh ground chuck & 1.5 lb Italian sausage (1lb Italian Sweet Turkey casings off sausage, plus 1/2 lb ground hot Italian sausage.) Mainly because that is what I had on hand. I used a combo of fresh flat leaf parsley & Fresh basil…about 1/4 cup each for 1 & 1/2 X the recipe. Your quick marinara sauce ( double recipe) worked out great for both versions.
A keeper for sure.
Wow, Joanne thank you! Hearing this from someone who’s made so many versions (and even from chef-level recipes!) is such a compliment. I love how you adapted it with the sausage and herbs — incredible. I’m so happy the meatballs are a standout for you and your family!
A very good recipe. I use a small scoop to form the meatballs and browned them in an air fryer. A small batch for 6 minutes and finished in sauce. The others for 10 minutes, cooled, and froze for a later time.
Absolutely perfect recipe. We have made this a weekly tradition and after searing the meatballs, we saute garlic and red pepper then pour in a can of crushed tomatoes on top and let it sit for 30 minutes. It is stellar and so easy to make.
i made these and havent cooked them yet. wow the smells just from making was amazing, i am sure they will be once i cook them. thank you for including us on your family recipe!!
Just a quick clarification: For the meatball recipe, I should tare up fresh Italian bread or a hearty country bread…NOT toasted like in your homemade bread crumbs. I see from the notes that dried bread crumbs or panko “could” also be used w/ a milk adjustment. But I am thinking the fresh bread untoasted & crusts off would make a better paste. Thoughts?
Yes, I highly recommend that you use the crumbs from a fresh loaf (Italian or country-style)!