Go Back
+ servings
Bowl of tomato soup garnished with fresh basil, hemp seeds, and drizzle of balsamic vinegar.
Print Recipe
5 from 1 vote

Creamy Vegan Tomato Soup

Quick and easy, this creamy Vegan Tomato Soup comes together in just 30 minutes and has added healthy plant protein to boot. Perfect for a weeknight meal. 
Prep Time10 mins
Cook Time20 mins
Total Time30 mins
Course: Entrées, Soup
Cuisine: American
Diet: Vegan
Servings: 4
Calories: 166kcal


  • ¼ cup water or broth for sautéing or 2 tablespoons extra virgin olive oil
  • 1 yellow onion diced
  • 2-3 garlic cloves minced
  • 1 can (15 oz) cannellini beans or chickpeas
  • 1 can (28 oz) crushed tomatoes or whole peeled or diced, whatever you have in your pantry
  • 1 teaspoon salt or to taste
  • ¼ teaspoon pepper or to taste
  • 2 teaspoons dried basil
  • 1 cup low-sodium vegetable broth or water
  • 1 cup unsweetened plain non-dairy milk plus more to thin, if needed. I like almond, oat, or light coconut milk best.
  • 1-2 tablespoons balsamic vinegar (optional)


  • Sauté onion in water or broth (or oil) over medium heat until softened, about 5 to 6 minutes. Add garlic and spices and sauté 1 minute.
  • Add beans, tomatoes and vegetable broth (or water) and stir to combine. Increase heat and bring to a boil, then turn down heat to medium-low and simmer for about 10 minutes.
  • Take off the heat, add the non-dairy milk, and purée with an immersion blender until smooth. Alternately, you can transfer the soup to a blender and purée. If needed, add additional almond milk or water to thin to your desired consistency.
  • Add more salt/pepper/basil to taste, if desired. Add the balsamic vinegar, if using, and stir.
  • Serve hot.


~ Sauté the onions until they're nice and soft.
~ Don't add the garlic until the onions are soft, otherwise the garlic may burn.
~ Sauté the dried basil for a minute or two before adding the rest of the ingredients to allow the allows to release and get flavorful.
~ Rinse the beans well before adding to the soup to remove excess sodium and potential gas-causing compounds.
~ Be sure to use an unsweetened, unflavored variety of milk. I like almond, oat or soy best. Light coconut milk will also work, it's creamy without a pronounced coconut flavor. I would advise against full fat coconut milk as the coconut flavor will be too strong. I would also advise against rice milk as it's very thin.
~ Purée the soup until smooth...and then purée another minute to ensure everything gets blended up perfectly. If you don't have an immersion blender, you can you carefully transfer the soup to a blender to purée. You may have to do that in batches depending on how big your blender is.
~ Taste and adjust seasonings to your liking.
~ Pair the soup with a salad or sandwich for a heartier meal. Or serve it over noodles for a super kid-friendly option.


Calories: 166kcal | Carbohydrates: 27g | Protein: 8g | Fat: 2g | Sodium: 887mg | Potassium: 241mg | Fiber: 7g | Sugar: 6g | Vitamin A: 1600IU | Vitamin C: 39.6mg | Calcium: 80mg | Iron: 2.7mg