How to Make Tomato Soup Perfectly Every Time
Most homemade tomato soup tastes like hot pasta sauce or a can with a fancy label. This one does not. It is silky, a little sweet, tangy in the right spot, and it cooks in one pot from pantry cans.
I tested this tomato soup eleven times over five weeks. Versions one through four were too sharp, version six curdled in the pot, and version nine finally tasted the way I wanted. The fix was small: two carrots, a spoonful of sugar, and cream stirred in at the very end.
There is no flour, no cornstarch, and no soup base from a carton. The body comes from blended tomatoes and a little butter, so the flavor stays clean. I serve it with grilled cheese on school nights, and the pot is empty before the sandwiches are.
The steps are short, but a few details matter, so read through them once before you turn on the burner.

Table of Contents
Why You Will Love This Tomato Soup
- It runs on canned tomatoes, so you can make it in January as easily as in August.
- The texture is velvety without flour, cornstarch, or any other thickener.
- One pot and one blender mean cleanup takes about five minutes.
- The flavor deepens overnight, which makes a Sunday batch pay off all week.
- My kids eat it without a single complaint, basil flecks and all.
Recipe Snapshot
- Prep Time: 15 minutes
- Cook Time: 55 minutes
- Total Time: 1 hour 10 minutes
- Servings: 6
- Difficulty: Easy
- Calories per Serving: About 260
- Key Ingredient or Tool: Whole peeled tomatoes and an immersion blender
- Best For: Weeknight dinners, packed lunches, and cold afternoons
Nutrition Information
Calories per Serving: About 260
Protein: 5 g
Carbs: 21 g
Fat: 20 g
Fiber: 7 g
Sugar: 13 g
Sodium: 777 mg
Serving Size: About 1 3/4 cups
Servings per Recipe: 6
The fat comes mostly from butter and cream, and the fiber comes mostly from tomatoes, carrots, and onion. Sodium runs on the higher side because canned tomatoes and regular broth both carry salt. Low-sodium broth brings that number down noticeably.
Nutrition values are approximate and calculated per serving using standard ingredient amounts. Values may vary based on brands used and portion sizes.
Ingredients
For the Base
- 3 tablespoons unsalted butter
- 1 tablespoon extra virgin olive oil
- 1 large yellow onion (about 10 ounces), diced
- 2 medium carrots (about 5 ounces), peeled and finely diced
- 5 garlic cloves, minced
- 3 tablespoons tomato paste
- 1/2 teaspoon dried oregano
- 1/2 teaspoon Diamond Crystal kosher salt, plus more to taste
- 1/4 teaspoon freshly ground black pepper
For the Soup
- 2 cans (28 ounces each) whole peeled tomatoes with their juices, San Marzano style
- 3 cups vegetable broth (low sodium works well)
- 2 teaspoons granulated sugar
To Finish
- 3/4 cup heavy cream, at room temperature
- 1/2 cup loosely packed fresh basil leaves
Substitutions: crushed tomatoes replace whole ones, though the soup tastes slightly less sweet. Use water plus an extra 1/4 teaspoon salt for the broth, 1 teaspoon dried basil for fresh, and full-fat canned coconut milk for the cream.
Three ingredients decide the result. Whole peeled tomatoes such as Cento San Marzano give a sweeter, rounder soup than diced tomatoes, which hold their shape and blend grainy. Tomato paste adds depth that nothing else replaces. Heavy cream is the safest dairy because its fat resists curdling in acid.
Diamond Crystal kosher salt is lighter by volume than most brands, so with table salt use about half as much.

Equipment Needed
- 6-quart Dutch oven or heavy soup pot: a thick base keeps the paste from scorching.
- Immersion blender: it blends in the pot, so you never carry hot soup across the kitchen.
- Countertop blender (optional): fill it only halfway and vent the lid, because hot liquid expands.
- Ladle and small bowl: you need both to temper the cream.
Preparation
- Set the cream on the counter 30 minutes ahead. Cold cream hitting hot soup is the top cause of curdling.
- Dice the onion and carrots about 1/4 inch wide so they soften at the same speed.
- Mince the garlic, then measure the paste, oregano, salt, and pepper into a small bowl.
- Open both cans of tomatoes and measure the broth.
- Nothing needs preheating, so just set the Dutch oven on a burner. Keep the basil whole until step 6.
Step-by-Step Instructions
- Melt the butter with the olive oil in the Dutch oven over medium heat, then add the onion, carrots, and the 1/2 teaspoon salt. Chef’s Note: Medium heat makes the vegetables sweat instead of brown. Cook 8 to 10 minutes, until the onion turns translucent and a carrot piece mashes easily.
- Stir in the garlic, tomato paste, oregano, and pepper, and cook over medium heat for 2 minutes. The paste is ready when it darkens from bright red to deep brick and smells sweet.

