This Low Carb Tomato Soup Recipe is made with roasted fresh tomatoes and fresh basil. It's creamy, decadent, and wholesome. Great for easy lunches or a side for dinner. It's made in a few simple steps with a handful of ingredients!
There's really nothing quite like homemade tomato soup. This recipe makes a very large batch of flavorful soup, and we love making it year-round, especially near the summer's end. It's a great way to use ripe, end-of-season tomatoes!
This recipe is perfect for reheating throughout the week. It can easily be halved for a smaller batch as well. Only 5 grams of net carbs per serving, making it ideal for the keto diet!
❤️Why we love this recipe
- Simple ingredients - This simple soup is made with just a handful of ingredients that can be found at any local grocery store.
- Bursting with tomato flavor - Roasted tomatoes and fresh basil bring loads of flavor to your taste buds.
- One of our favorite comfort foods - What's not to love about hot soup when the cold weather starts to roll in? This delicious soup is one of our favorites, especially at the time of year when it begins to transition from summer to fall.
- Great for meal prep - We make a large batch of this soup every time we make it, so that's it's good to reheat throughout the week. You can scale this recipe up or back as needed as well.
Here are the main ingredients you'll need for this tomato basil soup. You can find full ingredient quantities and nutritional information in the recipe card.
- Onion - Yellow onion, cut into large chunks. These will be roasted in the oven alongside the tomatoes.
- Fresh tomatoes - Use a ripe, plum variety like Roma tomatoes. You can also use cherry tomatoes for a sweeter soup, but this will increase the carb count. Use high-quality canned tomatoes, like San Marzano tomatoes if tomatoes are out-of-season and flavorless.
- Olive oil & unsalted butter - We use both for the best flavor. Butter adds a luscious creaminess that we really enjoy, but you can also just use one or the other.
- Chicken broth - We used chicken bone broth for more protein and nutrients. Chicken stock or vegetable stock can be used for vegetarian diets.
- Kosher salt & black pepper
- Garlic cloves - Minced.
- Italian seasoning
- Fresh basil - Optional.
- Heavy whipping cream & parmesan cheese - Optional, if you prefer a creamy tomato soup like us. You can also serve it with a dollop of sour cream.
** If the soup needs a hint of sweetness to balance the acidity, feel free to sweeten it to taste with your favorite keto-friendly sweetener. We love Swerve. We didn't end up using any, as our tomatoes were quite sweet and in season.
- Wash, core, and quarter the tomatoes.
- Quarter the onions.
- Mince garlic.
- Grate parmesan cheese.
- Preheat the oven to 425°F.
Step 1 - Roast tomatoes and onions
*If using canned tomatoes, skip to step 2.
Add tomatoes and onions to a large baking sheet. Toss with some olive oil, salt, and pepper.
Roast until softened and beginning to wrinkle and char, about 30 minutes, tossing halfway through.
Step 2 - Cook garlic
Meanwhile on the stovetop, in a stock pot or dutch oven, melt butter over medium heat. Add the garlic cloves and stir constantly, to ensure the garlic doesn't burn, and cook for 30 seconds to 1-minute, until garlic is fragrant.
*If using canned tomatoes, cook onion with the garlic until softened and translucent, about 5-7 minutes, then add in canned tomatoes and follow the rest of the instructions.
Step 3 - Add back tomatoes, onions, and liquids
Add the cooked tomatoes and onions to the garlic right away once fragrant to cool the garlic down, then pour in the broth. Season with salt, pepper, and Italian seasoning.
Bring to a boil, then reduce to a simmer and cover. Simmer for 10 minutes.
Step 4 - Add basil
If using, add basil and stir to wilt.
Step 5 - Blend
Using an immersion blender or regular blender, blend the soup until smooth.
Step 6 - Add cream (optional)
Reduce heat to a simmer, and if using, add heavy cream to warm through.
Step 7 - Add parmesan cheese (optional)
If desired, add parmesan cheese in small batches, stirring completely before adding more cheese.
Step 8 - Add final touches
Adjust seasonings to taste, then add to bowls. Garnish with cream, olive oil, salt, pepper, fresh basil, and parmesan to taste. Enjoy!
✨Tips & tricks
- Use the best tasting ingredients you can! Since this recipe has so few ingredients, use the best ones you can find. Whenever possible, use fresh, ripe, in-season tomatoes. With that being said, if tomatoes are out of season, opt for high-quality canned tomatoes instead.
- If adding parmesan, grate it fresh & add to soup slowly. Parmesan is optional, but if using, be sure to add it fresh and slowly in batches, and melt it completely before adding more. Pre-shredded cheese tends to have anti-caking agents and other additives that make it harder to melt smoothly, so grate it fresh if possible.
- Don't boil once the cream is added! Be careful of heating too quickly once cream is adding to the soup (if using). Gently simmer once cream is added to the broth or when reheating later. Heating too much will cause the cream to curdle.
- Don't burn the garlic. Once the tomatoes and onions are roasted, this soup comes together very quickly. You will need to stir the garlic constantly to ensure it doesn't burn. If it burns, you need to start over.
- For a thicker soup, start with only 1 cup of broth. If you prefer a really rich and thick soup, feel free to reduce the amount of liquid added, and add more as needed to thin.
- Strain soup for an extra creamy mouthfeel. This is more of a personal preference. Tomato seeds in the soup can add a bit of slightly bitter flavor, as well as create a texture that some may not enjoy as much. If you like, use a metal sieve to strain out any seeds or chunks in the soup.
- Salt slowly at all stages of cooking, and to taste. Make sure to add salt during every new step of the cooking process for the best flavor. Taste as you go, and add salt as needed. You may need to add more or less depending on your tastebuds, as well as if you use parmesan cheese in the soup.
✏️Substitutions & variations
The ingredients are pretty straightforward, but here are a few simple swaps you can make.
- Dairy-free option - Feel free to use all olive oil in place of butter, as well as omit the heavy cream and parmesan cheese. If you're still hoping for a creamy soup, use coconut cream or full-fat coconut milk in place of heavy cream.
- Paleo - Use coconut cream, omit the butter, and parmesan cheese.
- Vegan - Follow all steps above to make this soup dairy-free, and also be sure to use vegetable broth or stock instead of chicken broth.
- Add red peppers - Adding a few red bell peppers to the mix can help deepen and enhance the flavor a lot.
- Deeper tomato flavor - Add a bit of tomato paste when sauteeing the garlic for a richer, slightly sweeter tomato flavor in the soup.
- Spicy - Add a hint of spice by adding red pepper flakes to the soup.
- Roasted garlic - You can also roast the garlic cloves alongside the tomatoes and onions for a sweeter flavor.
- Thicker soup - Want a thicker, more hearty bowl of soup? Try adding some cream cheese, or xanthan gum to the soup to thicken it according to your preference.
💭Frequently asked questions
Homemade tomato soup has just a handful of ingredients, but store bought versions like Campbell's tomato soup have around 20 net carbs per serving because they are packed with added sugar.
Make it healthier and tastier, and only 5 net carbs per serving, by using straight forward, wholesome ingredients and no added sugar.
Luckily, this recipe is pretty standard and you really don't need much to make it.
- Baking sheets for roasting.
- A set of sharp knives for cutting vegetables. We like this self-sharpening knife set!
- We love our enameled cast iron dutch oven, as it's super easy to clean. You can use any dutch oven or stock pot.
- If using enameled cast iron, make sure to use silicone or wooden utensils, so you don't scrape the bottom of the pan.
- You will need an immersion blender (we love this cordless one!) or a powerful high speed blender.
- We use a Microplane to finely grate the parmesan cheese.
🛒Shop this recipe
This soup saves really well. Store in an airtight container in the fridge for up to 5 days. To freeze, we'd recommend not adding parmesan or cream until time to serve. Allow soup to cool to room temperature before transferring it to a freezer-safe container. Freeze for up to 6 months.
To reheat on the stovetop, add to a stock pot or dutch oven and simmer gently until warmed through.
In the microwave, microwave in 15-20 second intervals until hot.
🌟Leave a review!
Make sure to leave a 5-star review below! This helps other readers find our recipes via Google, and encourages them to try them. Also be sure to leave a comment with your experience!
Keto Tomato Soup
- 4 pounds tomatoes, quartered (Roma, plum, beefsteak, or cherry. Can be substituted for canned tomatoes, see notes)
- 2 medium yellow onions, quartered
- 2 tablespoons olive oil
- 4 teaspoons kosher salt, divided (to taste)
- 4 tablespoons unsalted butter
- 8 cloves garlic, minced
- 2 teaspoons Italian seasoning
- 4 cups chicken broth
- handful of fresh basil (optional)
- 8 ounces heavy cream
- freshly grated parmesan cheese to taste
- olive oil, heavy cream, salt, pepper, parmesan & basil to garnish
- Preheat the oven to 425°F. Add tomatoes and onions to a baking sheet. Toss with olive oil, salt, and pepper. Roast for 30 minutes, until the tomatoes begin to wrinkle and char. (If using canned tomatoes, skip to step 2).
- In a stockpot over medium heat, melt butter. Add garlic cloves, and move around frequently to cook garlic until fragrant, about 1 minute. (If using canned tomatoes, add onions alongside the garlic with a big pinch of salt, and cook until onions are softened and translucent about 5 minutes.)
- Once the garlic is fragrant, immediately add the tomatoes and onions to cool off the garlic to prevent it from burning. Add in broth or stock, along with salt, pepper, and Italian seasoning. Bring mixture to a boil, then reduce to a simmer and cover. Allow mixture to simmer for 10 minutes.
- Add in optional basil, and stir to wilt. Using a blender or an immersion blender, blend the mixture until smooth.
- Reduce heat to low, then stir in heavy cream if using to warm through. Slowly add in freshly grated parmesan cheese in batches, and stir to melt completely before adding more cheese.
- Adjust seasonings to taste, then serve with heavy cream, olive oil, salt, pepper, basil, and parmesan. Enjoy!
- Store leftovers in an airtight container in the fridge for up to 5 days.
- To substitute for canned tomatoes, simply skip the tomato roasting step, and saute onions and garlic together before adding canned tomatoes (with liquid) to the stock pot. Continue on with the remaining steps.
- Be careful not to heat soup with cream or cheese too quickly, as it can curdle the dairy or cause cheese to clump together.