This post may contain affiliate links. Please read our disclosure policy.

A homemade take on the classic, One-Pot Spaghetti-O’s with Mini Meatballs is a total family crowd-pleaser. It’s great with a simple side salad on any weeknight!

a large braiser with meatballs and spaghetti-o's with fresh herbs and a dishcloth


 

I am obsessed with this dinner — and so are my kids. With that iconic O-shaped pasta, mini meatballs, and tons of fresh herbs, it’s a delicious, homemade version of something so nostalgic. And while it’s not quite as easy as heating up a can of soup for dinner, this dish does come together in just one pot in under an hour, which is pretty hard to beat (especially on busy weeknights).

Not only will you zhush up a jar of marinara sauce, but you’ll also make the meatballs from scratch. I prefer to use 90% lean, 10% ground beef, which has enough fat to deliver flavor and juiciness without too much excess grease. To the meatball mixture, I like to add freshly minced garlic, grated Parmesan cheese, breadcrumbs, and basil to for more flavor and texture. Think of this as a blueprint for other beef meatballs, which you can serve so many ways throughout the week.

To make this dish even easier, you can “cheat” and use store-bought mini frozen meatballs instead of making your own here! However, if you have the time to make them yourself, I promise it’ll be worth the effort.

Ingredients:

  • Ground Beef 
  • Large Egg 
  • Kosher Salt 
  • Freshly Ground Black Pepper  
  • Garlic Cloves 
  • Basil Leaves  
  • Milk  
  • Grated Parmesan Cheese 
  • Panko Breadcrumbs 
  • Extra-Virgin Olive Oil  
  • Yellow Onion  
  • Marinara Sauce  
  • Low-Sodium Beef Broth 
  • Parsley Leaves  
  • Coconut Sugar  
  • Small Pasta (such as anellini, ditalini, stellini, or orzo) 
  • Crushed Red Pepper Flakes (optional)

step-by step:

step one: make the mini meatballs

In a large bowl, combine the ground beef, egg, salt, pepper, garlic, basil, milk, Parmesan, and breadcrumbs. Use your hands to mix until combined. Roll into 1/2-inch round meatballs.

step two: cook the mini meatballs

Heat the olive oil in a large, deep skillet or braiser over medium-high heat. Working in batches as necessary, add the meatballs and cook until browned all over, about 2 minutes per side. They don’t have to be completely cooked through, but they should be nicely browned. Transfer to a clean plate and set aside.

a white cast-iron braiser with cooked mini meatballs

step three: make the sauce

Reduce the heat to medium-low and add more oil to the skillet, if needed.

Add the onion and garlic. Cook, stirring, until tender, about 3 minutes. Pour in the marinara and broth. Stir to combine. Add the basil, parsley, coconut sugar, Parmesan and salt. Stir until well combined. Bring to a gentle simmer over medium to medium-low heat, 3 to 4 minutes.

step four: cook the pasta

Pour in the pasta and cook, stirring frequently, until the pasta is very al dente and it has absorbed a lot of the sauce, 8 to 10 minutes. The pasta easily sticks to the bottom if you leave it simmering without stirring, so don’t leave it unattended and lower heat as needed.

a cast-iron braiser with marinara sauce, fresh herbs, grated cheese, and pasta

step five: add the meatballs

Add the meatballs and any of their juices back into the pot and stir to combine. Continue to cook, stirring frequently, until the meatballs are fully cooked through and the pasta is tender, about 6 minutes.

Remove from heat, cover, and let rest for about 2 minutes before serving. This just helps the pasta soak up the sauce a little more and settle!

a cast-iron braiser with cooked pasta, mini meatballs, and marinara sauce

step six: garnish and serve

Remove from heat, garnish with more basil and crushed red pepper flakes, if using, and serve!

a close-up photo of spaghetti-os, meatballs, sauce, and herbs

Recipe fAQs:

can I make this in advance and reheat?

Yes! To reheat, add the pasta and meatballs to a skillet over medium-low heat with a splash or two of broth to help rehydrate the pasta and bring it back to life!

Can i swap the beef broth with something else?

Yes! You can use chicken broth instead.

These One-Pot Spaghetti-O’s with Mini Meatballs is such a hit at my table. I hope your family loves it as much as mine does!

For more one-pot recipes, try these:

One-Pan Italian Sausage and Orzo

One-Pan Salmon with Herb Butter Couscous

One-Pot Taco Pasta

One-Pot Hamburger Helper

a close-up of spaghetti-o's with mini meatballs and herbs
4.70 from 10 votes

One-Pot Spaghetti-O’s with Mini Meatballs

Prep: 20 minutes
Cook: 45 minutes
Servings: 6

Ingredients 

For the Mini Meatballs:

  • 1 pound ground beef (90/10)
  • 1 large egg, beaten
  • 1 teaspoon kosher salt
  • 1/2 teaspoon freshly ground black pepper
  • 2 garlic cloves, minced
  • 1 tablespoon finely chopped fresh basil leaves, plus more for garnish
  • 1 tablespoon milk
  • 1/4 cup grated Parmesan cheese
  • 1/4 cup panko breadcrumbs
  • 2 tablespoons extra virgin olive oil, plus more as needed

