This is the spaghetti sauce I make most often. It's a nostalgic recipe for homemade spaghetti and meatballs, a riff on the one my husband grew up eating, made with with oven-baked beef and pork meatballs and poached, sliced sausage.
The spaghetti sauce cooks slowly, starting on the stovetop then goes into the oven until the liquid has reduced. And although it can take a while for that to happen (between 2 and 3 hours) this recipe is 100% worth waiting for because of how the spaghetti sauce’s flavor intensifies over time.
Recipe yields 2 quarts of sauce and 24-30 meatballs and freezes wonderfully!

If you're looking for other pasta dinner recipes, or just faster pasta recipes, check out my spicy chicken rigatoni pasta, which is great on busy weeknights.
A Nostalgic Spaghetti & Meatballs with Sausage Recipe
I didn't personally grow up with a classic family spaghetti and meatballs recipe and never really had any nostalgic feelings for one. Which, honestly, turned out to be for the best because I married into one. Jimmy has strong feelings about his mom's homemade spaghetti and meatballs recipe.
Even back in college, when neither of us cooked much at all, Jimmy occasionally made a huge batch of this spaghetti with meatballs and sausage so he could eat it for days. And now, over a decade later, as full-grown married adults with a child, we still do this.
It's such a great make-ahead spaghetti and meatballs recipe. Yes, it's a bit time-intensive, but it's so worth it for several days of easy leftovers, especially since the sauce and meatballs freeze so well.

Truly one of the best things about this spaghetti and meatballs recipe is that it makes a lot of sauce and a lot of meatballs.
If you're a family of five or six, it'll make enough for a night or two of dinner plus some leftovers for lunch, depending on how hungry everyone is. If you're a family of two, or cooking just for yourself, buckle up because you'll have at least 4-6 days of spaghetti with meatballs and sausage to eat!
If you just can't imagine eating the same thing day after day, don't worry. The leftover meatballs and sauce can be frozen (separately) in the freezer for 3-6 months. I like storing the sauce in these 1-cup SouperCubes trays. Make a big batch today, and you'll have quick and easy dinners ready to defrost later.

Jimmy Says...
This homemade spaghetti and meatballs recipe is the one my siblings and I make when we're feeling homesick. If someone told me I could never eat my mom’s spaghetti sauce again unless I ate a literal concrete brick, I would get out my blender and turn that brick into a smoothie.
This recipe, as my mom made it, used mostly powdered seasonings, dried herbs, jarred garlic, etc. It might not be traditional, but it makes sense. She was cooking for three kids; shelf-stable ingredients were a priority. I've since put my own spin on her spaghetti with meatballs and sausage recipe, replacing some (but not all) of the dried ingredients with fresher counterparts. And instead of leaving it on the stove, I give it time to reduce in the oven to intensify the flavors.
There are a lot of ways to tailor this recipe to your own preferences. I keep the sauce meat-free until it's time to add the meatballs and sausage. My sister, however, takes a more ragu-style approach and adds lots of ground meat to hers.
We've each grown to love our own versions, and when you start making this recipe over and over again, adding your own tweaks, I know you'll love your own version of it too.

To make the sauce, I use a mix of crushed canned tomatoes and whole canned tomatoes, ideally whole, peeled San Marzano tomatoes. This gives a great textural variety and more complex tomato flavor to the sauce.
Does using DOP canned tomatoes really make that big of a difference?
When it comes to spaghetti sauces, you'll often see people recommend using "Italian DOP-certified San Marzano tomatoes." That's because they're fantastic tomatoes for making spaghetti sauce. However, if you're worried that people will judge you for not buying speciality canned tomatoes from Italy, don't be. (Okay, Italians might judge you, but they’re working from a different playbook when it comes to spaghetti sauce).
San Marzano tomatoes are great, but finding official DOP San Marzano tomatoes can be a challenge here in the United States. Luckily certain regions in California have a similar climate to the San Marzano region of Italy, making San Marzano tomatoes grown in California a great option here.
At the end of the day, any canned, peeled whole plum tomatoes will work just fine. If you like a particular brand, or one of them is on sale that week, just go for it. You’ll enjoy it. Don’t let pretentious food jerks make you feel like your sauce isn’t worth it. It's your sauce. Own it.
I find using a blend of ground beef and pork to make the meatballs with just the right amount of seasoned breadcrumbs gives them so much of flavor and tenderness. I also like adding a bit of Parmesan cheese, garlic, and herbs to the meatballs to carry some of the flavors from the sauce throughout the dish.

