The Best Dairy-Free Creamy Tomato Soup
Creamy tomato soup (and its forever sidekick, grilled cheese) will always be a comfort-food classic — and this dairy-free version brings a little extra joy to the bowl. Think cozy goodness with a serious nutrition glow-up!

That gorgeous color means nutrition business
That vibrant orange-red color? It’s not just pretty—it’s a clue. This soup stars antioxidant-rich tomatoes and beta-carotene-packed carrots, then gets its luscious, velvety texture from a surprise ingredient most people never guess: either white beans or tofu (your call!)





I blend a can of drained, rinsed white beans (cannellini, navy, or great Northern) or tofu right in instead of milk or cream, which keeps the soup dairy-free and adds staying power without changing the classic tomato-soup vibe. And if tofu isn’t your thing, no worries it’s not for everyone— just stick with the beans! The beans work beautifully, delivering the same creamy finish plus a fiber boost.
And if you want to take the flavor up a notch, a little oregano, Italian seasoning, or smoky paprika adds that subtle, “restaurant-y” vibe—without changing the simplicity of the recipe.


My favorite creamy soup hack
Swapping beans or tofu for dairy is one of my favorite “nutritionist-in-the-kitchen” tricks — a move I’ve leaned on for years to make soups more nourishing without sacrificing comfort. I use the same approach in my Non-Dairy Cream of Mushroom Soup (a total fan favorite!), and it’s also why my Creamy Broccoli Soup disappears fast at the Bauer house — even when I skip the Greek yogurt altogether for a dairy-free version.
Serve this tomato soup for a cozy lunch alongside a hearty salad, or slurp it up as a starter to a more elaborate meal. Of course, you can also make it dinner-worthy with a grilled cheese!

For more creamy soup recipes, try my Potato Leek Soup and Butternut Squash Soup!

The Best Dairy-Free Creamy Tomato Soup
Ingredients
- 1 tablespoon olive oil
- 1 medium onion, diced
- 2 medium carrots, peeled and chopped
- 2 cloves garlic, minced (or ½ teaspoon garlic powder)
- 3 tablespoons tomato paste
- 1 (28-ounce) can diced fire-roasted tomatoes
- Water, use the empty tomato can
- 1 (15-ounce) can white beans (Great Northern, navy, or cannellini), drained and rinsed OR 8 ounces tofu (See Notes—silken, firm, or extra-firm)
- Salt, to taste
- Ground black pepper, to taste
- 1–2 teaspoons balsamic vinegar or fresh lemon juice, optional
- 1-2 tbsp dairy or dairy-free yogurt or sour cream, optional for swirling at end
Instructions
- Sauté the veggies: Heat the olive oil in a large pot or Dutch oven over medium heat. Add the onion and carrots and sauté until tender, about 6–8 minutes, stirring occasionally. Add the garlic toward the very end and cook for 30–60 seconds, just until fragrant. (If the pot is very hot or the garlic starts to brown quickly, reduce to medium-low.)
- Add the tomato paste: Stir in the tomato paste and cook, stirring constantly, for 1 minute.
- Simmer: Add the canned tomatoes. Fill the empty 28oz tomato can with water and pour it into the pot. Bring to a boil, then cover, reduce heat to low (small bubbles, not a rolling boil), and simmer for 15 minutes.
- Add beans or tofu: Stir in the tofu (or white beans) and simmer 5-10 minutes more, uncovered, to warm through and let flavors meld.
- Blend + season: Purée until completely smooth using an immersion blender, or carefully blend in batches in a countertop blender. Season with salt and black pepper to taste.
- Optional finishing step (makes it pop!): Stir in 1–2 teaspoons balsamic vinegar or fresh lemon juice to brighten the flavor. Start with 1 teaspoon, taste, and add more if you’d like. You can also swirl in a tbsp yogurt or sour cream (dairy or dairy-free) at the end for extra creaminess tang.
Notes
- White beans = super creamy, subtly sweet, very “classic tomato soup.”
- Silken tofu = the smoothest/most velvety (most cream-like).
- Firm/extra-firm tofu = thicker texture; still delicious, just a bit less silky.

Can you use something other than tofu to thicken the soup that would also be healthy?
Hi Diane. Yes, you can use a can of drained and rinsed white beans (like Northern, navy, cannellini, etc.). Please let us know if you decide to try it—we’d love to hear your thoughts!
—Team Joy
My wife and I love your reciepes.I look forward to reading your e-mails and making your reciepes. Thank You
Hi Bruce! Oh, you just made my day! I’m so happy to hear that you and your wife are loving my recipes—it’s truly an honor to be part of your kitchen! I’m thrilled that my emails bring a little extra flavor and fun to your cooking. Thank YOU so much—I love having you here!
Can you use regular tomatoes instead of fire roasted or will it dilute the taste too much?
Hi Andrea! I’ve never tried this soup with regular, chopped tomatoes, but it should work perfectly…. and you can always add more seasoning at the end if you find your soup needs more flavor. Hoping you love this one!
I haven’t made this soup yet (but certainly will!), but I wanted to ask: What is the white swirl in the soup in your photos? Is it tofu that did not get blended?
Marsha, I’m so glad you asked! That white swirl is actually a non-dairy coconut yogurt…. I added a little swirl on top as a garnish to make the photos look extra pretty. You definitely don’t need it for the soup to be delicious! AND you actually made me realize I should list it as an optional garnish in the recipe (thank you for that!). It can actually be any dairy or dairy-free yogurt or light sour cream. So grateful you flagged it — and I hope you love the soup when you make it! xx
The nutrition info lists the calories for your recipes per serving but almost never lists the size of the serving. Is it possible to add that to your recipes? I like many of your recipes but it’s very frustrating trying to calculate the nutrition for a meal when you don’t know how much to work with.
Hi Sue! Thank you for pointing this out…we try to always include the total yield at the top of the recipe card, and then the specific serving size next to the nutrition info at the bottom… but every now and then I miss adding that detail, and I’m sorry for the frustration and extra work it causes on your end.
For this soup, the nutrition information is now listed for a 1-cup serving (I just added that in, thanks to your note!). In general, with soups and stews I typically portion them in 1- or 2-cup servings, since it’s easy for people to adjust up or down depending on appetite and goals.
And if you ever spot missing numbers like this again, please tell me. I’ll be quick to add them in. Apologies again for the hassle, and thank you for being such a thoughtful label reader!
Hi Joy, love all your recipes. I make your Minestrone soup all the time. I just made a different tomato soup that was seriously lacking in flavor. I googled what other ingredients i should add, and your soup has those ingredients…carrots,tomato paste, beans, lemon or balsamic vinegar. Looking forward to making this soup soon!,
Oh I love this note, Barb — thank you!! And I’m so happy my Minestrone is in your regular rotation… that makes me smile 😉
Tomato soup can be so disappointing when it’s flat, so you’re exactly on the right track with those flavor builders. The carrots add natural sweetness, the tomato paste brings that deep “slow-simmered” richness, the beans make it creamy and hearty, and that little splash of lemon or balsamic at the end is the secret “wake it up” moment. In fact, if you still have some leftover from your previous batch, maybe play with seasonings to try and preserve it?
Excited for you to try my version…please come back and tell me what you think (and if you add your own fun twist!). xx