This post contains affiliate links. Read my disclosure policy here.
This Vegan French Onion Soup is comfort food at its best! It's loaded with deeply caramelized onions, broth-soaked bread, and melty vegan cheese that's broiled until bubbly and golden.

French Onion Soup was a childhood favorite of mine, and I was pretty bummed after going vegan that I couldn't have it anymore. Thankfully, I quickly learned how easy it was to veganize. I really enjoy recreating those food memories, and this Vegan French Onion Soup is one of my favorites.
I love making soup, especially during the cooler months. It's usually easy to make, budget-friendly, comforting, and perfect for make-ahead meals. Plus, leftovers are even better the next day!
This Creamy Potato Leek Soup is another family favorite, along with my Butternut Squash & Sweet Potato Soup. They are both hearty, savory & satisfying!
Alright, back to this soup. The onions are the star of the show!
They're what create that deep, rich flavor, so don't rush the caramelization process. As the onions slowly cook, they'll become very soft and deeply golden, developing the sweet, savory flavor that makes this soup so irresistible.
Vegan French Onion Soup - No dairy needed
The homemade vegan mozzarella is soft, creamy, and stretchy, making it the perfect topping for this French onion soup. Once broiled, it gets melty and lightly golden on top without the need for dairy.
It comes together with just a handful of simple ingredients: raw cashews, tapioca starch, nutritional yeast, non-dairy milk, lemon juice, garlic powder, and salt.
The cheese is surprisingly easy to make. Just blend everything until completely smooth, then cook it on the stovetop for a few minutes until it thickens and becomes stretchy.
Spoon it generously over the toasted baguette slices, then place the soup under the broiler until the cheese is bubbly and lightly golden. It adds the perfect creamy contrast to the rich, savory broth and caramelized onions.
And if you want to keep this recipe even easier, you can use your favorite meltable vegan mozzarella instead.

How to make Vegan French Onion Soup
1. Caramelize the onions. Cook the onions covered for about 10 minutes, then uncover and continue cooking until most of the moisture has evaporated. Add the sugar and cook until the onions are very soft, deeply golden, and caramelized. Adjust the heat as needed to prevent burning.
2. Build the flavor. Add the garlic and thyme, then pour in the wine and scrape up the flavorful browned bits from the bottom of the pot. Once the wine has reduced, stir in the flour and cook briefly.
3. Simmer the soup. Stir in the broth, bay leaf, salt, and pepper. Bring to a simmer, then reduce the heat and gently simmer for 10-15 minutes to allow the flavors to come together.
4. Make the vegan mozzarella. Blend the cheese ingredients until completely smooth, then cook in a small saucepan, stirring frequently as it thickens, until stretchy and scoopable.
5. Assemble and broil. Ladle the soup into oven-safe crocks and top with toasted baguette slices and vegan mozzarella. Broil for a few minutes until the cheese is melted and lightly browned.
FAQs
Yes. A dry white wine such as Sauvignon Blanc or Pinot Grigio works well and will give the soup a slightly lighter flavor. Avoid sweet wines, which can make an already naturally sweet onion soup too sweet.
Yes. You can use a few sprigs of fresh thyme in place of the dried thyme. Add the sprigs with the broth and bay leaf, then remove them before serving.
Yes. Make the soup through the simmering step, then cool and refrigerate it separately from the bread and cheese. When you're ready to serve, reheat the soup, toast the baguette slices, assemble the crocks, and broil
Yes. I would freeze just the soup, without the bread or cheese. Once cooled, transfer it to a freezer-safe container and freeze. Thaw it in the refrigerator overnight, then reheat it on the stovetop, then add freshly toasted baguette and cheese before broiling.
If you're using a mild vegetable broth and want a little more savory depth, a small amount of soy sauce or tamari can help. I'd start with 1 teaspoon, taste after the soup has simmered, and add more only if needed. Reduce the added salt accordingly.