- Add the tomatoes with their juices, the broth, and the sugar. Chef’s Note: Crush each tomato against the pot with your spoon so they break down faster. The liquid is ready when it looks evenly red with no whole tomatoes left.
- Bring the pot to a gentle boil over medium high heat, then lower it to medium low. Simmer uncovered for 25 minutes, stirring every 5 minutes. The soup is done when it has thickened slightly and small orange rings of oil shimmer on top.
- Turn off the heat and let the soup rest 5 minutes. Chef’s Note: Blending boiling soup causes splatter burns, so give it time to calm down. The surface should stop bubbling completely before you pick up the blender.
- Add the basil, then blend for 1 to 2 minutes, moving the blender slowly up and down. Tilt the pot to reach the bottom. The soup is ready when it looks completely smooth and a shade lighter, with no flecks of carrot or skin.

- Ladle 1 cup of hot soup into a bowl with the room temperature cream and whisk. Pour the mixture back into the pot while stirring, then warm over low heat for 3 to 5 minutes without boiling. The soup is finished when steam rises evenly and the color turns a soft, creamy coral.
- Taste, then add salt 1/4 teaspoon at a time, stirring and waiting 30 seconds between additions. Stop when the soup smells sweet and tastes bright rather than salty.
Expert Tips and Tricks
- I once poured cold cream from the fridge into a boiling pot on game night. It split into white curds within seconds, and I strained the whole pot.
- Cook through the blending step up to 3 days ahead, cool it fast, and add cream when you reheat.
- A wide pot beats a tall one. More surface area speeds up evaporation, so the tomato soup thickens inside the 25 minute simmer.
- For a restaurant-smooth finish, pour the blended soup through a fine mesh strainer. It takes 2 minutes and catches stray seeds.
- Short on time? Grate the carrots instead of dicing them so they soften faster.
- Leftovers keep 4 days in the fridge, but the flavor peaks on day two.
Pro Tip: Pour a splash of the broth into each empty tomato can, swirl, and add it to the pot. The sweet tomato clinging to the sides goes into the soup instead of the recycling bin.
Common Mistakes and Troubleshooting
Curdled cream: the soup looks grainy with white specks. Cold cream meets hot acid and the proteins clump, so temper the cream and keep the pot below a boil. To fix it, blend the soup again for 30 seconds.
Sharp, sour taste: some cans of tomatoes are more acidic than others. Sugar and carrots prevent most of it. To fix it, stir in 1/8 teaspoon baking soda, which fizzes briefly, then taste again.
Scorched flavor: tomato paste burns fast on high heat and turns the pot bitter. Keep the burner at medium and stir constantly in step 2. If it already tastes burnt, move the soup to a clean pot without scraping the bottom.
Watery soup: the tomato soup looks thin and pale because the simmer was short or the pot was covered. Simmer uncovered for the full 25 minutes. To fix it, simmer 5 to 10 more minutes before adding the cream.
Flat flavor: the soup tastes dull because it was under-salted. Salt the vegetables in step 1 and again at the end. To fix it, add salt in small pinches or stir in 1 teaspoon of apple cider vinegar.
Storage Instructions
Room Temperature: Not recommended beyond 2 hours, or 1 hour above 90°F.
Refrigerator: Cool the tomato soup, then store it in airtight glass containers for up to 4 days.
Freezer: Freeze the soup without cream in freezer-safe zip bags laid flat for 2 to 3 months.
Reheating: Warm it in a saucepan over low heat for 8 to 10 minutes until it reaches 165°F and steams evenly. Add a splash of broth if it thickened, and never boil a cream version.
Make-Ahead Notes: Chop the vegetables up to 2 days ahead, and add the cream only when serving.
The FDA’s storage chart lists soups at 3 to 4 days in the fridge and 2 to 3 months in the freezer, so I stay inside those windows. I freeze single portions in a muffin tin first, then bag the frozen pucks, so I can reheat exactly what I need.
Storage Trick: Leave 1 inch of headspace in every freezer bag or container. Soup expands as it freezes, and a full container can crack its lid or split at the seam.
Variations and Substitutions
Spicy: Add 1/2 teaspoon crushed red pepper flakes with the garlic. The cream keeps the heat from biting.
Mild and Kid-Friendly: Skip the black pepper and add an extra teaspoon of sugar. Serve it in a mug with cheddar curls on top.
Vegetarian and Dairy-Free: The recipe is already vegetarian. For dairy-free, use olive oil in place of the butter and full-fat canned coconut milk in place of the cream.
Gluten-Free: There is no flour here, so it is gluten-free as written. Check your broth label and serve it with gluten-free bread.
Hearty: Stir in 1 can of rinsed white beans after blending to turn the tomato soup into a meal. For a different kind of thick, cozy bowl, try my hearty lentil soup.
What to Serve With This Tomato Soup
Grilled cheese: Crisp sourdough with melted cheddar is the classic partner. Dunk the corners straight into the bowl.
Crisp salad: A chilled cucumber salad cuts through the creamy richness and adds crunch.
Garlic breadsticks: Roll homemade pizza dough into strips, brush with garlic butter, and bake until golden for dipping.
Garnishes: A swirl of cream, torn basil, and a drizzle of olive oil make each bowl look finished.
Drinks: Sparkling water with a squeeze of lemon keeps the meal light.