For the Sauce:

  • 1/2 cup finely diced yellow onion
  • 4 garlic cloves, minced
  • 1 (25-ounce) jar marinara
  • 2 cups low-sodium beef broth
  • 1/4 cup freshly torn basil leaves
  • 2 tablespoons roughly chopped parsley leaves
  • 1 tablespoon coconut sugar
  • 1/2 cup grated Parmesan cheese
  • 1 teaspoon kosher salt
  • 2 cups small pasta (such as anellini, ditalini, stellini, or orzo)
  • Crushed red pepper flakes, optional, for serving

Instructions 

Make the Mini Meatballs:

  • In a large bowl, combine the ground beef, egg, salt, black pepper, garlic, basil, milk, Parmesan, and breadcrumbs. Use your hands to mix until combined. Roll into 1/2-inch round meatballs.
  • Heat the olive oil in a large, deep skillet or braiser over medium-high heat. Working in batches as necessary, add the meatballs and cook until browned all over, about 2 minutes per side. They don’t have to be completely cooked through, but they should be nicely browned. Transfer to a clean plate and set aside.

Make the Pasta:

  • Reduce the heat to medium-low and add more oil to the skillet, if needed.
  • Add the onion and garlic. Cook, stirring, until tender, about 3 minutes. Pour in the marinara and broth. Stir to combine. Add the basil, parsley, coconut sugar, Parmesan, and salt. Stir until well combined. Bring to a gentle simmer over medium to medium-low heat, 3 to 4 minutes.
  • Pour in the pasta and cook, stirring frequently, until the pasta is very al dente and has absorbed a lot of the sauce, 8 to 10 minutes. The pasta easily sticks to the bottom if you leave it simmering without stirring, so don’t leave it unattended and lower heat as needed.
  • Add the meatballs and any of their juices back into the pot. Stir to combine. Continue to cook, stirring frequently, until the meatballs are fully cooked through and the pasta is tender, about 6 minutes.
  • Remove from heat, cover, and let rest for about 2 minutes before serving. This just helps the pasta soak up the sauce a little more and settle!
  • Remove from heat, garnish with more basil and crushed red pepper flakes, if using, and serve!

Nutrition

Calories: 516kcal, Carbohydrates: 45g, Protein: 26g, Fat: 25g, Saturated Fat: 9g, Polyunsaturated Fat: 2g, Monounsaturated Fat: 11g, Trans Fat: 1g, Cholesterol: 92mg, Sodium: 1231mg, Potassium: 563mg, Fiber: 2g, Sugar: 4g, Vitamin A: 337IU, Vitamin C: 4mg, Calcium: 160mg, Iron: 3mg

Nutrition information is automatically calculated, so should only be used as an approximation.

Additional Info

Servings: 6
Calories: 516

Photography and styling by Eat Love Eats.



Welcome! I’m Alex.

I’m a food lover sharing healthy, simple, delicious, recipes from my kitchen to yours. Here you’ll find lots of Whole30, lots of healthy, and a little indulgence here and there because…it’s all about balance y’all!


Similar recipes

4.70 from 10 votes

Leave a comment

Your email address will not be published. Required fields are marked *

Recipe Rating




32 Comments

  1. 4 stars
    The pasta ended up being barely cooked at all so I had to make almost double the beef broth to soak the pasta to soften them up and cook for twice as long. Other than that, a fun recipe to make with my 5yo!

  2. Hi Alex!

    Did this replace your old Spaghetti-O recipe, which used tomato soup? I went looking for it to make for dinner tonight, and the link I have is no longer active. It is a family favorite in my house, and I’m hoping I can remember how to make it off the top of my head! I’m sure this is delicious too, but ya girl bought tomato soup, so I’ll be winging that recipe instead! Just curious!

    Love all your recipes!

      1. This definitely used to use tomato soup. It was a sponsored recipe because you specifically mentioned the brand. If that contract expired, that’s fine! But please update with the old recipe and just don’t mention the brand name 🙂

  3. 5 stars
    Such delicious flavors! Warm and comforting! Like a few other comments, my pasta also took a bit longer to cook. I let it simmer in step 3 for about an additional 6 minutes. In step 4, I also added another 5 minutes or so. I also did not add salt to the sauce, I used Rao’s. Overall, this recipe takes a bit of time, but definitely worth it!

    1. I would add them at the beginning (just as how I brown my own homemade meatballs) and get them to thaw out/lightly brown. Then continue with the recipe as written! 🙂 I love Force of Nature brand frozen meatballs.

  4. 5 stars
    5 stars because my family LOVED, but the timing in the recipe was really off for me. Pasta took a lot longer – 20-25 minutes or longer to fully cook. And I had to add some extra broth/water a few times too. I’ll blame the brand of pasta though bec Alex never fails me!!! 🙂