Go Back
+ servings
Close-up of tender beef meatballs and vegetables in savory meatball soup garnished with parsley
Print

Beef Meatball Soup

This cozy beef meatball soup is packed with protein, fiber-rich veggies, and wholesome flavor. Perfect for a quick, family-friendly weeknight dinner or meal prep, it’s an easy, comforting soup that’s naturally gluten- and dairy-free.
Prep Time 25 minutes
Cook Time 45 minutes
Total Time 1 hour 10 minutes
Servings 6 - 8
Author Rachael DeVaux

Equipment

  • Dutch oven

Ingredients

For the meatballs:

  • 1 lb. 85/15 grass-fed ground beef
  • ½ cup gluten-free panko breadcrumbs
  • 1 large egg
  • 2 cloves garlic minced
  • 2 tablespoons finely chopped fresh parsley plus more for serving
  • 1 teaspoon kosher salt
  • 1 teaspoon dried thyme
  • ½ teaspoon freshly ground black pepper
  • 2 tablespoons olive oil divided

For the soup:

  • 1 cup diced yellow onion (about 1 medium yellow onion)
  • 1 cup peeled and diced carrot (about 1 large carrot)
  • 1 cup diced celery (about 2 large stalks)
  • 1 teaspoon kosher salt
  • 1 teaspoon dried thyme
  • 1 tablespoon cassava flour
  • 2 tablespoons tomato paste
  • 2 tablespoons balsamic vinegar
  • 2 tablespoons coconut aminos
  • 2 cups peeled and diced yellow potatoes (about 1 large potato)
  • 4 cups beef bone broth (I like Kettle & Fire)
  • 6 sprigs fresh thyme
  • ½ cup frozen peas

Instructions

For the Meatballs:

  • In a medium bowl, add the ground beef, panko, egg, garlic, parsley, salt, dried thyme, and pepper. Using your hands, mix together until combined.
  • Scoop the meatballs into 1 tablespoon-sized balls. Lightly wet your hands, and roll each ball into a smooth meatball. You will have 28-30 meatballs.
  • In a large Dutch oven, heat the olive oil over medium heat.
  • Once hot, add half of the meatballs. Cook, undisturbed, for 2 minutes before stirring, and continuing to brown the meatballs on all sides, about 6 minutes total. They do not have to be fully cooked through.
  • Transfer to a plate and repeat with the second batch, cooking until all the meatballs are deeply browned and crisped in places.

For the Soup:

  • Add the remaining 1 tablespoon of olive oil to the pan. Add the onions, carrot, and celery. Season with salt, pepper, and dried thyme. Cook, stirring occasionally, until the onions are translucent, about 6 minutes.
  • Add the garlic, stir, and cook for an additional 1 minute.
  • Add the cassava flour and stir to combine, coating all of the veggies. Cook, undisturbed for 1 minute, allowing the flour to toast slightly.
  • Add the tomato paste and begin to stir, cooking until the tomato paste begins to meld into the veggie mixture.
  • Pour in the balsamic and the coconut aminos to deglaze the pan, scraping the bottom of the pan to release all of the browned bits. Add the potatoes and the meatballs. Stir to combine.
  • Pour the beef bone broth into the pot and add the fresh thyme sprigs. Increase the heat to medium-high and bring to a rapid simmer. Reduce the heat to low, cover, and cook for about 20 minutes, stirring occasionally, until the potatoes are fork-tender.
  • Remove the thyme sprigs and add the frozen peas. Cook, uncovered, for an additional 5 minutes, or until the peas are warmed through. Taste for seasoning and adjust if needed.
  • Serve in shallow bowls and garnish with extra parsley.

To Store:

  • To freeze leftovers, allow the soup to cool entirely before transferring into airtight containers. Make sure you leave about 1 inch of clearance at the top of the container before adding the lid. This will last in the freezer for up to 2 months.
  • To reheat, for best results, I like to thaw the soup in the fridge overnight and then reheat it on the stove.