Meatball Soup Recipe
If you’re looking for a comforting bowl that’s packed with flavor and warms you from the inside out, this Meatball Soup is exactly what you need. Combining tender, savory meatballs with a rich tomato broth, the comforting bite of rotini pasta, and a touch of creamy spinach, this soup hits every note of a perfect homemade meal. Whether you’re cooking for busy weeknights or craving a cozy lunch, this Meatball Soup brings together simple ingredients that create magical harmony in every spoonful.

Ingredients You’ll Need
The magic of this Meatball Soup lies in its straightforward, wholesome ingredients that come together effortlessly to create layers of flavor and a delightful texture. Each component plays a vital role, from the caramelized onions that add sweetness to the hearty meatballs and tender pasta that soak up all the savory broth.
- Homemade or frozen meatballs: The heart of the soup, bringing juicy and meaty satisfaction in every bite.
- Olive oil: Perfect for sautéing onions and garlic to build a flavorful base.
- Yellow onion: Adds sweetness and depth when caramelized slowly.
- Garlic cloves: Intensifies the savory aroma and taste.
- Italian seasoning: A fragrant blend of herbs that gives the soup its classic Italian flair.
- Tomato paste: Boosts richness and lends a concentrated tomato flavor.
- Chicken broth: The soul of the soup providing a savory, well-rounded liquid foundation.
- Crushed tomatoes: Adds body and fresh tomato brightness.
- Uncooked rotini pasta: Its spiral shape holds onto the soup’s flavorful broth beautifully.
- Baby spinach: Adds vibrant color and a mild, fresh bite.
- Heavy cream: Creates a velvety finish that rounds out the acidity.
- Kosher salt and fresh cracked pepper: Essential seasonings to brighten and balance the dish.
- Shaved Parmesan and freshly chopped parsley: Garnishes that add a lovely salty tang and fresh herbal notes.
How to Make Meatball Soup
Step 1: Prepare Your Meatballs
If you want a truly homemade touch, making your own Italian meatballs fills this soup with even more love and flavor, but store-bought frozen meatballs work just fine in a pinch. Whichever you choose, getting the meatballs ready is the first step to building the perfect Meatball Soup foundation.
Step 2: Sauté the Aromatics
Start by heating olive oil in your pot over medium heat. Add diced yellow onion accompanied by generous pinches of salt and pepper. Let the onion cook low and slow for 6 to 8 minutes until caramelized and brown at the edges—the sweet depth this creates is the backbone for your soup’s flavor.
Step 3: Add Garlic, Seasonings, and Tomato Paste
To the golden onions, add minced garlic, Italian seasoning, tomato paste, and a bit more salt and pepper. Stir frequently for about a minute until fragrant and glossy. The tomato paste deepens the tomato flavor and the garlic and herbs fill the kitchen with irresistible aromas.
Step 4: Deglaze the Pot
Pour in a few splashes of chicken broth, using your spoon to scrape up every caramelized bit stuck to the pot’s bottom. These bits are gold packed with flavor and will enrich your soup wonderfully.
Step 5: Combine the Soup Ingredients
Pour in the remaining chicken broth and crushed tomatoes along with uncooked rotini pasta. Nestle in your prepared meatballs, add another pinch or two of salt and pepper, and stir everything together. This is where your soup starts to come alive.
Step 6: Simmer Until Pasta is Perfect
Bring the pot to a gentle simmer over medium-high heat, then reduce the heat to low and cover. Let it cook gently for 12 to 15 minutes until the pasta is perfectly al dente—tender but with a slight bite—absorbing the beautiful tomato-meatball broth.
Step 7: Finish with Spinach and Cream
Stir in fresh baby spinach and heavy cream until the spinach wilts and the soup has a creamy, luscious texture. This final touch balances flavors, adding a silky richness and fresh brightness.
Step 8: Adjust Seasoning and Garnish
Give your Meatball Soup a taste, then adjust with salt and pepper as needed. Ladle it into bowls and top with shaved Parmesan and freshly chopped parsley for a festive and flavorful finish.
How to Serve Meatball Soup

