German potato soup lands in that sweet spot between rustic and comforting, with tender potatoes, smoky bacon, and just enough cream to make the broth feel rich without turning it heavy. When it’s done right, the bowl is thick enough to coat a spoon, but still brothy enough that every bite feels different — a piece of carrot here, a slice of frankfurter there, a little hit of caraway in the background.
What makes this version work is the order. Bacon goes in first so the fat can season the vegetables, then a third of the potatoes gets mashed right in the pot to give the soup body without flour. The cider vinegar at the end matters more than it looks on paper; it wakes up the cream and keeps the soup from tasting flat.
Below, I’ll walk through the one step that keeps the broth from turning gluey, which sausage gives the best texture, and the little adjustment I use when I want the soup a touch thicker the next day.
The potatoes broke down just enough to thicken the broth, and the cider vinegar at the end kept the whole pot from tasting too heavy. My husband went back for a second bowl before I even sat down.
Save this German Potato Soup for the nights when you want a thick, smoky bowl with caraway, cream, and sausage.
The Trick to Thickening It Without Turning It Gummy
The biggest mistake with potato soup is reaching for flour too early or pureeing the whole pot into a paste. Russet potatoes already contain enough starch to give this soup body, and mashing just a portion of them creates a naturally thick broth that still has texture. If you blend too much, the soup turns heavy and the sausage gets lost. If you don’t mash enough, it stays thin and the cream can feel disconnected from the broth.
The other thing that matters is heat. Once the cream goes in, keep the soup at a gentle simmer, not a rolling boil. High heat can make the dairy taste flat and push the texture in the wrong direction. This soup should look glossy, with soft vegetable pieces suspended in a thickened broth that still moves in the pot.
What Each Ingredient Is Actually Doing in This Bowl

- Russet potatoes — These are the backbone of the soup because they break down enough to thicken the broth. Waxy potatoes hold their shape too well here and won’t give you the same body.
- Bacon or speck — This is where the smoky depth starts. Speck gives a more pronounced cured flavor, while regular bacon is easier to find and still works beautifully.
- Caraway seeds — Don’t skip these if you want the soup to taste distinctly German. They add an earthy, warm note that keeps the broth from tasting like plain cream soup.
- Cider vinegar — The splash at the end sharpens the flavor and balances the richness. Lemon can work in a pinch, but it tastes brighter and less traditional.
- Frankfurters or bratwurst — Frankfurters stay soft and classic, while bratwurst adds a meatier bite. Slice them after cooking so they warm through without drying out.
Building the Soup in the Right Order
Rendering the Bacon
Cook the diced bacon over medium heat until the pieces are crisp and the fat has rendered into the pot. That fat is your first layer of seasoning, so don’t rush it with high heat or the bacon will brown too fast before the pan has built any flavor. Lift the bacon out and leave the fat behind. If the pot looks dry, the butter comes in next and fills in the gap.
Softening the Vegetables
Add the onion, carrots, and celery to the bacon fat and butter, then cook them until the onion goes translucent and the edges start to look glossy, about 5 minutes. You’re not trying to brown them hard; you’re building sweetness and a softer base for the broth. If the vegetables start sticking, the heat is too high. Drop it down and keep stirring until they relax.
Simmering the Potatoes
Once the broth, potatoes, caraway, marjoram, and bay leaf go in, bring the pot to a boil, then lower it to a steady simmer. The potatoes should be fully tender before you move on — a knife should slide in without resistance. If they’re still a little firm when you mash some of them, the soup will stay grainy instead of turning velvety.
Finishing With Cream and Sausage
Pull out the bay leaf, mash about a third of the potatoes right in the pot, then stir in the cream and vinegar. Add the sliced sausage and let everything simmer for just a few minutes so the sausage warms through and the soup comes together. Don’t boil it hard at this stage or the cream can separate and the sausage can turn rubbery. Taste at the end, then salt and pepper until the broth tastes round and complete.
How to Make This Soup Work for the Pantry You Have
Dairy-Free Version
Swap the heavy cream for full-fat oat cream or unsweetened coconut cream if that’s what you keep on hand. Oat cream gives the closest neutral result, while coconut cream adds a faint sweetness that pulls the soup away from classic German flavor.
Gluten-Free Without Any Fuss
This soup is naturally gluten-free if your broth and sausages are certified gluten-free. That matters more than most people think, because many packaged broths and frankfurters hide wheat-based additives.
No Bacon, Still Good
Use 1 extra tablespoon of butter and add a pinch of smoked paprika to the vegetables if you need to leave the bacon out. You’ll lose some of the smoky depth, but the soup still tastes full and satisfying if the sausage is flavorful.
Thicker, Heavier Soup for the Next Day
Mash a little more of the potatoes before adding the cream, then hold back 1/4 cup of broth until the end. The soup thickens as it sits, so this trick gives you a bowl that still feels spoonable after reheating instead of turning into mashed potatoes in liquid.
Storage and Reheating
- Refrigerator: Keeps well for 3 to 4 days. It thickens as it sits, so expect a denser texture the next day.
- Freezer: Freezing is possible, but the cream can separate a little on thawing. If you want the best texture, freeze the soup before adding the cream, then stir the cream in after reheating.
- Reheating: Warm it slowly over low heat and add a splash of broth if it has tightened up too much. Don’t let it boil hard, or the dairy can split and the potatoes can break down too far.
Questions I Get Asked About This Recipe

German Potato Soup
Ingredients
Equipment
Method
- Cook the diced bacon in a large pot over medium heat until crispy, then remove and set aside.
- Reserve the bacon fat in the pot so you can sauté the vegetables in it.
- Sauté the onion, carrots, and celery in the bacon fat and butter for 5 minutes, stirring until softened.
- Add the broth, potatoes, caraway seeds, marjoram, and bay leaf, then bring the mixture to a boil.
- Simmer for 20-25 minutes, until the potatoes and vegetables are very tender.
- Remove the bay leaf, then mash a third of the potatoes in the pot to thicken the soup.
- Stir in the heavy cream and cider vinegar.
- Add the sliced frankfurters or bratwurst links and simmer for 5 minutes.
- Return the bacon to the pot, then season with salt and pepper and garnish with fresh parsley.


