These Italian-American-style meatballs combine ground beef and pork with Parmesan, herbs, and a milk-soaked breadcrumb mixture, then simmer in a quick tomato sauce. The panade helps keep them tender, while browning adds savory flavor; meatball sizes and seasonings vary widely between cooks and regional versions.
Ingredients
- ½ cup (55 g) plain breadcrumbs
- ⅓ cup (80 ml) whole milk
- 1 lb (454 g) ground beef, preferably 85–90% lean
- ½ lb (227 g) ground pork
- ⅓ cup (50 g) finely grated yellow onion
- 1 large egg (about 50 g without shell)
- ⅓ cup (30 g) finely grated Parmesan, plus more for serving
- 2 tbsp (8 g) finely chopped fresh parsley
- 2 garlic cloves (6 g), finely minced
- 1 tsp (6 g) fine salt
- ½ tsp (1 g) black pepper
- ½ tsp (1 g) dried oregano
- 1 tbsp (15 ml) olive oil, for browning
- 1 tbsp (15 ml) olive oil, for the sauce
- ½ cup (75 g) finely chopped yellow onion, for the sauce
- 2 garlic cloves (6 g), minced, for the sauce
- 1 can (28 oz / 794 g) crushed tomatoes
- ½ cup (120 ml) water
- ½ tsp (3 g) fine salt, for the sauce, plus more to taste
- 1 tsp (1 g) dried basil, or 2 tbsp (5 g) chopped fresh basil
- ¼ tsp (0.5 g) black pepper, for the sauce
Instructions
- Soak the breadcrumbs. In a large mixing bowl, stir the breadcrumbs and milk together until the crumbs are evenly moistened. Leave them for 5 minutes while you prepare the remaining ingredients. This mixture, called a panade, gives the meatballs moisture and helps keep the texture soft rather than dense.
- Mix the meatball mixture. Add the beef, pork, grated onion, egg, Parmesan, parsley, minced garlic, salt, pepper, and oregano to the bowl. Use clean hands or a fork to mix gently until the ingredients are just combined. Stop as soon as there are no large streaks of egg or dry seasoning; compacting or kneading the meat can make the finished meatballs firm.
- Shape the meatballs. With damp hands, form the mixture into about 20 balls, each roughly 1½ inches (4 cm) across. Try to make them similar in size so they finish cooking at about the same time. Set them on a plate or tray as you work. Keep the raw mixture and utensils separate from the cooked food, and wash your hands and work surface after handling raw meat.
- Brown the meatballs. Heat 1 tablespoon (15 ml) olive oil in a wide, heavy skillet or Dutch oven over medium heat. Add the meatballs in a single layer, working in batches if needed so they have room to brown. Turn them carefully every few minutes for about 8–10 minutes total, until several sides are browned. They will not be fully cooked inside yet. Transfer them to a clean plate; if browning in batches, add a small splash of oil only if the pan looks dry.
- Start the sauce. Carefully pour off excess fat if there is more than a thin coating left in the pan, leaving the browned bits behind. Add the second tablespoon (15 ml) olive oil and the chopped onion. Cook over medium heat for about 3 minutes, stirring, until the onion begins to soften. Add the sauce garlic and cook for 30 seconds, just until fragrant. Stir in the crushed tomatoes, water, salt, basil, and pepper, scraping the pan to loosen the browned bits.
- Simmer until safely cooked. Bring the sauce to a gentle simmer, then return the meatballs and any juices on the plate to the pan. Turn them gently to coat. Cover partially and simmer over low heat for about 20 minutes, turning the meatballs once if convenient. Check the center of a large meatball with a food thermometer; USDA FSIS sets 160°F (71°C) as the safe minimum internal temperature for ground meat. If it has not reached that temperature, continue simmering and check again after a few minutes. Avoid a hard boil, which can make the meatballs break apart and splatter sauce.
- Finish and taste. Once the meatballs reach 160°F (71°C), taste the sauce and adjust the salt or pepper. If it seems thicker than you like, stir in a tablespoon or two of water; if it is thin, simmer uncovered for a few minutes, watching that the meatballs do not stick. Serve hot with extra Parmesan if desired.
Tips
- Mix with a light hand. Combining the meat until it just holds together is one of the most useful ways to avoid tough meatballs. Wet hands make shaping easier, and keeping the portions even matters more than making every ball perfectly round.
- Choose a sensible fat level. Beef that is 85–90% lean works well with pork: it has enough fat for a juicy result without leaving an excessively oily sauce. If using very lean beef, the meatballs may be a little less tender; do not compensate by overmixing. Ground turkey can replace the beef and pork, though the flavor will be milder and the mixture may feel softer. Cook poultry meatballs to 165°F (74°C) as measured with a food thermometer.
- Use a practical breadcrumb substitute. Plain panko works in the same amount, though its larger flakes can give a slightly looser texture; let it soak fully before adding the meat. For a gluten-free version, use gluten-free breadcrumbs in the same quantity. If you have no breadcrumbs, finely crushed plain crackers can work, but they are often saltier, so reduce the added salt a little.
- Brown without crowding. A crowded pan traps steam, so the meatballs may turn gray rather than develop browned patches. If the pan is small, cook in two batches and keep the first batch on a clean plate. The browned bits are useful flavor for the sauce, so avoid scraping them out when draining excess fat.
Serving Suggestions
For a familiar, filling meal, spoon the meatballs and tomato sauce over spaghetti, linguine, or another pasta. Toss the pasta with a little sauce before plating so the noodles are seasoned throughout, then add the meatballs, more sauce, and grated Parmesan. A piece of crusty bread is handy for catching sauce, while a simple green salad or steamed green beans make a fresh contrast.
These meatballs also work beyond a pasta plate. Serve them with polenta, mashed potatoes, or rice to make the sauce part of the meal, or tuck two or three into a toasted roll for a meatball sandwich. For sandwiches, use a slotted spoon to lift out the meatballs and let excess sauce drain briefly; this helps keep the bread from becoming soggy. If serving a group, keep the meatballs hot in the sauce and offer pasta and toppings separately so guests can choose their portions.
Variations
More herb-forward: Replace the dried oregano with 1 teaspoon (1 g) dried Italian herb blend, or add another tablespoon (4 g) chopped parsley. A little lemon zest can brighten the mixture, though it shifts the flavor away from the classic savory profile. Add herbs sparingly so they complement rather than overwhelm the meat and Parmesan.
Beef-only or pork-only: You can use 1½ lb (680 g) of ground beef instead of the beef-and-pork combination. The flavor will be more straightforward and may be slightly leaner. Using all pork gives a richer, sweeter-tasting meatball; choose ground pork that is not extremely lean and check doneness with a thermometer just as you would for other ground meat.
Spicy tomato sauce: Add ¼ teaspoon (0.5 g) red pepper flakes with the sauce garlic, then taste near the end and add more only if wanted. For a smoother sauce, blend the tomatoes before adding them to the pan, taking care with hot liquids. For a rustic sauce with extra vegetables, cook ½ cup (75 g) finely diced bell pepper with the onion until softened.
Gluten-free or dairy-free: Gluten-free breadcrumbs are the simplest swap for the standard crumbs. For a dairy-free version, use an unsweetened plain plant-based milk in the panade and omit the Parmesan or use a suitable dairy-free alternative; the flavor will be less salty and savory, so taste the mixture’s seasoning before shaping. Keep the meatball mixture tender rather than adding extra crumbs to make it feel firmer.
Storage and Reheating
Refrigerate cooked meatballs and sauce within 2 hours of cooking, in a covered, shallow container. They keep for 3–4 days in the refrigerator. Store the meatballs with sauce rather than separately if possible; the sauce helps limit drying while they chill. Let the food cool briefly before covering, but do not leave it at room temperature to cool for an extended period.
To reheat on the stove, place the meatballs and sauce in a covered saucepan over low to medium-low heat. Stir gently from time to time and add a splash of water if the sauce has thickened. Heat until the center of the meatballs and the sauce reach 165°F (74°C), checking with a food thermometer. In a microwave, use a microwave-safe covered dish, arrange the meatballs in an even layer, and heat in short intervals, turning or stirring between intervals so they warm evenly; verify 165°F (74°C) before serving.
For longer storage, freeze cooled meatballs with sauce in a freezer-safe, airtight container for up to 3 months for best quality. Leave a little room for expansion and label the container with the date. Thaw overnight in the refrigerator when possible, then reheat to 165°F (74°C). You can also reheat from frozen over low heat in a covered saucepan, allowing extra time and stirring gently as the sauce loosens. Do not refreeze food that has been thawed and held at room temperature.
Frequently Asked Questions
Why do my meatballs fall apart?
They may be too loosely mixed, too large, or turned before a browned surface has formed. The egg and soaked breadcrumbs help bind this mixture, but they need to be distributed throughout it. Shape evenly, brown the first side before turning, and use a spoon or thin spatula to roll them gently. Simmering at a quiet bubble rather than a rolling boil also helps them stay intact.
Can I bake the meatballs instead of browning them in a pan?
Yes. Arrange the shaped meatballs with space between them on a foil- or parchment-lined rimmed baking sheet and bake at 400°F (200°C) until browned and cooked through, checking the center of a large meatball with a thermometer for 160°F (71°C). The exact time depends on their size and your oven, so use temperature rather than color alone to judge doneness. Add them to the prepared sauce afterward and simmer briefly so they pick up its flavor.
Can I make the mixture ahead?
You can shape the meatballs, cover them, and refrigerate them for up to 24 hours before cooking. Keep them chilled at 40°F (4°C) or below and cook them promptly after taking them out. You can also mix the ingredients a few hours ahead, but avoid leaving raw ground meat at room temperature. If the mixture becomes very firm in the refrigerator, shape it gently rather than kneading it again.
How can I tell when meatballs are done?
Color alone is not a dependable test, especially when meatballs are browned on the outside before they finish cooking in sauce. Insert a food thermometer into the center of one of the largest meatballs without touching the pan. For this beef-and-pork mixture, the safe minimum is 160°F (71°C). If you use ground poultry instead, cook it to 165°F (74°C).
Can I make these without pork?
Yes. Use 1½ lb (680 g) ground beef in place of the beef and pork, or use ground turkey for a lighter-flavored alternative. The texture changes with the meat’s fat content: leaner mixtures can be less succulent and may be softer to shape. The milk-soaked breadcrumbs still help, and the meatballs should be cooked to the appropriate safe temperature for the meat you choose.
What should I do if the sauce tastes too acidic?
First let it simmer for a few extra minutes, then taste again; cooking can round out the tomato flavor. Check the salt before making other changes, since under-seasoning can make a sauce seem sharper. If it still needs balance, stir in a small pinch of sugar, about ⅛ teaspoon (0.5 g), and taste before adding more. A little grated Parmesan at serving also adds savory richness without changing the sauce recipe.
Related
- Kahlua Milkshake Recipe: Creamy, Coffee-Rich Treat
- Kaju Fudge Recipe: Smooth, Creamy Indian Cashew Barfi
- Kale Mashed Potatoes with Garlic and Cream
More recipes to cook
Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes
Spotted an error? Tell us and we will correct it (corrections policy).