Everything you love about a hearty and classic meatball sub, is broken down and served as a soup.
jump toRECIPE
This post may contain affiliate links, which means that I make a small commission off items you purchase at no additional cost to you. Please read my policy page.
This meatball sub soup takes everything you love about a classic meatball sub—savory meatballs, rich tomato broth, melty cheese, and herbs—and turns it into an easy-to-make, one-pot soup that’s perfect for weeknights or casual entertaining. It’s hearty without being heavy, easy to customize, and comes together with simple pantry ingredients. If you’re craving more comforting soup recipes, try my creamy black bean soup or Moroccan vegetable stew next.
Why You’ll Love This Recipe
Kid-friendly – All the familiar flavors of a meatball sub make this an easy win for picky eaters.
One-pot comfort – Everything simmers together in one pot for minimal cleanup and maximum flavor.
Perfect for leftovers – The flavors get even better as the soup sits.
Key Ingredients in This Recipe
Beef – The meatballs are kept simple, using only ground beef rather than using of a combination of beef and pork as I do in my other meatball-forward recipes. I bake the meatballs rather than poaching them in the simmering soup so they have a browned exterior.
Yellow Onion – I use yellow onion in this recipe for its mellow flavor when cooked. These onions with a brownish yellow papery skin are a great all-purpose cooking onion.
Mozzarella – The mini meatballs are stuffed with bits of mozzarella and baked before being added to the soup. I use part-skim, also called low-moisture mozzarella in this recipe. Fresh mozzarella has a higher water content and it becomes runny rather than gooey as it melts and waters down the meatballs.
Parmesan – Parmesan-Reggiano is definitely one of my favorite cheeses. It’s a hard cow’s milk cheese aged for different lengths of time. I’d recommend buying a roughly cut piece of wrapped cheese from the grocery store – it’s typically a higher quality cheese.
Bread – I use leftover Italian bread to make croutons for this recipe. Croutons are a great way to use up any stale bread on its way out. The Italian bread can be substituted with another crusty bread like a baguette in this meatball soup recipe.
A full ingredient list with exact amounts can be found in the recipe card below.
Pro Tip
The elements of this soup like the tomato base, the meatballs and croutons can each be made ahead of time. Simply reheat and assemble just before serving to cut down on prep time.
Swaps and Substitutions
Meatballs: Use turkey or chicken meatballs instead of beef, or swap in plant-based meatballs to keep it vegetarian.
Pasta: Small pasta shapes like ditalini or shells work best, but rice or gluten-free pasta can be used if needed.
Broth: Chicken broth adds richness, but vegetable broth works just as well.
Cheese: Provolone is classic, but mozzarella or fontina melt beautifully on top.
How to Make Meatball Sub Soup (Step-by-Step)
Sauté onion and garlic. Heat a large saucepan over medium heat, add the olive oil and heat through. Next, add the onion to the pot and sauté until soft and translucent, about 6 minutes. Then, add the garlic and sauté an additional 30 seconds.
Add the tomatoes and broth. Stir in the tomato paste then add the tomatoes and their juices to the pot followed by the basil, and vegetable broth.
Simmer the soup. Bring the mixture to a boil, then reduce the heat to medium-low and simmer for 45 minutes. Season with salt and pepper.
Mix the breadcrumbs. Preheat oven to 375ºF. In a small mixing bowl stir together the breadcrumbs and milk and let set for 10 minutes.
Mix the meatballs. Add the beef, onion, garlic, egg, parsley, salt and pepper to the mixing bowl. Add the soaked breadcrumbs to the mixture and use your hands to blend.
Shape meatballs. Scoop the mixture in rounded tablespoons and roll the mixture into balls. Push a piece of the mozzarella into the center of the mixture, closing the beef around it.
Bake the meatballs. Place on a parchment-paper-lined baking sheet. Bake until golden brown and cooked through, about 15 minutes.
Heat oven. Preheat oven to 325ºF.
Toss bread in oil. Toss the cubes of bread in the olive oil until evenly coated. Spread in an even single layer on an aluminum foil-lined baking sheet. Season with salt and pepper.
Bake the croutons. Bake for 20 minutes then sprinkle the Parmesan cheese over the top. Continue to bake until the croutons are crisp and the cheese has melted, about an additional 10 minutes.
Assemble and serve. Add the cooked mozzarella meatballs to the soup and ladle into soup bowls. Top with the Parmesan croutons, a drizzle of olive oil and fresh basil.
How to Serve Meatball Sub Soup
With bread: Serve with crusty bread or garlic bread for dunking.
Sub-style: Top each bowl with extra cheese and broil briefly until melted and bubbly.
For a crowd: Set out toppings like fresh basil, red pepper flakes, and grated parmesan so everyone can customize.
How to Store Meatball Sub Soup
Refrigerator: Store meatball sub soup in an airtight container for up to 4 days.
Freezer: Freeze without pasta for best texture, up to 3 months.
Reheating: Reheat gently on the stovetop or in the microwave, adding a splash of broth if needed.
FAQ – Frequently Asked Questions
Can I freeze meatball sub soup?
Yes, but for best results freeze the soup without the pasta, then add freshly cooked pasta when reheating.
What kind of meatballs work best in meatball sub soup?
Beef meatballs are classic, but turkey, chicken, or plant-based meatballs all work well.
How do I keep pasta from getting mushy in meatball sub soup?
Cook the pasta separately and add it just before serving, especially if you plan on storing leftovers.
Can I make meatball sub soup vegetarian?
Absolutely—use vegetable broth and your favorite meatless meatballs for an easy vegetarian version.
Other Recipes to Try
If this meatball sub soup became an overnight favorite in your house, check out these other Italian dishes:
6ounceslow-moisturepart-skim mozzarella cheese, cut into ¼” cubes
For the Parmesan croutons:
1loaf Italian bread,cut into 1½” cubes
1/3cupextra-virgin olive oil
Kosher salt,as needed
Freshly ground black pepper,as needed
¼cupfreshly grated Parmesan
For serving:
2tablespoonsextra-virgin olive oil
Fresh basilfor garnish
Instructions:
For the chunky tomato basil soup:
Heat a large saucepan over medium heat, add the olive oil and heat through. Add the onion to the pot and sauté until soft and translucent, about 6 minutes. Add the garlic and sauté an additional 30 seconds.
Stir in the tomato paste then add the tomatoes and their juices to the pot followed by the basil, and vegetable broth. Bring the mixture to a boil, then reduce the heat to medium-low and simmer for 45 minutes. Season with salt and pepper.
Mini mozzarella meatballs:
Preheat oven to 375ºF (190ºC). In a small mixing bowl stir together the breadcrumbs and milk and let set for 10 minutes.
Add the beef, onion, garlic, egg, parsley, salt and pepper to the mixing bowl. Add the soaked breadcrumbs to the mixture and use your hands to blend.
Scoop the mixture in rounded tablespoons and roll the mixture into balls. Push a piece of the mozzarella into the center of the mixture, closing the beef around it. Place on a parchment-paper-lined baking sheet. Bake until golden brown and cooked through, about 15 minutes.
For the garlic croutons:
Preheat oven to 325ºF (170ºC).
Toss the cubes of bread in the olive oil until evenly coated. Spread in an even single layer on an aluminum foil-lined baking sheet. Season with salt and pepper.
Bake for 20 minutes then sprinkle the Parmesan cheese over the top. Continue to bake until the croutons are crisp and the cheese has melted, about an additional 10 minutes.
For serving:
Add the cooked mozzarella meatballs to the soup and ladle into soup bowls. Top with the Parmesan croutons, a drizzle of olive oil and fresh basil.
Notes:
The elements of this soup like the tomato base, the meatballs and croutons can each be made ahead of time. Simply reheat and assemble just before serving to cut down on prep time.
Rate + Review
WHAT DID YOU THINK OF THIS RECIPE?