Soups · Published August 28, 2026

Creamy Homemade Tomato Soup

5 from 1 rating

A velvety, roasted tomato soup made from scratch with fresh and canned tomatoes, garlic, and a touch of cream. Richer and more flavorful than anything from a can, and simple enough for any weeknight.

Prep time 15 min
Cook time 45 min
Total time 1 hr
Servings 6
Cuisine American
Jump to Recipe

Homemade tomato soup is one of those recipes that genuinely surprises people the first time they make it from scratch. The difference between the canned version and this one is not subtle – it is the difference between something flat and something with actual depth. The key is roasting the fresh tomatoes first. Thirty minutes in a hot oven concentrates their sugars, drives off excess water, and develops a caramelized quality at the edges that simmering alone never produces. That roasted base is what gives the finished soup its color and its flavor.

This recipe uses both fresh and canned tomatoes, which is the most reliable approach regardless of season. Fresh Roma tomatoes go into the oven; a can of whole peeled tomatoes goes in with the broth. The canned tomatoes add body and consistency, and they are already at peak ripeness. In summer, when good vine tomatoes are genuinely excellent, you can increase the fresh proportion and skip the canned entirely. In winter, the reverse works too – all canned, with a tablespoon of tomato paste to punch up the flavor. The recipe holds up either way.

The cream is optional but worth including. A few tablespoons stirred in at the end rounds off the acidity and gives the soup a silkier texture without making it heavy. If you want to keep it dairy-free, a drizzle of good olive oil on top at serving does something similar. A small pinch of sugar helps balance the acidity of the tomatoes regardless of which fat you use.

One mistake that shows up often: not blending long enough. A minute in a standard blender feels like plenty, but another thirty seconds makes a real difference to the final texture. For a truly smooth result, pass the blended soup through a fine-mesh strainer after blending – it removes any remaining skin fragments and gives the soup that restaurant-level finish you see in the photo.

If you enjoy tomato-forward soups, our Spanish Gazpacho uses raw tomatoes to completely different effect – same vegetable, entirely different outcome and season. For something more substantial with tomato broth as the base, our Classic Italian Minestrone builds on a similar sofrito and is a meal on its own.

Ingredients for Creamy Homemade Tomato Soup

  • 1 kg (2.2 lb) fresh Roma tomatoes, halved lengthwise
  • 4 tablespoons olive oil, divided
  • 1 large onion, roughly chopped
  • 5 garlic cloves, smashed
  • 2 tablespoons tomato paste
  • 400g (14 oz) can whole peeled tomatoes, with juices
  • 750ml (3 cups) vegetable broth
  • 1 teaspoon sugar
  • 1/2 teaspoon dried thyme
  • Salt and black pepper, to taste
  • 120ml (1/2 cup) heavy cream
  • Fresh basil leaves, for serving

How to Make Creamy Homemade Tomato Soup

  1. 1

    Preheat the oven to 200°C (400°F). Line a large baking sheet with parchment paper. Place the fresh tomatoes cut-side up, drizzle with 2 tablespoons of the olive oil, season generously with salt and pepper, and roast for 30-35 minutes until the edges are caramelized and the tomatoes have collapsed and released most of their liquid.

  2. 2

    While the tomatoes roast, heat the remaining 2 tablespoons of olive oil in a large heavy pot over medium heat (about 175°C / 350°F on a thermometer, or just a moderate flame). Add the onion and cook, stirring occasionally, for 8-10 minutes until softened and translucent.

  3. 3

    Add the garlic and tomato paste. Stir and cook for 2 minutes until the tomato paste darkens slightly and smells fragrant.

  4. 4

    Add the roasted tomatoes (scrape in all the juices from the pan), the canned tomatoes with their juices, vegetable broth, sugar, and dried thyme. Stir to combine and bring to a gentle simmer (about 90°C / 195°F).

  5. 5

    Simmer uncovered for 15 minutes to let all the flavors come together.

  6. 6

    Remove from the heat and blend the soup until completely smooth. Use an immersion blender directly in the pot, or transfer in batches to a standing blender (fill no more than halfway, hold the lid down firmly with a folded kitchen towel). For the smoothest result, pass the blended soup through a fine-mesh strainer back into the pot, pressing with a spatula.

  7. 7

    Return the pot to low heat (75°C / 165°F). Stir in the heavy cream. Taste and adjust salt, pepper, and sugar as needed.

  8. 8

    Ladle into bowls and garnish with fresh torn or chiffonade basil. Serve hot with crusty bread.

