Spaghetti with pork meatballs in marinara sauce — a straightforward weeknight dinner that comes together in 40 minutes with a short ingredient list. Ground pork is often cheaper than beef and makes genuinely tender meatballs, which is the honest reason to reach for it here. This is a solid, repeatable recipe that works even when your pantry is running low.
The short version of why this works
Two things matter most. First, browning the meatballs in a skillet before they go into the sauce — that crust adds flavor you simply cannot get by simmering raw meatballs from the start. Second, finishing them covered in the sauce over low heat keeps them moist and pulls the internal temperature up to the required 160°F (71°C) without drying them out. Skip either step and you get either pale, bland meatballs or dry ones. The breadcrumbs and egg are doing quiet work too — they hold moisture inside the meatball so the pork stays tender rather than tight.
Troubleshooting
- Meatballs fall apart in the pan: The mixture was probably too wet or under-mixed. Make sure the egg and breadcrumbs are fully incorporated before rolling. If the mix still feels loose, add another half tablespoon of breadcrumbs and chill the rolled meatballs for 10 minutes before browning.
- Meatballs stick hard to the skillet: The pan wasn’t hot enough before the oil went in, or you tried to move them too soon. Let them sit undisturbed for the full 2–3 minutes — they release naturally once a crust forms.
- Sauce is watery after simmering: Most jarred marinara thins out as the meatballs release juices. Keep the lid slightly ajar for the last few minutes to let steam escape, or just simmer uncovered for an extra 3–4 minutes.
- Meatballs hit 160°F on the outside but the center reads low: Your meatballs are too large or the heat is too high. Flatten them very slightly — a perfect sphere takes longer to cook through. Medium-low heat is the right call here, not medium.
- Pasta finishes before the meatballs are done: Drain the pasta and toss it with a small splash of olive oil to stop it clumping, then hold it off heat. It will sit fine for 5–6 minutes without turning into a block.
Substitutions that actually work
- Jarred marinara: Any plain tomato-based pasta sauce works — look for one with garlic and herbs already in it. A can of crushed tomatoes with a pinch of dried oregano and a little garlic is a perfectly good substitute if that’s what you have.
- Breadcrumbs: Crushed crackers, panko, or even a slice of stale bread torn very fine all bind the meatballs just as well. Skip the garnish of extra Parmesan on top — not worth the extra dish.
- Whole wheat spaghetti: Regular spaghetti, linguine, or any long pasta shape works. Short shapes like rigatoni or penne also hold the sauce well if that’s what’s in the cupboard.
- Ground pork: Ground turkey works as a direct swap — cook it to 165°F (74°C) instead of 160°F. Ground beef produces a slightly firmer meatball but is otherwise interchangeable in this recipe.
- Parmesan: Pecorino Romano or any hard aged cheese you have on hand does the same job in the meatball mix.
Make-ahead notes
The meatballs in sauce keep well in the fridge for up to 4 days in a sealed container — the flavor actually improves overnight as the pork absorbs more of the tomato sauce. To freeze, cool the meatballs and sauce completely, then freeze together for up to 3 months; thaw overnight in the fridge before reheating. Reheat gently in a covered skillet over low heat with a splash of water to loosen the sauce, or microwave covered in 90-second bursts, stirring between each. Cook fresh pasta when you’re ready to serve — pasta stored separately in the fridge for a day is fine, but it tends to clump, so toss it with a little oil before storing.
Spaghetti Marinara with Pork Meatballs
Equipment
Ingredients
1 pound ground pork - minced pork, about 450g
12 oz spaghetti - 340g, we used whole wheat
1 small yellow onion - diced
1 clove garlic - minced
1 medium egg
2 tablespoons breadcrumbs - 15g
2 tablespoons Parmesan cheese - finely grated, 10g
1 jar Marinara sauce (tomatoes, garlic, herbs, and onions – pasta sauce in southern hemisphere for Italian seafood dish) - 24 oz / 680g
½ teaspoon salt
¼ teaspoon ground black pepper
½ teaspoon oregano - or Italian seasoning, optional
3 tablespoons olive oil - 45ml
Instructions
- Dice the onion and mince the garlic clove. Measure out the salt, pepper, oregano, breadcrumbs, and Parmesan so everything is ready to go.1 small yellow onion, 1 clove garlic, ½ teaspoon salt, ¼ teaspoon ground black pepper, ½ teaspoon oregano, 2 tablespoons breadcrumbs, 2 tablespoons Parmesan cheese
- Heat a medium skillet over medium heat. Add 1 tablespoon of olive oil and soften half of the diced onion for 3-4 minutes until translucent. Transfer the softened onion to a small bowl and place in the freezer for 2 minutes to cool quickly — you don’t want hot onion partially cooking the egg in the meatball mixture.3 tablespoons olive oil, 1 small yellow onion
- In a large bowl, combine the ground pork, cooled softened onion, minced garlic, salt, pepper, Parmesan, breadcrumbs, and egg. Mix gently with clean hands until just incorporated — do not overmix or the meatballs will be dense. Roll into golf ball-sized meatballs (about 1.5 inches / 4cm diameter — you should get 12-15 meatballs). Place on a baking sheet or cutting board.1 pound ground pork, 1 small yellow onion, 1 clove garlic, ½ teaspoon salt, ¼ teaspoon ground black pepper, 2 tablespoons Parmesan cheese, 2 tablespoons breadcrumbs, 1 medium egg
- Heat the medium skillet over medium-high heat and bring a large pot of salted water to a boil for the pasta. Add 1-2 tablespoons of olive oil to the hot skillet and carefully place the meatballs in, leaving space between each. Brown on all sides, turning every 2-3 minutes, for about 6-8 minutes total. The meatballs will not be cooked through — they will finish in the sauce.3 tablespoons olive oil
- Heat a deep skillet or sauté pan over medium heat and add ½ tablespoon of olive oil. Add the remaining diced onion and cook for 3-4 minutes until softened. Reduce heat to medium-low and pour in the marinara sauce, stirring to combine. Nestle the browned meatballs into the sauce, cover the skillet, and simmer on medium-low (reduce to low if the sauce bubbles aggressively) for 10-12 minutes.3 tablespoons olive oil, 1 small yellow onion, 1 jar Marinara sauce (tomatoes, garlic, herbs, and onions – pasta sauce in southern hemisphere for Italian seafood dish)
- While the meatballs simmer, cook the spaghetti in the boiling salted water according to the packet instructions until al dente. Drain and set aside.12 oz spaghetti
- Check the internal temperature of the largest meatball with an instant-read thermometer — they are done when they reach 160°F (71°C). Serve the meatballs and sauce over the cooked spaghetti. Top with extra grated Parmesan if desired.
Notes
Nutrition
Frequently asked questions
Can I use ground beef instead of ground pork?
Yes, ground beef is a direct swap in the same quantity. The meatballs will be slightly firmer and have a more savory, less sweet flavor, but the recipe works exactly the same way — still cook to 160°F (71°C) internal temperature.
Do I have to brown the meatballs first, or can I just drop them straight into the sauce?
Browning first is worth doing — it builds a layer of flavor on the outside that simmering alone won’t give you. If you’re genuinely short on time, you can skip it, but the finished meatballs will be paler and milder.
I don’t have breadcrumbs. Can I leave them out?
You can, but the meatballs will be denser and more likely to crack. A better fix is to crush a few plain crackers or tear up a small piece of stale bread very finely — either works as a substitute in the same 2-tablespoon quantity.
How do I know the meatballs are fully cooked without a thermometer?
A meat thermometer is the reliable method — ground pork must reach 160°F (71°C). If you don’t have one, cut the largest meatball in half; the center should be completely opaque with no pink remaining and the juices should run clear.
Can I make this with canned tomatoes instead of jarred marinara?
Yes — a 14 oz (400g) can of crushed tomatoes with a clove of garlic, a pinch of dried oregano, and a little salt makes a workable sauce. Simmer it for 5 minutes before adding the browned meatballs so the raw tomato flavor cooks off.
Can I freeze the leftover meatballs?
Yes, and they freeze well for up to 3 months. Store the meatballs and sauce together in a sealed container — freezing them separately from the sauce tends to dry them out. Thaw overnight in the fridge and reheat gently on the stovetop.
What to cook next
- Savory Pork Noodle Stir-Fry
- Beef Ricotta Lasagna Rolls
- Spicy Calabrian Lamb Ragù
- Creamy Beef Spinach Pasta
