Italian Meatball Soup - Extra juicy, soft & tasty meatballs in a tomato spaghetti soup, all made in one pot!
Print Recipe
4.93 from 14 votes

Italian Meatball Soup

My Classic Italian Meatballs are one of the most popular recipes on my site. They're extra soft and juicy, and extra tasty thanks to just a couple of little but key extra steps - using bread soaked in grated onion, and using a mix of ground beef and pork (mince). And now by popular demand, here is my Meatball Soup made using my Classic Italian Meatballs! This soup is really thick and hearty, and the tomato broth is extra tasty thanks to the meatballs!
Prep Time25 mins
Cook Time30 mins
Total Time55 mins
Course: Dinner, Soup
Cuisine: Italian
Servings: 5
Calories: 565kcal
Author: Nagi | RecipeTin Eats



  • 1 lightly packed cup of sliced white sandwich bread , torn into small pieces, crusts removed (Note 1)
  • 1/2 cup grated onion (brown, white or yellow)
  • 14 oz / 400 g ground beef (beef mince)
  • 3 oz / 100g ground pork (mince) or more ground beef (Note 2)
  • 1 egg
  • 1/4 cup fresh parsley , finely chopped (Note 3)
  • 2 garlic cloves , minced
  • 1/4 cup Parmigiano-Reggiano (or parmesan), freshly grated
  • 3/4 tsp salt
  • 1/4 tsp black pepper


  • 1 1/2 tbsp olive oil
  • 1 cup onion , finely chopped (white, brown or yellow)
  • 2 garlic cloves , minced
  • 2 cups chicken broth / stock (or water)
  • 1 cup water
  • 24 oz / 700g passata (pureed tomato) (Note 4)
  • 28 oz / 800g canned tomato
  • 1 tbsp Italian mixed herbs (Note 5)
  • 2 tsp garlic powder (or onion powder)
  • 1 - 2 tsp red pepper / chilli flakes (optional)
  • 8 oz / 250g spaghetti (dried, not fresh or cooked)

Garnish (optional)

  • 1/4 cup fresh basil leaves , torn
  • 1/2 - 3/4 cup shredded mozzarella cheese
  • Parmigiano-Reggiano (or parmesan), freshly grated


  • Place the bread and onion in a large bowl. Mix to combine so the onion juice soaks the bread.
  • Add all the remaining Meatball ingredients. Use you hands to mix well.
  • Roll a slightly heaped tablespoon of mixture into a ball. Repeat with remaining mixture. Should make around 24. (Note 6) Refrigerate meatballs for 30 minutes (Note 7)
  • Heat 1 1/2 tbsp olive oil in a large pot over medium high heat. Add the meatballs in a single layer and brown all over (still raw inside) - I do this in 2 batches. Remove meatballs onto a plate and set aside.
  • If the pot is looking dry, add a touch more olive oil. Add onion and garlic and cook for 2 minutes.
  • Add chicken broth, bring to simmer and scrape the bottom of the pot to mix the brown bits into the liquid.
  • Add remaining Soup ingredients except spaghetti. Bring to simmer, turn heat down to medium and cook for 5 minutes, stirring occasionally, scraping the bottom of the pot.
  • Take the lid off and add spaghetti. Use tongs to push it all under the liquid as it starts to soften. Once the spaghetti is submerged, add the meatballs. Cook for around 12 minutes, or until spaghetti is just cooked but still firm (al dente). Remove from stove.
  • If using cheese, sprinkle on the surface of the soup after you take it off the stove, put the lid back on and let the heat melt the cheese (~2 minutes).
  • Ladle soup, spaghetti and meatballs into bowls. Garnish with basil leaves and serve with Parmigiano-Reggiano, if using.


1. Plain white sandwich bread is best for this, but you can substitute with other breads. Tear them into small pieces with your hands, and do not include the crust. You can use slightly stale bread. If you prefer, you can substitute with 1/2 cup breadcrumbs - preferably panko. But the meatballs won't be as soft!
2. Pork is slightly fattier than beef so it helps make these extra juicy. I only use 3 1/2 oz / 100 g because pork has less flavour than beef and I don't want to dilute the flavour. This isn't hugely critical though and you should feel free to just use 1 lb / 500 g beef mince which is what I do on ordinary nights. :)
3. You can substitute with 1 1/2 tbsp dried parsley, or a mix of equal amounts of dried oregano, thyme, basil and parsley. You could also use an Italian herb mix if you wanted to.
4. Tomato passata is just pureed tinned tomatoes and it's great because it's smoother and thicker than crushed tomatoes. Nowadays it is readily available in supermarkets, usually alongside pasta sauces. If you can't find it, puree canned tomatoes or use crushed canned tomatoes.
5. You can substitute with a mix of equal amounts of dried oregano, thyme, basil and parsley.
6. Here's how I roll meatballs - measure out heaped tablepoons of mixture and pop them onto a plate with the flick of your wrist. Repeat with all the mixture. THEN wet your hands slightly and roll them one by one. I find this faster than measuring and rolling each one separately. :) Don't over roll them! They will become tough!
7. Meatballs firm when refrigerated and it helps ensure they hold together when cooked. This step isn't required in my Italian Meatballsrecipe which are cooked in a non stick pan. But I don't have a non stick pot!
8. If you have leftovers, I suggest removing the spaghetti and keeping it separate because otherwise it will become very bloated.
9. Nutrition per serving, assuming 5 servings.
Italian Meatball Soup Nutrition


Serving: 726g | Calories: 565kcal | Carbohydrates: 53.9g | Protein: 47.9g | Fat: 16.6g | Saturated Fat: 5.4g | Cholesterol: 166mg | Sodium: 942mg | Potassium: 1072mg | Fiber: 4.7g | Sugar: 7.2g | Vitamin A: 2000IU | Vitamin C: 41.3mg | Calcium: 230mg | Iron: 18.2mg