Garnishes
Freshly shaved Parmesan is a must for that salty, nutty pop that beautifully complements the tomato and meatball flavors. Parsley adds a fresh herbal lift and a burst of color that makes each bowl inviting and appetizing.
Side Dishes
Meatball Soup pairs wonderfully with rustic crusty bread or garlic breadsticks for dipping. A simple green salad with a zesty vinaigrette can also cut through the richness and round out the meal perfectly.
Creative Ways to Present
Serve the soup in wide, shallow bowls to showcase the colorful ingredients, or present it in mini soup crocks for an elegant dinner party touch. You can even add a sprinkle of red pepper flakes for a little heat, or a dollop of pesto for a fresh twist.
Make Ahead and Storage
Storing Leftovers
Once cooled, transfer your Meatball Soup to airtight containers and refrigerate for up to 3 days. The flavors deepen overnight, making leftovers often taste even better.
Freezing
This soup freezes beautifully. Portion it into freezer-safe containers and freeze for up to 3 months. Just keep in mind that the pasta may become softer after freezing, so you might want to slightly undercook the pasta if you plan to freeze leftovers.
Reheating
Reheat gently on the stove over medium-low heat, stirring occasionally. Add a splash of broth or water if the soup thickens too much. Avoid microwaving for long periods to preserve the texture of the meatballs and pasta.
FAQs
Can I use other types of pasta in Meatball Soup?
Absolutely! While rotini is perfect for holding onto the broth, small pasta shapes like ditalini, orzo, or even mini shells work wonderfully and give you a slightly different texture.
Can I make Meatball Soup vegetarian?
To keep this soup vegetarian, try swapping meatballs for plant-based meatballs or hearty vegetables like mushrooms and zucchini for a satisfying twist.
How spicy is this Meatball Soup?
This recipe is mild and cozy by default, but you can easily add red pepper flakes or a dash of hot sauce if you like a bit of heat.
What kind of meat works best for homemade meatballs?
Ground beef, pork, or a mixture of both gives juicy and flavorful meatballs perfect for this soup. You can also incorporate ground turkey for a leaner option.
Can I prepare parts of Meatball Soup ahead of time?
Yes! Meatballs can be made a day or two ahead, and the broth can be prepared in advance. Then, when you’re ready, just bring everything together and cook the pasta in the pot.
Final Thoughts
This Meatball Soup is one of those dishes that feels like a comforting hug on a chilly day, yet light enough to enjoy any time you want a satisfying, flavorful meal. Its simple ingredients create an inviting and hearty bowl that’s sure to become a family favorite. So go ahead, gather your ingredients, and dive into making this soul-soothing soup—your cozy night in just got a whole lot better!
PrintMeatball Soup Recipe
A hearty and flavorful Meatball Soup featuring tender homemade or frozen meatballs simmered with rotini pasta, spinach, and a creamy tomato broth, perfect for a cozy meal.
- Prep Time: 20 minutes
- Cook Time: 25 minutes
- Total Time: 45 minutes
- Yield: 6 servings 1x
- Category: Soup
- Method: Simmering
- Cuisine: Italian-American
- Diet: Halal
Ingredients
Meatballs
- 1 recipe homemade meatballs or 18–20 oz. frozen meatballs, thawed
Sauté Base
- 1 tablespoon olive oil
- 1 yellow onion, diced
- 6 cloves garlic, minced
- 1 tablespoon Italian seasoning
- 2 tablespoons tomato paste
Soup
- 32 oz. chicken broth
- 28 oz. can crushed tomatoes
- 8 oz. (about 2 1/2 cups) uncooked rotini pasta
- 2 cups baby spinach
- 1/2 cup heavy cream
- Kosher salt, to taste
- Fresh cracked pepper, to taste
For Garnish
- Shaved Parmesan cheese
- Freshly chopped parsley
Instructions
- Prepare the Meatballs: Make the homemade Italian meatballs, air fryer meatballs, or use thawed frozen meatballs according to package instructions or preferred method.
- Sauté Onions: Heat olive oil in a large pot over medium heat. Add diced yellow onion with salt and pepper, cooking for 6-8 minutes until onions brown and caramelize slightly.
- Add Garlic and Seasonings: Stir in minced garlic, Italian seasoning, tomato paste, and additional salt and pepper. Cook for 1 minute, stirring frequently.
- Deglaze the Pot: Add a few splashes of chicken broth to the pot and scrape the bottom to loosen browned bits for enhanced flavor.
- Add Remaining Ingredients: Pour in the remaining chicken broth, crushed tomatoes, uncooked rotini pasta, and cooked meatballs. Season with salt and pepper.
- Simmer the Soup: Bring the mixture to a simmer over medium-high heat. Reduce heat to low, cover, and cook for 12-15 minutes until the pasta is al dente.
- Incorporate Spinach and Cream: Stir in baby spinach and heavy cream. Cook until the spinach wilts and the soup is heated through.
- Season and Garnish: Adjust salt and pepper to taste. Serve garnished with shaved Parmesan and freshly chopped parsley.
- Enjoy and Review: Serve hot and consider leaving a 5-star rating and review if you enjoyed the recipe!
Notes
- You can use frozen meatballs for convenience; just ensure they are properly thawed or cooked beforehand.
- Adjust seasoning gradually and taste as you go, especially salt and pepper.
- For a lighter version, substitute heavy cream with half-and-half or omit it altogether.
- Leftovers store well refrigerated for 3-4 days and can be reheated gently on the stove or microwave.
- To make the recipe gluten-free, use gluten-free pasta and meatballs.
Nutrition
- Serving Size: 1 bowl (approx. 1 1/2 cups)
- Calories: 350
- Sugar: 6g
- Sodium: 800mg
- Fat: 15g
- Saturated Fat: 6g
- Unsaturated Fat: 7g
- Trans Fat: 0g
- Carbohydrates: 30g
- Fiber: 4g
- Protein: 20g
- Cholesterol: 50mg
Keywords: meatball soup, easy meatball recipe, Italian soup, creamy tomato soup, rotini pasta soup, comfort food