Frequently Asked Questions
Can you freeze tomato soup with cream in it?
Yes, but the texture suffers. Cream tends to separate after freezing and leaves the soup slightly grainy. Freeze the tomato soup without cream for 2 to 3 months, then thaw it in the fridge overnight. Warm it slowly over low heat and stir in fresh cream at the end. I do this every fall, and nobody at my table can tell.
Why does my tomato soup curdle every time?
Acid and heat make dairy proteins clump, and cold cream, boiling soup, and low-fat milk all make it worse. Heavy cream at room temperature, tempered with a ladle of hot soup, rarely curdles. Keep the pot below a boil after the cream goes in, and rewarm leftovers on low heat. If it still curdles, blend it for 30 seconds until smooth.
Can I use fresh tomatoes instead of canned for tomato soup?
Yes, if they are ripe. Use about 4 pounds of Roma tomatoes, halved and roasted at 400°F for 35 to 40 minutes to concentrate the flavor. Blend them with the broth, then strain out the skins and seeds. Out of season, fresh tomatoes taste watery, so canned whole tomatoes win. I save fresh ones for August, when they are sweet and cheap.
How do I know my tomato soup is thick enough?
Dip a spoon and run a finger across the back. The line should hold for a second before the soup closes over it. If it runs right back together, simmer uncovered for 5 more minutes. If it is too thick, thin it with 1/4 cup of warm broth at a time. The soup also thickens slightly as it cools, so stop a little thin.
How to make tomato soup less acidic?
Sugar and carrots do most of the work, and a pat of butter helps too. Add sugar 1/2 teaspoon at a time and taste after each one. The goal is to round off the sharp edge, not to make the soup sweet, and some cans need no help at all. Most homemade tomato soup needs 1 to 2 teaspoons total, and a pinch of baking soda is the backup.
Final Thoughts on Tomato Soup
The details that matter most are small ones: medium heat, a short rest before blending, and cream that has lost its chill. Get those three right and the recipe rarely lets you down, even on a rushed night. Taste at the end and salt in small pinches.
My daughter asked for this creamy tomato soup three days in a row last winter, and she packed the leftovers in her school thermos. That was the moment I stopped tinkering with the recipe, and the thermos came back empty every time.
If you loved this recipe, save it to your soup recipes Pinterest board so you can find it easily later!

How to Make Tomato Soup Perfectly Every Time
Ingredients
Equipment
Method
- Melt the butter with the olive oil in the Dutch oven over medium heat. Add the onion, carrots, and 1/2 teaspoon salt, and cook 8 to 10 minutes, until the onion is translucent and a carrot piece mashes easily.
- Stir in the garlic, tomato paste, oregano, and pepper. Cook 2 minutes over medium heat, until the paste darkens to deep brick red and smells sweet.
- Add the tomatoes with their juices, the broth, and the sugar. Crush the tomatoes against the pot until no whole tomatoes remain and the liquid looks evenly red.
- Bring to a gentle boil over medium high heat, then lower to medium low. Simmer uncovered 25 minutes, stirring every 5 minutes, until slightly thickened with small orange rings of oil on top.
- Turn off the heat and rest 5 minutes, until the surface stops bubbling completely.
- Add the basil and blend 1 to 2 minutes, until completely smooth and a shade lighter with no flecks of carrot or skin.
- Whisk 1 cup of the hot soup into the room temperature cream, then pour it back into the pot while stirring. Warm over low heat 3 to 5 minutes without boiling, until steam rises evenly and the color turns creamy coral.
- Add salt 1/4 teaspoon at a time, waiting 30 seconds between additions, until the soup smells sweet and tastes bright rather than salty.
Notes
For a dairy-free version, use olive oil instead of butter and full-fat canned coconut milk instead of cream.
Storage: refrigerate up to 4 days, or freeze without the cream for 2 to 3 months.



