Cozy Swedish Meatball Soup is a warm, creamy broth-based soup with tender spiced meatballs, root vegetables, and a touch of cream for comfort and satisfaction. Cozy Swedish Meatball Soup combines classic Swedish flavors like allspice and nutmeg with simple pantry ingredients to make a weeknight-friendly comfort meal.
This Swedish Meatball Soup recipe walks you through forming the meatballs, building a savory broth, and finishing with a velvety swirl of cream so you get a bowl of soul-soothing soup fast. Cozy Swedish Meatball Soup is easy to scale and freezes well for busy evenings, and if you enjoy rich soups you might also like this Crock Pot Crack Potato Soup recipe. Cozy Swedish Meatball Soup shines when made with a mix of beef and pork and is a perfect one-pot dinner everyone will love.
Table of Contents
Why It Works
This Cozy Swedish Meatball Soup succeeds because it balances traditional Swedish flavors with accessible weeknight cooking techniques. The magic lies in the details – each step builds upon the last to create layers of flavor that taste complex but come together simply.
- The meatball mix stays tender because of the soft breadcrumb binder soaked in milk and the egg, which creates moisture pockets throughout each meatball. This panade technique is classic to Swedish cooking and prevents dense, tough meatballs.
- Browning the meatballs gives a deeper, more developed flavor to the entire soup. Those caramelized bits stuck to the bottom of the pot (fond) are packed with concentrated meaty flavor that gets released when you deglaze with broth.
- A short simmer infuses the broth with meat and spice flavors without overcooking the vegetables or making them mushy. This timing ensures tender-crisp vegetables and perfectly cooked meatballs in every spoonful.
- Finishing with cream adds richness and silky mouthfeel without overpowering the delicate allspice and nutmeg that give Swedish meatballs their signature flavor. The cream also helps mellow the broth and creates a cohesive, luxurious texture.
The combination of beef and pork creates the best flavor and texture – beef provides depth while pork adds fat and tenderness. The warm spices transport you straight to Scandinavia, while root vegetables make this a complete, satisfying meal in one bowl.
Ingredients
Here’s everything you’ll need to make this warming soup:
For the meatballs:
- 1 lb ground beef – provides meaty flavor and structure
- 1/2 lb ground pork – adds fat and tenderness
- 1/2 cup breadcrumbs – creates light texture
- 1/4 cup milk – hydrates breadcrumbs for panade
- 1 large egg – binds ingredients together
- 1 small onion, finely chopped – adds moisture and flavor
- 1 garlic clove, minced – aromatic depth
- 1/2 tsp ground allspice – signature Swedish spice
- 1/4 tsp ground nutmeg – warm, sweet undertone
- Salt and black pepper to taste – essential seasoning
For the soup:
- 2 tbsp butter – for browning meatballs
- 1 tbsp olive oil – prevents butter from burning
- 6 cups low-sodium beef broth – savory base; low-sodium lets you control salt
- 2 medium carrots, peeled and sliced – sweetness and color
- 2 stalks celery, sliced – aromatic vegetable base
- 2 medium potatoes, peeled and diced (about 2 cups) – body and heartiness
- 1/2 cup heavy cream – finishing richness
- 2 tbsp fresh dill or parsley, chopped for garnish – bright, fresh contrast
Voice-search friendly: “What you’ll need to make Cozy Swedish Meatball Soup” – these classic ingredients create an authentic Swedish experience at home.
Equipment
- Large mixing bowl – for combining meatball mixture
- Large Dutch oven or soup pot – essential for browning and simmering
- Slotted spoon – for removing meatballs without losing broth
- Measuring cups and spoons – ensures proper ratios
- Cutting board and knife – for vegetable prep
- Plate – for holding browned meatballs
- Optional: cookie scoop – for uniform meatball sizing
Recommended: A 6-quart Dutch oven provides perfect space for browning meatballs in batches and cooking the soup without crowding.
Step-by-Step Process
Step 1: Mix the meatball mixture
Combine ingredients: In a large mixing bowl, add the breadcrumbs and pour the milk over them. Let soak for 2-3 minutes until the breadcrumbs fully absorb the milk and become soft. Add ground beef, ground pork, egg, finely chopped onion, minced garlic, allspice, nutmeg, salt (about 1 teaspoon), and pepper (1/4 teaspoon).
Mix gently: Use your hands or a large spoon to combine ingredients until just uniform – mix only until everything is distributed evenly. Avoid overworking the mixture, which develops gluten and creates tough meatballs. The mixture should be soft and slightly sticky but hold together when formed.
Step 2: Form and brown the meatballs
Shape: Using slightly wet hands to prevent sticking, roll the mixture into 1-inch meatballs. You should get about 28 meatballs total. Place them on a plate as you work. Keeping them uniform in size ensures even cooking.
Brown: Heat butter and olive oil together in the Dutch oven over medium heat until the butter melts and starts to foam. Working in batches of 8-10 meatballs to avoid crowding, add meatballs to the pot and brown on all sides for 4-5 minutes per batch, turning occasionally. The meatballs do not need to be fully cooked through at this stage – you’re just developing color and flavor. Transfer browned meatballs to a clean plate and set aside.
Step 3: Build the broth
Sauté vegetables: Remove browned meatballs to a plate. If the pot looks very dark, wipe out any burnt bits but leave the good brown fond. Add carrots, celery, and diced potatoes to the pot and sauté for 3-4 minutes, stirring occasionally, until the vegetables are slightly softened and beginning to pick up color from the fond.
Deglaze and simmer: Pour in all 6 cups of beef broth, using a wooden spoon to scrape up all the browned bits stuck to the bottom of the pot – this is where tremendous flavor lives. Return all the browned meatballs to the pot, nestling them into the broth and vegetables. Bring to a gentle boil over medium-high heat, then reduce heat to maintain a steady simmer. Cook uncovered for 20 minutes, stirring occasionally, until vegetables are fork-tender and meatballs are cooked through (internal temperature of 160°F/71°C).
Step 4: Finish the soup
Add cream: Reduce heat to low and stir in the heavy cream gradually. Simmer gently for 2-3 minutes to heat the cream through – do not allow the soup to boil after adding cream, as this can cause curdling and separation.
Adjust seasoning: Taste the broth and adjust salt and pepper as needed. The soup should taste savory with subtle warm spice notes from the allspice and nutmeg. Stir in half the fresh dill or parsley, reserving the rest for garnish.
Step 5: Serve
Portion: Ladle the hot Cozy Swedish Meatball Soup into bowls, making sure each serving gets 4-5 meatballs along with plenty of vegetables and broth.
Garnish: Sprinkle remaining fresh dill or parsley over each bowl and add a crack of fresh black pepper for a professional presentation.
Optional additions: Serve with crusty bread for dipping, buttered egg noodles on the side, or a dollop of sour cream on top for extra tang and richness.
Step 6: Clean up and store
Cool properly: Allow any leftover soup to cool to room temperature, but don’t leave it out longer than 2 hours for food safety.
Store: Transfer cooled soup to airtight containers and refrigerate or freeze as directed in the storage section below. Meatballs and vegetables hold up beautifully to storage, making this an excellent meal-prep option.
Pro Tips & Troubleshooting
- For a lighter version, substitute half-and-half for heavy cream, or use only whole milk with a tablespoon of flour whisked in – the soup will be less rich but still flavorful and satisfying.
- Keep meatballs uniform in size by using a small cookie scoop (about 1 tablespoon capacity) to portion the mixture before rolling. This ensures they all cook at the same rate and look professional.
- Don’t skip the milk-soaked breadcrumbs – this panade is what keeps Swedish meatballs tender and prevents them from becoming dense hockey pucks.
- If you want a smoother, creamier broth, blend 1 cup of the cooked vegetables with some broth using an immersion blender, then return it to the pot. This creates a thicker, more velvety texture. Also consider pairing with simple party bites like cranberry cream cheese crescent bites for holidays or gatherings.
- Make-ahead meatballs: Shape meatballs up to 24 hours ahead and refrigerate covered, or freeze them on a parchment-lined sheet tray until solid, then transfer to a freezer bag for up to 3 months. Brown from frozen, adding 2-3 extra minutes.
- Prevent cream curdling by ensuring the soup isn’t at a rolling boil when you add cream. Medium-low heat is ideal for incorporating dairy smoothly.
- Customize the vegetables: Add parsnips for sweetness, turnips for earthiness, or peas in the last 5 minutes for color and sweetness.
- Allspice is key – this warm, slightly sweet spice is what makes Swedish meatballs taste authentically Swedish. Don’t substitute it with pumpkin pie spice or other blends.
Also consider pairing with simple party bites like cranberry cream cheese crescent bites for holidays or gatherings.
Serving Suggestions
- Classic pairing: Serve Cozy Swedish Meatball Soup with buttered egg noodles or a slice of hearty rye bread for a complete Scandinavian-inspired meal.
- Balance the richness: A crisp green salad dressed with lemon vinaigrette on the side cuts through the cream and provides fresh contrast to the warm, comforting soup.
- Brighten it up: Top each bowl with a small dollop of sour cream or crème fraîche and extra fresh dill for brightness and tang that complements the rich broth beautifully.
- Make it a feast: Serve alongside lingonberry jam (traditional Swedish accompaniment) and pickled cucumbers for an authentic Swedish dinner experience.
- Family-style serving: Place the pot on the table with a ladle and let everyone serve themselves, garnishing their own bowls with dill, pepper, and sour cream from small bowls.
Storage
- Refrigerate in an airtight container for up to 3 days. The flavors will meld and deepen overnight, making day-two soup even better.
- Freeze for up to 3 months in freezer-safe containers. Leave about 1 inch of headspace to allow for expansion. Thaw overnight in the refrigerator before reheating.
- Reheat gently on the stovetop over low to medium-low heat, stirring occasionally to prevent the cream from curdling. Add a splash of broth or cream if the soup has thickened during storage. Heat to at least 165°F (74°C) throughout before serving.
Freezing tip: The soup freezes beautifully, though the cream may separate slightly. Simply stir well while reheating and it will come back together. For best results, you can freeze the soup base without cream and add fresh cream when reheating.
Nutrition (per serving – about 1.5 cups, based on 6 servings)
- Calories: 420
- Fat: 28 g
- Carbohydrates: 18 g
- Protein: 22 g
- Fiber: 2 g
- Sodium: varies with broth used
This soup provides substantial protein from the meat, complex carbohydrates from potatoes, and vitamins from the vegetables. To reduce fat and calories, use lean ground beef (90/10), turkey instead of pork, and substitute half-and-half for heavy cream.
Food Safety
- Cook meatballs thoroughly to an internal temperature of 160°F (71°C). Use a meat thermometer inserted into the center of the largest meatball to check.
- Cool leftovers quickly by transferring to shallow containers, which allows heat to dissipate faster. Refrigerate within 2 hours of cooking (1 hour if room temperature exceeds 90°F).
- Reheat properly to 165°F (74°C) throughout before serving. Stir soup while reheating to ensure even heating, especially if microwaving.
- Safe handling: Wash hands thoroughly after handling raw ground meat. Clean all surfaces and utensils that touched raw meat with hot, soapy water.
FAQs
Can I make this vegetarian?
Replace meatballs with plant-based meatballs or use seasoned lentils shaped into small dumplings – adjust simmer time to 15 minutes to prevent disintegration. Use vegetable broth instead of beef broth. This keeps the texture hearty while accommodating dietary needs.
Can I prepare meatballs ahead?
Yes – you can shape and refrigerate meatballs up to 24 hours ahead covered in the fridge, or freeze them on a parchment-lined sheet tray until solid, then store in a freezer bag for up to 3 months. Brown from frozen or thawed.
How long does Cozy Swedish Meatball Soup take from start to finish?
About 45-55 minutes total, including 15 minutes for prep and meatball forming, 15 minutes for browning, and 20 minutes for simmering.
Can I make this in a slow cooker?
Yes. Brown meatballs first, then transfer everything except cream to a slow cooker. Cook on low 6-7 hours or high 3-4 hours. Stir in cream during the last 30 minutes.
What if I can’t find ground pork?
Use all ground beef (preferably 80/20 for moisture) or substitute ground turkey. The flavor will be slightly different but still delicious.
Can I use frozen meatballs?
Yes – use frozen Swedish meatballs (about 28-30 meatballs). Skip the browning step and add them directly to the simmering broth, increasing simmer time to 25-30 minutes.
Conclusion
Cozy Swedish Meatball Soup brings the comforting flavors of traditional Swedish meatballs into an easy, one-pot soup format perfect for weeknight dinners or meal prep. The tender, spiced meatballs, hearty vegetables, and creamy broth create a satisfying meal that warms you from the inside out.
This recipe proves that classic comfort food doesn’t have to be complicated – simple techniques and quality ingredients create spectacular results. Whether you’re looking for a new family favorite or want to explore Scandinavian flavors, this soup delivers on all fronts.
For more variations and inspirations on this comforting recipe, see this detailed version at Swedish Meatball Soup – Skinny Spatula. Try it tonight and discover why this soup has become a beloved comfort classic!

Cozy Swedish Meatball Soup
Ingredients
Method
- In a large mixing bowl, soak the breadcrumbs in milk for 2 minutes.
- Add ground beef, ground pork, egg, chopped onion, garlic, allspice, nutmeg, salt, and pepper. Mix gently until just uniform.
- Roll the mixture into 1-inch meatballs (about 28 meatballs).
- Heat butter and olive oil in the Dutch oven over medium heat. Add meatballs in batches and brown on all sides for 4-5 minutes per batch.
- Remove browned meatballs to a plate. Add carrots, celery, and potatoes to the pot and sauté for 3-4 minutes.
- Pour in beef broth, scraping up browned bits. Return meatballs to the pot. Bring to a gentle boil, then reduce heat and simmer uncovered for 20 minutes.
- Stir in heavy cream and simmer for 2-3 minutes. Adjust seasoning as needed.
- Ladle into bowls and serve hot with crusty bread or buttered egg noodles.
- Garnish with fresh dill or parsley before serving.
- Let leftovers cool to room temperature, then transfer to airtight containers and refrigerate or freeze.
