Soups & Stews
This baked potato soup recipe with evaporated milk delivers the ultra-creamy, velvety texture that makes it a comfort food classic. The secret lies in using evaporated milk instead of heavy cream—it creates a rich, smooth base without being overly heavy, while still delivering that signature creamy satisfaction.
I've perfected this recipe over years of testing, ensuring every spoonful is perfectly balanced between creamy, savory, and slightly sweet.
What sets this recipe apart is the foolproof technique for achieving that signature velvety consistency without lumps or separation. The evaporated milk blends seamlessly with the mashed potatoes and broth, creating a soup that's both indulgent and comforting.
With just 30 minutes of active prep time and 45 minutes of simmering, you'll have a restaurant-quality bowl ready to serve—ideal for chilly evenings or game day gatherings.
The result is a soup with a silky, almost custard-like texture that coats your spoon and warms you from the inside out. The flavor profile is rich and satisfying, with the natural sweetness of potatoes balanced by savory seasonings.
The evaporated milk adds depth while keeping the soup lighter than traditional cream-based versions, making it a crowd-pleaser that's both hearty and approachable.
Serve this soup with a sprinkle of fresh chives, a dollop of sour cream, or crispy bacon bits for added texture and flavor. It pairs beautifully with crusty bread or a simple green salad to round out the meal.
The creamy texture and comforting flavors make this a recipe you'll want to return to again and again.
Ingredients for baked potato soup recipe with evaporated milk
Pantry staples meet restaurant-quality technique for this velvety baked potato soup masterpiece.
| Ingredient | Amount | Notes |
|---|---|---|
| Russet Potatoes 🥔 | 3 lb | Peeled and cubed for even cooking |
| Evaporated Milk 🥛 | 2 cups | Unopened can for best texture |
| Chicken Broth 💧 | 4 cups | Low-sodium preferred for balance |
| Yellow Onion 🧅 | 1 whole | Diced, medium size preferred |
| Carrots 🥕 | 3 medium | Peeled and diced into 1/4-inch pieces |
| Celery Stalks 🧅 | 3 whole | Diced, includes leafy tops |
| Garlic Cloves 🧄 | 4 cloves | Minced for aromatic depth |
| Butter 🧈 | ½ cup | Unsalted, cold for sauteing |
| All-Purpose Flour 🌾 | 2 tbsp | For smooth roux development |
| Dried Thyme 🌿 | 1 tsp | Or 1 tbsp fresh thyme leaves |
| Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly ground for brightness |
| Fresh Chives 🌿 | ¼ cup | Chopped for garnish, optional |
| Sour Cream 🥛 | ½ cup | Full-fat for creamy garnish |
| Crispy Bacon Bits 🥓 | ¼ cup | Optional protein garnish |
The evaporated milk is non-negotiable for that signature ultra-creaminess. Store-brand cans work fine, but Carnation delivers the most consistent results. Look for cans with no dents or bulging—these indicate spoilage. The potatoes should be firm and blemish-free, with skin that's paper-thin when rubbed between fingers. For the broth, Swanson or Pacific Foods low-sodium options balance flavor perfectly without overwhelming the dish. Fresh thyme from Whole Foods bulk section adds depth that dried simply can't match, though McCormick dried works in a pinch.
No evaporated milk? Full-fat coconut milk blended with 1 tbsp cornstarch mimics the texture surprisingly well. Substituting chicken broth for vegetable? Add 1 tsp soy sauce to compensate for lost umami. Carrots and celery can be swapped 1:1 by weight—just adjust to maintain the 3:2 ratio. The bacon bits are optional but add crucial texture contrast—I always toast mine in a dry pan until crispy. For a lighter version, reduce the evaporated milk to 1.5 cups and add 0.5 cup unsweetened almond milk. The flour is essential for that silky finish—Bob's Red Mill all-purpose works best for roux development.
This soup tastes even better the next day as flavors meld. Store in an airtight container for up to 5 days in the fridge. Freeze portions in 2-cup containers for up to 3 months—thaw overnight in the fridge before reheating. Garnishes like chives and sour cream can be added fresh after reheating. For make-ahead convenience, prep everything up to the simmering step, then refrigerate the roux mixture separately. Combine and heat through when ready to serve—no reheating lumps guaranteed.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe when I’m too tired to wash extra bowls. Just toss peeled potatoes, diced onions, and shredded carrots into a pot with broth, simmer until tender, then blend with evaporated milk—no straining, no fuss. The evaporated milk does all the heavy lifting for that velvety texture.
- Creamy Without Cheese: Honestly, the evaporated milk makes this soup ridiculously rich without needing heavy cream or cheese. The potatoes break down into that dreamy, mash-like consistency, while the milk adds a subtle sweetness that balances the savory broth. It’s the kind of comfort food that doesn’t feel like a cheat.
- Lunchbox Hero: Between us, this soup is my go-to for packing leftovers. The flavors actually improve the next day—thicker, deeper, and still warm when reheated. Add a sprinkle of chives or bacon bits for serving, and suddenly you’ve got a meal that’s as easy to reheat as it is to make.
- Budget Stretch: Russets and carrots are pantry staples, and a can of evaporated milk lasts forever. I’ve made this soup for six people for under $10, and it’s still the dish everyone asks for. Plus, the leftovers freeze like a champ—just thaw and heat, no defrosting drama.
Step-by-step instructions for baked potato soup with evaporated milk
This method delivers restaurant-quality creaminess using evaporated milk for unmatched velvety texture.
Sauté the Vegetable Base for Flavor Development
In a large Dutch oven, melt the 0.5 cup butter over medium heat. Add the 1 whole yellow onion, 3 medium carrots, and 3 whole celery stalks, cooking for 8-10 minutes until the vegetables soften and begin to caramelize slightly. This slow cooking builds deep flavor that forms the soup's foundation.
Add the 4 cloves minced garlic and 1 tsp dried thyme, stirring for 30 seconds until fragrant. The garlic should sizzle gently without browning—this ensures aromatic depth without bitterness. Keep the heat at medium to prevent burning while developing the vegetable flavors.
Create a Smooth Roux for Thickening
Sprinkle the 2 tbsp all-purpose flour over the vegetables, stirring constantly for 1-2 minutes until fully incorporated and the mixture turns a pale golden color. This creates a blond roux that thickens the soup without adding raw flour taste.
Gradually pour in the 4 cups chicken broth, whisking continuously to prevent lumps from forming. Bring to a gentle simmer and cook for 5 minutes to cook out any remaining raw flour taste. The soup should now have a velvety base with no floury aftertaste.
Cook the Potatoes Until Tender
Add the 3 lb cubed russet potatoes to the soup, ensuring they're fully submerged. Bring to a boil, then reduce heat to medium-low and simmer uncovered for 15-20 minutes until the potatoes are fork-tender. You'll know they're ready when they pierce easily with a knife—this ensures perfect texture without mushiness.
Season with 1.5 tsp salt and 0.5 tsp black pepper during this stage. The potatoes will absorb some of the seasoning, so adding it now ensures even flavor distribution throughout the entire soup.
Finish with Evaporated Milk for Ultra-Creaminess
Remove the soup from heat and stir in the 2 cups evaporated milk in a slow, steady stream. The evaporated milk's higher fat content creates that signature velvety texture without needing heavy cream. Return to low heat and simmer gently for 5 minutes to blend the milk completely.
Use an immersion blender to purée half the soup until completely smooth, then stir it back into the remaining chunks for a creamy yet textured result. This technique maintains some potato pieces for visual appeal while achieving that signature creamy consistency.
Garnish and Serve for Maximum Appeal
Ladle the soup into bowls and top each serving with 0.5 cup sour cream, 0.25 cup crispy bacon bits, and 0.25 cup chopped fresh chives. The sour cream adds a tangy contrast to the richness, while the bacon bits provide a satisfying crunch and protein boost.
Serve immediately while hot—this soup tastes best fresh from the pot when the textures are at their peak. The combination of creamy, chunky, and crispy elements creates a perfect balance in every spoonful.
Pro Tips For Making Baked Potato Soup Recipe With Evaporated Milk
- PEEL AND CUBE SMALL: Russets are tough—cut them into ½-inch cubes, not chunks. I learned this the hard way when my soup turned into a mushy mess because uneven pieces cooked at different speeds.
- SIMMER, DON’T BOIL: Low and slow (a gentle simmer) keeps the potatoes tender without turning the broth into glue. After 15 minutes, if it’s not bubbling hard, you’re golden.
- SALT THE BROTH FIRST: Add salt to the chicken broth before adding potatoes—it dissolves evenly and seasons the whole dish. Skipping this means your soup tastes flat until the last spoonful.
- STIR IN EVAPORATED MILK LAST: Heat the milk separately until warm (not scalding) and fold it in at the end. Cold milk shocks the soup, and hot milk curdles—neither is ideal for that creamy finish.
Troubleshooting perfect results
Lumpy Texture Fix
If your soup turns out lumpy despite blending, don't panic! The issue usually stems from adding the evaporated milk too quickly. Next time, whisk it in slowly while stirring constantly with a wooden spoon. For an immediate fix, purée the entire soup with an immersion blender until completely smooth.
If that's not possible, strain the soup through a fine-mesh sieve—this removes all lumps while preserving the creamy texture. 💡
Separation Prevention
Evaporated milk-based soups sometimes separate if not handled properly. Always stir the soup gently after adding the milk, and avoid boiling it vigorously. If separation occurs, simply reheat the soup on low heat while stirring continuously until smooth again.
For extra insurance, whisk in 1 tablespoon cornstarch mixed with 2 tablespoons cold water to help stabilize the mixture.
Overly Thin Soup
A soup that's too thin usually means the roux wasn't cooked long enough or the potatoes weren't cooked thoroughly. For a quick fix, simmer the soup uncovered for 5-10 additional minutes to reduce the liquid naturally.
If it's still too thin, mix 1 tablespoon flour with 2 tablespoons cold water, stir it in, and simmer for 2 minutes more. This creates a smooth thickening without altering the flavor.
Raw Flour Taste
If your soup has a noticeable floury aftertaste, the roux wasn't cooked long enough. To fix this, return the soup to low heat and simmer for an additional 5-10 minutes, stirring occasionally.
For future batches, always cook the roux until it reaches a pale golden color and smells nutty before adding the broth. This ensures all raw flour flavors cook out completely. 🌾
Burnt Onions or Garlic
Burnt vegetables create bitter flavors that ruin the delicate balance of this soup. To prevent this, keep the heat at medium when sautéing onions and garlic, and stir frequently. If you accidentally burn them, remove the Dutch oven from heat immediately and scrape out any blackened bits.
For a fresh start, add ½ teaspoon fresh lemon juice to cut through the bitterness, then proceed with the remaining recipe steps.
Weak Flavor Profile
If your soup tastes bland, it's likely underseasoned or missing depth. Boost the flavor by adding ½ teaspoon smoked paprika or ¼ teaspoon ground mustard to enhance the savory notes. For extra richness, stir in 1 tablespoon butter at the end.
If using low-sodium broth, add an additional ½ teaspoon salt and ¼ teaspoon black pepper to balance the flavors. Taste as you go—this soup benefits from bold seasoning! 🧂
Nutrition facts
Frequently asked questions
Why does evaporated milk make this soup so creamy?
The evaporated milk's higher fat content (about 7.9% compared to 3.6% in regular milk) creates that signature velvety texture without needing heavy cream. Its concentrated form blends seamlessly with the potatoes, delivering rich creaminess while keeping the soup lighter than traditional dairy-based versions. The canning process also removes water, making it perfect for thickening soups naturally.
Can I make this soup without an immersion blender?
Transfer half the soup to a countertop blender or food processor and purée until completely smooth, then stir it back into the remaining soup. For a chunkier texture (like loaded baked potato soup), simply mash the cooked potatoes with a potato masher before adding them to the broth. The key is to maintain some texture contrast for that satisfying bite.
How do I prevent the soup from getting too thin?
Cook the potatoes until fork-tender (they should pierce easily with a knife) and ensure the roux reaches a pale golden color before adding broth. For extra insurance, simmer the soup uncovered for 5-10 minutes at the end to reduce liquid naturally. If it's still too thin, mix 1 tablespoon cornstarch with 2 tablespoons cold water, stir it in, and simmer for 2 minutes.
What's the best way to reheat leftovers?
Reheat gently on the stovetop over low heat, stirring frequently to prevent separation. For best results, add 1 tablespoon milk or water per cup of soup to restore creaminess. Microwave reheating works too—cover with a damp paper towel and heat in 30-second intervals, stirring between each, until warmed through. Never boil leftovers to preserve that velvety texture.
Can I make this soup dairy-free?
Yes! Replace the evaporated milk with 2 cups full-fat coconut milk blended with 1 tablespoon cornstarch for thickness. For the roux, use 2 tablespoons cornstarch mixed with 2 tablespoons cold water instead of flour. The flavor will be slightly different but still creamy and satisfying. Garnish with dairy-free sour cream if desired.