More soup recipes to enjoy
Did you make this recipe? Let me know what you think by leaving a star ⭐️⭐️⭐️⭐️⭐️ rating and sharing your feedback in the comment section below. It would make my day!
⭐️ Subscribe to the Vegan Huggs Newsletter and receive weekly recipes straight to your inbox! You'll also receive my FREE eCookbook featuring my top 10 recipes.
Recipe
Vegan French Onion Soup
Ingredients
Soup
- ¼ cup vegan butter or olive oil (or a blend of both)
- 4 medium(2 lbs) yellow onions , sliced ¼-inch thick
- ¾ teaspoon granulated sugar
- 4 cloves garlic , minced
- 1 teaspoon dried thyme
- ¾ cup dry red wine (cabernet, merlot, or pinot noir)
- 3 tablespoons all-purpose flour
- 2 quarts low sodium vegetable broth
- 1 bay leaf
- 1 ½ teaspoons sea salt , more to taste
- Fresh ground pepper , to taste
- 1 baguette , sliced
Cashew Mozzarella (*Optional - See Note)
- ¼ cup raw cashews , soaked if needed (*see note)
- 1 ¼ cup unsweetened plant-based milk
- 2 tablespoons tapioca starch
- 1 tablespoon nutritional yeast
- 2 teaspoons lemon juice
- ½ teaspoon granulated garlic
- ¾ teaspoon sea salt
Recommended Equipment
- Large, Wide-bottomed pot with a lid
- Oven-Safe Soup Crocks (*see note)
- High-Powered Blender (*if making homemade cheese)
Instructions
- In a large pot, melt the butter over medium heat. Add the onions and toss to coat. Cover and cook for about 10 minutes, until the onions are softened, translucent, and beginning to collapse.
- Uncover and cook until most of the excess moisture has evaporated, stirring occasionally. Add the sugar and continue cooking uncovered, stirring more frequently as the onions start to brown. Reduce the heat as needed if they're browning too quickly. Continue cooking until the onions are very soft, deeply golden, and caramelized. This can take 45-60 minutes.
- Add the garlic and thyme. Cook for 1 minute, stirring frequently, until fragrant.
- Add the red wine and bring to a simmer. Cook over medium heat for 3-5 minutes, scraping up any browned bits from the bottom of the pot, until most of the wine has reduced.
- Stir the flour into the onions. Turn the heat down to low and cook for 1 minute. Stir constantly so the flour doesn't burn.
- Add the broth, bay leaf, salt, and pepper. Cover, then raise the heat to get things moving. Now, uncover and reduce the heat to gently simmer for 10-15 minutes to let the flavors develop.
- When the soup is almost finished, prepare the mozzarella. Add all of the cheese ingredients to a high-powered blender. Blend on high until smooth. Pour into a small saucepan over medium heat. Cook for 3-5 minutes, stirring frequently, until the cheese is thick and stretchy. If needed, stir in a splash of milk to loosen.
- Preheat the broiler. Arrange the baguette slices on a baking sheet and broil for 1-2 minutes per side, until lightly crisp. Watch closely to prevent burning. Alternatively, toast the slices in a toaster or toaster oven. Keep the broiler on to finish the soup.
- When the soup is done, remove the bay leaf and taste for seasoning. Add more salt and pepper if needed.
- Ladle the soup into oven-safe crocks or bowls, leaving room for the bread and cheese. Add a slice of toasted baguette and top with a generous scoop of cheese.
- Place the crocks on a rimmed baking sheet and broil for 2-3 minutes, until the cheese is lightly browned and bubbly. Watch carefully to avoid burning.
Notes
- Cashews: If you don't have a high-powered blender such as a Vitamix, you'll need to soften the cashews. Pour boiling water over the cashews, then cover and soak for 20 minutes. Alternatively, soak them in room-temperature water for 2-3 hours or in the fridge overnight. Drain and rinse before using.
- The mozzarella will thicken as it cools. If it becomes too firm to scoop, gently reheat it with a splash of plant milk until soft and scoopable again.
- Cheese option: Store-bought, meltable vegan mozzarella shreds or slices will work in place of homemade.
- Wine: If you prefer to cook without it, use a splash of broth to deglaze the pot, scraping up any browned bits, then proceed with the flour step. The flavor will be slightly different, but still delicious. Not all wines are vegan, so check a vegan wine directory if needed.
- Broth: For richer flavor, use beef-style broth in place of vegetable broth. Broths vary in saltiness and intensity, so if yours is particularly salty or strong, you can replace part of it with water. Start with less added salt and adjust to taste after simmering.
- No oven-safe crocks? You have two options. For the easiest method, ladle the soup into regular bowls and top with the toasted baguette and warm vegan mozzarella. Or, for a lightly browned topping, place the toasted baguette slices on a baking sheet, top with the mozzarella, and broil until lightly browned before adding them to the soup.
- Take your time with the onions: Caramelized onions are key to the soup's rich flavor. Cooking time and heat level will vary depending on your cookware and stovetop, so use their color and texture as your guide. Cook until soft and deeply golden, adjusting the heat slightly higher/lower as needed. A wide-bottomed pot will generally caramelize onions faster than a narrower one.