How to Make Spaghetti and Meatballs
This is not a short recipe. But, it is a fairly hands-off recipe. And when it comes to the spaghetti sauce specifically, giving it plenty of time to cook down, reduce, and thicken is totally worth it for amazing flavor. It can take a while for the water to cook off, but once it does, you’ll be glad you waited.
I start the spaghetti sauce recipe in a big pot on the stove to soften the vegetables and get the sauce started, but since I don't really want to babysit a big pot on the stove for several hours and risk the bottom burning, I put the whole pot in the oven to reduce, allowing the flavors to meld and intensify



The onions, carrots, bay leaves, and basil stems will be removed later.

Cover the pot with the lid slightly ajar to allow steam to escape in the oven.
I usually reduce the sauce for about 2-3 hours, stirring it every hour or so to scrape down the sides of the pot and make sure nothing is burning.
You may have noticed that no salt has gone into the sauce yet. This is on purpose! Adding salt at the beginning before the sauce reduces risks ending up with an overly salty spaghetti sauce. Instead, I add the salt at the end when the sauce is done cooking.
Why Make Homemade Meatballs
I always prefer making meatballs with ground beef and ground pork from scratch for spaghetti, mostly because when I make your own meatballs, I get to control the most important variable: bread.
Meatballs usually have some sort of breading in them, and store-bought frozen meatballs can range in quality... lower-quality ones will have more bread in them than meat. Since we prefer meatier meatballs, we make ours from scratch.


Try not to overwork the meatball mixture. Overworked ground meatball mixture = tough meatballs. No one wants that.
You can certainly weigh and divide the meatball mixture to be precise, but I usually just eyeball the meatball sizes. You should get about 28 golf ball-sized meatballs out of this meatball mixture.


When the meatballs are done cooking, they will be lightly browned and fully cooked through; absolutely safe to eat with no further cooking needed.
I usually bake the meatballs during the first hour of reducing the sauce in the oven and then set them aside while the sauce finishes reducing.
Adding Meatballs and Sausage
When the sauce has reduced by about a third to half and taken on a darker red color, it's done. I remove and discard the quartered onions, carrot, basil stems, and bay leaves, and add the cooked meatballs to the pot along with the sausages to poach on the stove.


If the sauce has reduced more than you'd like or doesn't completely cover the meatballs and sausage, stir in a bit of water, just enough to cover them. There's so much flavor in the reduced sauce that adding a bit of water won't really dilute it.
Poach the meatballs and sausage for about 20 minutes, then remove the sausages from the pot and pat them dry with a paper towel. Pan-fry the sausages until crisp and browned on all sides. Remove from the skillet, let rest for 5 minutes, then slice them up and add them back to the sauce.
Poaching the sausages whole in the sauce gives them a chance to absorb lots of delicious tomato-y flavor from the sauce and vice versa. They also get a jump start on cooking, so pan-frying them after is mostly just to get nice browning and crispiness on the outside.
It's really up to you if you want just meatballs, just sausage, or both. We usually do both, because Jimmy really likes the sausage in the sauce and doesn't mind the extra steps or washing the extra pan. But if that's not your vibe, you certainly don't need to do it this way.


📖 Recipe