Nutrition (per serving)

Calories 220
Fat 16g
Carbs 15g
Protein 3g

Where the calories come from

  • Carbs 15g · 28%
  • Protein 3g · 6%
  • Fat 16g · 67%

Nutrition Disclosure

Tips & FAQ

Can I make this soup dairy-free?
Yes. Simply skip the cream at the end. The soup is fully flavorful without it - the roasting step does most of the work. To add a similar richness without dairy, stir in one tablespoon of good extra virgin olive oil per bowl just before serving, or blend in a small amount of soaked raw cashews with the soup (about 50g / 1/3 cup, soaked in water for 30 minutes and drained) for a naturally creamy texture.
Can I use all canned tomatoes instead of fresh?
Yes. Use two 400g (14 oz) cans of whole peeled tomatoes in place of the fresh tomatoes and skip the roasting step entirely. To compensate for the depth that roasting adds, stir an extra tablespoon of tomato paste into the onions and let it cook down for an additional 2-3 minutes before adding the liquid. The result is slightly less complex but still a very good soup - and much faster, with a total time closer to 30 minutes.
Why is my tomato soup bitter or too acidic?
Two likely causes: the garlic or tomato paste burned while sauteing (keep the heat moderate and stir often), or the tomatoes are simply quite acidic. Both are easy to fix. Add sugar in small increments - half a teaspoon at a time - and taste after each addition until the sharpness rounds out. A pinch of baking soda (no more than 1/8 teaspoon) also neutralizes acidity quickly, but use it carefully as too much changes the flavor noticeably.
Can I freeze this soup?
Yes, and it freezes very well. Cool the soup completely before transferring to airtight containers or freezer bags. Freeze for up to 3 months. Thaw overnight in the refrigerator and reheat gently over low heat, stirring often. If the cream was added before freezing, the soup may separate slightly after thawing - a quick blend with an immersion blender after reheating brings it back together. Alternatively, freeze the soup before adding the cream and stir it in fresh when reheating.
What is the best way to get a very smooth texture?
Blend for longer than you think is necessary - at least 90 seconds in a standing blender at high speed. Then pass the soup through a fine-mesh strainer, pressing firmly with the back of a ladle or a spatula to push the liquid through and leave behind any remaining skin and seed fragments. This two-step process gives the silkiest result and only takes an extra two minutes.

More Soups

Homemade meatball soup with potatoes and fresh dill, served with crusty bread

Soups · 1 hr 5 min

5 from 1 rating

Homemade Meatball Soup with Potatoes and Fresh Dill

A hearty, clear-broth meatball soup with tender beef meatballs, potato chunks, carrots, and a generous handful of fresh dill. Simple, comforting, and ready in just over an hour.

Ukrainian homemade borscht with deep crimson broth, topped with sour cream and fresh parsley, served on a dark surface with a jar of sour cream alongside

Soups · 2 hrs 25 min

5 from 1 rating

Ukrainian Homemade Borscht Soup with Sour Cream

Classic Ukrainian borscht made with beef on the bone, beets, cabbage, potatoes, and a proper vegetable sauté that keeps the broth that deep crimson red. Served with sour cream and fresh parsley.

Spanish Salmorejo cold tomato soup, topped with diced jamón serrano and crumbled hard-boiled egg

Soups · 2 hrs 20 min

5 from 1 rating

Spanish Salmorejo Cold Tomato Soup

Salmorejo is a thick, silky Spanish cold tomato soup from Córdoba made with just ripe tomatoes, bread, garlic, and olive oil, then topped with jamón serrano and hard-boiled egg. No cooking required.

Related searches

homemade tomato soup creamy tomato soup roasted tomato soup tomato soup from scratch tomato soup with fresh basil tomato soup recipe best homemade tomato soup easy tomato soup tomato basil soup tomato soup without canned soup