cCathy
Another great recipe Melissa! Made it tonight! Big flavors! I browned my onions in a slow cooker at high for 4 hours. No oil or sugar necessary. Will be making this again!
Melissa Huggins
Hi Cathy, I'm so glad you loved it! I'll have to try the slow cooker method. Sounds good! Thank you for trying the recipe and sharing feedback. 🙂
Kelby
Delicious! Even the non-vegan husband liked it. It turned out wonderful. I did not have soup crocks that were broiler safe, so I had to improvise and use a Pyrex bowl at only 425*F because Pyrex is not broiler safe (I guess). So I didn't get the crispy cheese effect, but otherwise it was delicious. I've ordered some soup crocks and will be making again soon!
Melissa Huggins
Hi Kelby, I'm so happy it was a hit! Good call on lowering the temp with the Pyrex for safety. You new crocks will get the job done! Thanks for trying the recipe. 🙂
Shannon
The best
Melissa Huggins
So glad you love it Shannon! Thank you for trying it 🙂
Teri
The best vegan French onion soup I have ever made. Incredible recipe, thank you for sharing!
Melissa Huggins
Hi Teri, you feedback made my day! I'm so glad you loved it. Thank you for making it and sharing your feedback. 🙂
Leanne
So good - thank you for the recipe!
Melissa Huggins
you're most welcome, Leanne! I'm so glad you enjoyed it! 🙂
Regine
Hi,
This looks great! Is it possible to put the vegan cheese under the broiler?
Andrea
This has been my go to French onion soup recipe since you came out with it. I have some cooking on the stove right now! Yum!
Melissa Huggins
That is great to know Andrea! hope you enjoyed that batch. :)Happy weekend.
Burgundy
Great base recipe! I didn't follow exactly and I didn't do the "Mozza" because I didn't have all the ingredients but man was it ever good!
Melissa Huggins
I am pleased that you liked it even without the mozzarella topping, Burgundy. 🙂 You are right, the base onion soup is delicious on its own too.
Rachel
Delicious! My non-vegan husband loved it! I used miyokos mozzarella this time, but will make my own next time. Made my own umami croutons in air fryer! Thank you!
Melissa Huggins
Hi Rachel, thank you for trying it out and giving this recipe great feedback! Bet those umami croutons are delicous. Glad you and your husband enjoyed it.
Heather Clark
I am excited to try this recipe. I am not vegan, but I am on a Gluten Free diet and it is impossible to find beef broth that does not contain wheat. Your recipe using vegetable broth is a great alternative. Whenever I make onion soup, I serve it with cheesey nacho chips on the side instead of the baguette as Gluten free bread would just turn to mush if used the regular way.
Melissa Huggins
Hi Heather, I have lots of gluten-free recipes for you to try so I hope you can browse through and make them. 🙂 Let us know how it goes.
Lei
Currently cooking this and it smells amazing so far... but what on earth is a quart? Please change the recipe to litres! Many thanks 🙂 x
Elizabeth
Delicious! I doubled the onions - I think it’s just a bit brothy. Also a little tip, add a splash of balsamic vinegar with the wine and onions when you’re reducing and it somehow makes it a bit richer. Excellent recipe. Will definitely make it again!
Melissa Huggins
Thank you Elizabeth, glad you liked this recipe. 🙂 And thanks for the additional tips too.
Troy Williams
Super Good. I used miyokos mozerrela warmed and spread on the baguette to save a bit of time!
Melissa Huggins
I'm so glad you liked the recipe! I love Miyoko's Mozz! Thanks for giving the recipe a try! 🙂
Ashley
SO GOOD!!! Easy to make, though it takes some patience. I have made it twice and it has been to die for each time. I used store-bought vegan cheese and even my dairy-eating friends loved it and the soup!
Support @ Vegan Huggs
Hi Ashley! We are so happy that you and your friends all love the recipe - thanks so much for stopping by!
Myriam
Simply delicious!
Support @ Vegan Huggs
Hi Myriam! We are happy that you liked the soup! Thanks for trying it out 🙂
Bryanna Connor
Hello!! I am wondering if it is possible to make this recipe without the wine?
Thank you!
Melissa Huggins
Hi Bryanna, yes, you can omit the wine step altogether and you don't need a replacement. If you want to add extra depth of flavor, you can add 1-2 tablespoons of balsamic vinegar. I hope this helps. Thanks for stopping by 🙂