Homemade Spaghetti & Meatballs with Sausage
Recipe Notes
- My big pot can't fit in the oven or isn't oven-safe. What else can I do? Keep the pot on the stove at a low simmer for 2-3 hours instead. Make sure you stir it every 20-30 minutes or so since the heat is only coming from the bottom, and you don't want anything to burn!
- Before you get started making the sauce, preheat the oven to 325°F and arrange the oven racks so you have space to cook the meatballs while the sauce is reducing in the oven. I usually do the meatballs on the lowest oven rack, and the sauce on a rack one or two notches above. The amount of space you need will depend on the height of your pot. Remember to include space for the lid to fit!
- Both the sauce and the meatballs will stay good in the fridge 3-5 days and in the freezer up to 3 months. Meatballs can be defrosted in the sauce from frozen.
- If you want homemade meatballs but don't have time to make meatballs and sauce from scratch on the same night, you can always make the meatballs ahead of time and refrigerate or freeze them.
- The sausages can be poached all at once and then refrigerated in an airtight container. Pan fry, rest, and slice before adding to the sauce. DO NOT freeze the sausages after poaching.
- Adding the cooked meatballs and sausage to the sauce before serving is mostly to get them up to temperature and to give them a chance to absorb some tomato-y flavor. Since they’re fully cooked, however, you can serve them on the side if you need to.
- Variations:
- Spicy - Add up to 1 tablespoon crushed red pepper flakes to the sauce, add ½ teaspoon crushed red pepper flakes to the meatball mixture, and/or use hot Italian sausage in the sauce.
- Vegan - Serve without meatballs and sausage or use frozen vegan meatballs and vegan sausage!
- Sweeter/More Vegetables - Instead of a whole peeled carrot that you remove from the sauce, finely grate the carrot and cook it with the onions and garlic. It will make for a sweeter sauce with more vegetables in it.
Ingredients
For the Sauce
- 1 tablespoon olive oil
- 1 large yellow onion (quartered)
- ½ large yellow onion (minced, save the other half for the meatballs)
- 6 cloves garlic (minced)
- 2 28 oz cans crushed tomatoes
- 1 28 oz can whole peeled tomatoes (San Marzano if you can find them, but any plum tomato variety will do)
- 1 large carrot (peeled and cut in half)
- 2 stems fresh basil (save the leaves for later)
- 2 bay leaves
- 2 teaspoons dried oregano
- ¼ teaspoon crushed red pepper flakes
- ½-1 teaspoons diamond crystal kosher salt (to taste)
- ¼ cup fresh parsley (chopped)
- ¼ cup fresh basil (chopped)
For the Meatballs and Sausage
- 1 lb ground beef (20/80 or 15/85 ideally)
- 1 lb ground pork
- 1 package Italian sausage (assume ½ sausage per person)
- ½ large yellow onion (minced, the other half of the onion from the sauce)
- 3 cloves garlic (minced)
- ¼ cup fresh parsley (chopped)
- 3 tablespoons fresh basil (chopped)
- ¼ cup finely grated parmesan cheese
- ⅓-½ cups Italian bread crumbs (use the larger amount of bread crumbs for softer meatballs)
- 1 large egg
- ½ teaspoon diamond crystal kosher salt
- ¼ teaspoon black pepper
- 1 tablespoon olive oil (for searing the sausage)
For the Pasta
- Pasta (whatever shape you want, however much you need to feed however many people are eating, cooked according to package directions)
Instructions
The Sauce
- Preheat oven to 325°F with one rack on lowest setting for the meatballs and the other one or two notches above it.
- Heat large oven safe pot or Dutch oven over medium-low heat on the stove. Add 1 tablespoon olive oil and swirl it around. When it starts to shimmer, add the minced onions and sauté until translucent, stirring occasionally. The goal is to for the onions to release their juices, not brown. Add the minced garlic and cook, stirring frequently, for 1 minute more (garlic cooks faster than onions, so adding it last prevents it from burning).
- Add the canned crushed tomatoes and stir to combine. One at a time, add the whole peeled tomatoes, squeezing each tomato in your hand over the pot before gently dropping it in. Once all the tomatoes are in, pour the remaining liquid from the can into the pot and stir.
- Add the carrot, onion quarters, bay leaves, basil stems, red pepper flakes, dried oregano, and pepper to the pot. Stir until everything is submerged.
- Put the lid on the pot at a slight angle so that steam can escape, and place it in the oven for 2-3 hours until it has reduced by ⅓ and is deep red in color. Stir every hour. NOTE: If making meatballs, now is a good time to do so!
- When the sauce has reduced and taken on a dark red color, take the pot out of the oven and remove and discard the carrot, onion quarters, bay leaves, and basil stems. Stir in chopped fresh basil and parsley. Add salt and pepper to taste.
- If eating immediately, keep the pot on the stove on low heat to poach the sausages and heat the meatballs. Add only the number you plan to eat that night.If prepping ahead, let the sauce cool before transferring to an airtight container and placing in the fridge or freezer.
The Meatballs
- Combine ground meat, onion, garlic, parsley, basil, breadcrumbs, parmesan cheese, egg, salt and pepper in a large bowl. Mix with your hands just until combined. Do not overwork it.
- Shape golf ball sized meatballs and arrange them in rows on an aluminum foil-lined baking sheet. Bake at 325°F for 20 minutes.
- If using immediately, add desired number of meatballs to finished spaghetti sauce and poach for an additional 20 minutes.
- If prepping ahead, let cool on the sheet pan before transferring to an airtight container in the fridge or freezer. Reheat by placing in warm spaghetti sauce on the stove for 20-30 minutes before eating.
The Sausage
- Heat spaghetti sauce on the stove until warmed through. Submerge the sausages in the sauce for 20 minutes at medium-low heat.
- In the last few minutes of poaching, heat 1 tablespoon oil in a medium skillet over medium heat until shimmering.
- Remove the sausages from the sauce, being careful not to tear the delicate outer skin. Gently shake or scrape the excess sauce back into the sauce pot. Pat the sausages dry with a paper towel.
- Place the sausages in the skillet and cook 3½ minutes on each side.NOTE: The sausages will brown quickly because of the sugars from the tomato sauce, but if the sausages start smoking, lower the heat.
- Remove sausages from pan and let rest on a cutting board for 5 minutes.
- Slice into rounds and add back into the spaghetti sauce.
To Serve
- Cook pasta according to package directions. Drain and return to pot. Toss pasta with a few tablespoons of spaghetti sauce, just enough to lightly coat the noodles so they don’t stick together.
- Heat (or reheat) sauce over medium-low heat. Add desired number of meatballs. Poach, pan-fry, and slice sausage according to directions above. Add sausage back to sauce.
- Serve sauce over noodles in bowls, OR place the pasta and sauce (with meat or with meat on the side) in separate serving bowls on the table and let diners serve themselves.
- Garnish with additional grated parmesan cheese and thinly sliced fresh basil if desired.


Jen R says
I can’t recommend these enough! In my family, we have meatballs on Christmas Eve. Pasta is optional, bread is not. My nieces are very picky about meat but not these meatballs! My only suggestion is to make sure no dogs are lurking who may steal some raw when your back is turned 4 seconds. Thanks for making future Christmas Eve dinners a success!
Donna says
Made this over the weekend and it was delicious! Leftovers were even better!
Rebecca Eisenberg says
Yesssss so glad you liked it!! And I’m glad you had leftovers too — they’re so good!
Antonette says
YAWL. If you are trying to impress someone, MAKE THIS RECIPE. So incredibly delicious. I skipped the sausages, because I forgot to get them and it was still phenomenal. This is going in my recipe book as a staple.
Rebecca Eisenberg says
I'm so glad you liked it (and my MIL and husband will be thrilled to hear this as well)! Keep on cooking!
David says
Love this recipe! I wanted meatballs this summer but didn't want more heat in our kitchen, so I made the meatballs and placed them on the gas grill to cook. Used tongs to turn them over a few times, and they came out great!