Go Back
+ servings
Logo of The Forked Spoon showing Spork
A close up of a bowl of Tomato Basil Soup
4.93 from 80 votes

Homemade Tomato Basil Soup Recipe

With fresh roasted tomatoes, garlic, caramelized onions, and basil, this delicious Homemade Tomato Basil Soup Recipe is easily enjoyed year-round.
Prep Time10 mins
Cook Time1 hr 10 mins
Total Time1 hr 20 mins
Servings: 6 servings
Calories: 198kcal


  • 4 pounds plum tomatoes (Roma tomatoes) halved lengthwise
  • 6 cloves garlic peeled
  • 3 tablespoon olive oil
  • 2 teaspoon salt divided
  • 1 teaspoon freshly ground black pepper
  • 1 tablespoon butter (or dairy-free alternative)
  • 2 onions sliced
  • 56 oz whole peeled tomatoes 2 (28 oz cans) juices reserved
  • 1 cup fresh basil plus more for serving
  • 3.5 cups low-sodium vegetable broth or water, chicken broth, or chicken stock, plus more, as needed
  • 1 teaspoon granulated sugar optional
  • 1 teaspoon red chili flakes plus more, if desired or less if you're sensitive to spicy food
  • heavy cream or coconut milk for serving, optional
  • croutons or crackers for serving, optional


  • Roast the tomatoes. Preheat oven to 425 degrees F and line two large baking sheets with parchment paper. Slice each tomato in half lengthwise and place on the prepared baking sheets in a single layer. Add the whole cloves of garlic to each baking sheet. Drizzle with 2 tablespoons of olive oil and season liberally with salt and pepper. Transfer your tomatoes to the preheated oven and roast for approximately 45 minutes (Roma tomatoes) or 20 minutes (cherry tomatoes). Tomatoes are ready when the skin is tender and begin to burst.
  • Cook the onions. Heat the remaining tablespoon of olive oil and 1 tablespoon of butter in a large pot or Dutch oven over medium-high heat. Add the onions and cook for approximately 15 minutes or until starting to brown and caramelize. Reduce to medium heat if onions start to burn. Stir often.
  • Add the tomatoes. Add the canned tomatoes, fresh basil, broth, sugar, and red chili flakes to the pot. Bring to a low simmer, reduce heat to low, and sauté until the tomatoes in the oven have finished roasting. Add the oven-roasted tomatoes to the pot with their juices, and return to a simmer.
  • Simmer. Simmer the soup uncovered and over low heat for approximately 20 minutes. 
  • Puree. Work in batches and carefully blend your homemade tomato soup in a high-speed blender. Avoid over-blending (especially if you have a Vitamix or Blendtec which will turn your soup into a watery liquid rather than a luxurious soup). You may also use a handheld food processor (immersion blender).
  • Season and serve. Return soup to your pot and season with additional salt and pepper, to taste. Garnish with fresh basil, crunchy croutons, or a splash of fresh cream, if desired. Enjoy!


If you prefer not to add canned tomatoes, I recommend doubling the total amount of fresh tomatoes. The easiest way to peel tomatoes (should you prefer not to roast all of the tomatoes) is to place them in a pot filled with boiling water for approximately 30 seconds or when the skin starts to wrinkle. Transfer the tomatoes to a bowl of ice water to stop cooking and allow them to sit for 3-4 minutes, or until chilled. The tomatoes should still be very firm, with the skin wrinkled and starting to peeling off. Continue to peel the skins off with your hands.
Can this soup be frozen for later use? I have not personally tried to freeze this soup, however, several readers have commented that it is wonderful even after freezing and reheating.
How spicy is this soup? I think this depends on how sensitive you are to red chili flakes. If you know that you, or someone in your family, are sensitive to spicy foods, perhaps leave the red chili flakes out, or start with less.
Optional garnishes: red pepper flakes, fresh basil, heavy cream, coconut milk, parmesan cheese, homemade croutons, crackers


Calories: 198kcal | Carbohydrates: 26g | Protein: 5g | Fat: 9g | Saturated Fat: 2g | Cholesterol: 5mg | Sodium: 1192mg | Potassium: 1280mg | Fiber: 7g | Sugar: 16g | Vitamin A: 3195IU | Vitamin C: 69.5mg | Calcium: 131mg | Iron: 3.7mg
Did you make this recipe?Tag @theforkedspoon and hashtag it #theforkedspoon and please leave your star rating in the comment section on this post.