Borscht Recipe (Vegetarian Beet Soup)

This family borscht recipe is the real deal — a Ukrainian beetroot soup that’s deeply colored, warmly spiced, and honestly one of the most satisfying things you can make on a cold day.

Please note that this post has recently been updated with new photos, video, and more details.


Borscht Recipe (Vegetarian Beet Soup).
  • Save

Jump to: ℹ️ Overview | 🛒 Ingredients | 📷 How To Make | 📹 Watch The Video | 👩‍🍳 Recipe Tips | 🥗 Serving Suggestions | 📝Full Recipe Card | 🍽 More Hearty Soup Recipes


At A Glance

  • ⏱ Ready In: 55 minutes
  • 🍽 Serves: 6–8
  • 🌱 Diet: Vegetarian, Vegan-friendly (with coconut yogurt), Gluten-Free, Dairy-Free
  • 💪 Nutrition Highlights: High in fiber, plant-based protein from white beans, rich in vitamins from beets and cabbage
  • 🥕 Main Ingredients: Fresh beets, cabbage, potato, cannellini beans, dill
  • 🔥 Flavor Profile: Earthy, sweet-tangy, gently spiced with warm coriander and paprika, bright from apple cider vinegar
  • 🧊 Meal-Prep Friendly: Keeps 5–6 days in the fridge; freezes up to 3 months. Tastes even better the next day.
  • Best Served With: Toasted rye bread or sourdough, sour cream or coconut yogurt, fresh dill

This is my family’s borscht recipe — the version I grew up eating, updated with a few tweaks that I’ve landed on after making it countless times. We always had borscht on the stove in winter when I was a kid, and the smell of beets and dill together still feels like home.

The cannellini beans add body and protein without muddying that gorgeous deep red color. The soup is earthy and sweet from the beets, with a brightness that comes from apple cider vinegar and a warmth from paprika and ground coriander that you won’t find in every borscht recipe.

Grating the beets and carrot (rather than chopping) is what my grandma and mom have always done — it gives the soup a more even texture and helps everything absorb that beautiful color. The other thing I won’t skip: resting the finished soup with the lid on and a generous handful of fresh dill stirred through. It makes a real difference to the final flavor.

👩‍🍳You might also like these recipes: vinegret beet salad (also Ukrainian), potato and leek soup, roasted beets in vinaigrette, beetroot, avocado & edamame salad, Greek chickpea soup, or Ukrainian cabbage pie.

Beetroot Borscht Soup
  • Save

What You’ll Need

Here is what you’ll need for this borscht recipe. Find the full measurements in the recipe card below.

The base:

  • Olive oil — for sautéing; any neutral cooking oil works here
  • Onion — finely diced for a sweet, savory base
  • Celery — adds depth to the broth without overpowering the beets
  • Garlic — fresh and minced, not jarred if you can help it

Vegetables & beans

  • Fresh beets (beetroot) — the star of the show; use fresh, not pre-cooked, for the best color and flavor. Grate them on the large holes of a box grater. Pre-cooked or pickled beets work in a pinch — but omit the vinegar if using those.
  • Carrot — grated to match the beets; adds natural sweetness.
  • White potato — cut into small, even cubes so they cook at the same rate; waxy varieties hold their shape better.
  • White cabbage — slice it thin, like you would for coleslaw, and cut any long shreds in half. Don’t skip the cabbage — it adds texture and soaks up the broth beautifully.
  • Cannellini beans — added at the end so they stay whole; navy, great northern, or Borlotti all work here. Leave them out if you prefer a bean-free version. I love the added fiber and protein.

The flavor builders:

  • Tomato paste — adds richness and depth.
  • Paprika — mild, sweet paprika works well here; smoked paprika gives a slightly different (also delicious) result.
  • Ground coriander seed — a slightly unexpected addition that rounds out the earthiness of the beets.
  • Sugar — just a teaspoon to balance the acidity.
  • Apple cider vinegar — this is what keeps the soup bright red and adds that characteristic tang; white wine vinegar is a fine swap.
  • Bay leaves — for background warmth; don’t forget to fish them out before serving.
  • Vegetable stock — quality matters here; a good stock makes the whole soup taste better.

To serve:

  • Fresh dill — non-negotiable in my opinion; stir a big handful in at the end and keep more for the bowls.
  • Sour cream or coconut yogurt — traditional, creamy, and wonderful; this is what makes each bowl feel like a proper meal.

How To Make Borscht Soup

Find the full recipe and nutritional information below. Here are some handy step-by-step photos for how to make this vegetarian borscht recipe.

  • Start by prepping everything before you turn on the stove: grate the beets and carrot, thinly slice the cabbage, dice the onion and celery, cut the potatoes into small even cubes, and drain and rinse your beans. Borscht is a soup that rewards mise en place.
  • Heat olive oil in a large, heavy-bottomed pot or Dutch oven over medium-high heat. Add the diced onion and celery and sauté for 4–5 minutes until softened and lightly golden.
  • Add the grated carrot, grated beets, minced garlic, and a teaspoon of salt. Stir to combine and cook for another 2–3 minutes. The mixture will turn a deep, stunning red at this point. Don’t skip this sautéing step.
  • Add the cubed potatoes, sliced cabbage, tomato paste, paprika, ground coriander, sugar, apple cider vinegar, bay leaves, and black pepper. Pour in the vegetable stock and stir everything together well.
  • Bring the soup to a boil, then reduce the heat to low, cover with a lid, and simmer for 20–25 minutes until the potatoes are completely tender.
  • In the last 5 minutes of cooking, stir in the drained cannellini beans.
  • Remove the bay leaves. Taste and adjust salt — depending on your stock, you may need an extra pinch.
  • Turn off the heat, stir through a generous handful of fresh dill, replace the lid, and let the soup rest for 10 minutes. This step is important — don’t skip it.
  • Ladle into bowls and serve with a big dollop of sour cream or coconut yogurt and extra dill. The soup is even better on day two.
Add diced onion and celery in pot, add the grated carrot, grated beets, minced garlic, and a teaspoon of salt, add the cubed potatoes, sliced cabbage, tomato paste, paprika, ground coriander, sugar, apple cider vinegar, bay leaves, and black pepper, pour in the vegetable stock, stir in the drained cannellini beans, remove bay leaves, and add extra dill.
  • Save
Beet Soup with Beans and Dill
  • Save

Watch The Video

Recipe Tips

  • Grate, don’t chop. Grating the beets and carrot gives the soup a more even texture and deeper color. Chopped beets work, but the result is different — chunkier and less vibrant.
  • Use fresh beets. Pre-cooked beets are fine in a pinch, but fresh makes a noticeably better soup. If you use pre-cooked or pickled beets, skip the vinegar.
  • Don’t skip the vinegar. It’s what keeps the soup that striking deep red and adds the characteristic tang that makes borscht taste like borscht. Without it, the color dulls, and the flavor falls flat.
  • The resting step matters. Turning off the heat and letting the soup sit for 10 minutes with dill and the lid on is a step I’d never rush. The flavors settle, and the dill infuses without going murky green.
  • Swap the beans or leave them out. Cannellini are my pick, but navy beans, great northern, or borlotti all work. For a very traditional borscht, skip the beans entirely.
  • Make it vegan. Use coconut yogurt instead of sour cream for serving — it works beautifully.
  • Storage: Keeps in the fridge for 5–6 days in an airtight container. Freezes well for up to 3 months. Reheat on the stove over medium heat. The flavor genuinely improves by day two.
  • Make-ahead: This is one of the best make-ahead soups around — make a big pot on Sunday, and you’re set for lunches and dinners most of the week.
Ukrainian Borscht Recipe
  • Save

Serving Suggestions

Borscht is traditionally served with something to scoop up the broth — toasted rye bread or sourdough are both perfect. A dollop of sour cream (or dairy-free yogurt if keeping it vegan) is classic and really rounds out the richness of the soup. Spring onions and extra fresh dill on the side are both welcome.

If you’re serving it to guests, a small pot of sour cream at the table alongside a crusty loaf makes the whole thing feel like a proper event. Traditionally, borscht would be served alongside salo (cured lard) or thinly sliced speck, but since this is a vegetarian version, a simple, good-quality bread is all you really need.

💬 If you’ve tried this borscht recipe or any other recipe on the blog then don’t forget to rate the recipe and let me know how you got on in the comments below, I love hearing from you! You can also FOLLOW ME on Instagram, Facebook, Pinterest, YouTube, and or sign up to my Newsletter to see more of my delicious food.

Want to Save This Recipe?

Enter your email & I’ll send it to your inbox. Plus, get great new recipes from me every week!

Save Recipe

By submitting this form, you consent to receive emails from Cooked & Loved

Borscht Recipe (Vegetarian Beet Soup)
  • Save

Borscht Recipe (Vegetarian Beet Soup)

Prep Time: 20 minutes
Cook Time: 35 minutes
Total Time: 55 minutes
Author: Irena Macri
Servings: 6 –8 servings
Course: Soup, Main, Lunch, Dinner
Cuisine: Ukrainian, CuisineEastern European
Print Pin
5 from 1 vote
Calories: 220kcal
A deeply colored, warmly spiced Ukrainian beet soup made with fresh beets, cabbage, potato, and cannellini beans. This is my family's borscht recipe — hearty, flavorful, and genuinely better the next day. Find step-by-step photos and more recipe tips above.

Video

Ingredients 

  • 2 tablespoons olive oil
  • 1 large onion peeled and finely diced
  • 1 large celery stick diced small
  • 3 medium beets about 14 oz / 400 grams, peeled and grated on the large holes of a box grater
  • 1 large carrot about 5 oz / 140 grams, peeled and grated
  • 3 cloves garlic finely minced
  • 1 teaspoon salt plus more to taste
  • 3 medium white potatoes about 14 oz / 400 grams, peeled and cut into small cubes
  • medium white cabbage about 10 oz / 300 grams, thinly sliced
  • 6 cups vegetable stock 1.5 liters
  • 2 tablespoons tomato paste
  • 1 teaspoon paprika
  • 1 teaspoon ground coriander seed
  • 1 teaspoon sugar
  • 3 tablespoons apple cider vinegar or white wine vinegar
  • 2 bay leaves
  • ½ teaspoon ground black pepper
  • 1 can cannellini beans 15 oz / 425 grams, drained and rinsed

To serve:

  • Generous bunch of fresh dill roughly chopped
  • Sour cream or coconut yogurt optional but traditional

Instructions

  • Prep all your vegetables before you start cooking: grate the beets and carrot, thinly slice the cabbage, dice the onion and celery finely, and cut the potatoes into small, even cubes. Drain and rinse the cannellini beans.
  • Heat the olive oil in a large, heavy-bottomed pot or Dutch oven over medium-high heat. Add the diced onion and celery and sauté for 4–5 minutes, stirring occasionally, until softened and lightly golden.
  • Add the grated carrot, grated beets, minced garlic, and 1 teaspoon of salt. Stir to combine and cook for 2–3 more minutes until the beets begin to soften slightly. The mixture will turn a deep, beautiful red.
  • Add the cubed potatoes, sliced cabbage, tomato paste, paprika, ground coriander, sugar, apple cider vinegar, bay leaves, and black pepper. Pour in the vegetable stock and stir everything together well.
  • Increase the heat and bring the soup to a boil. Once boiling, reduce the heat to low, cover with a lid, and simmer for 20–25 minutes until the potatoes are completely tender.
  • In the last 5 minutes, add the drained cannellini beans.
  • Remove the bay leaves. Taste and adjust salt — depending on your stock, you may need an extra pinch or two.
  • Turn off the heat completely. Add a generous handful of chopped fresh dill, replace the lid, and let the soup rest for 10 minutes. This step is important — it lets the dill infuse and the flavors settle.
  • Ladle into bowls and serve with a dollop of sour cream or coconut yogurt and extra dill. The soup tastes even better the next day.

Notes

Important Ingredient Tips: Use fresh beets, not pre-cooked, unless you’re in a pinch. If you do use pre-cooked or pickled beets, omit the vinegar from the recipe. Cannellini beans can be swapped for any white bean (navy, great northern, borlotti) or left out entirely. Make sure the cabbage is sliced thin — about the same thickness you’d use for coleslaw — and cut any longer shreds in half.
Key Recipe Tips: Grate both the beets and carrot rather than chopping — this gives the soup a more even, deep color and texture. Don’t skip the resting step at the end with the lid on. Good quality vegetable stock makes a noticeable difference here. The vinegar is what keeps the soup that striking red color and adds the characteristic tang — don’t skip it.
Storage Tips: Keeps well in the fridge in an airtight container for 5–6 days. The flavors deepen and improve on day 2. Freezes well for up to 3 months. Reheat on the stove over medium heat.
Make-Ahead Tips: This is an ideal make-ahead soup — it genuinely gets better overnight. Make a big batch on Sunday and you have lunches or dinners sorted for most of the week.
FAQs:
What is borscht made of? Borscht is a traditional Eastern European soup made with beets as the main ingredient, which gives it its characteristic deep red color. Most versions also include cabbage, potato, onion, carrot, and garlic. This vegetarian version adds cannellini beans for protein, plus tomato paste, apple cider vinegar, and warm spices.
Is borscht vegetarian? Traditional borscht is often made with beef stock or braised beef, but this version is fully vegetarian — and vegan if you use coconut yogurt instead of sour cream for serving.
What does borscht taste like? Borscht is earthy, slightly sweet, and tangy. The beets give it a natural sweetness and deep color, the vinegar adds brightness and tang, and the spices add warmth. It’s a hearty, filling soup rather than a light broth.
Why is my borscht not red? If your borscht turns pink or brown during cooking, it’s usually because the vinegar was left out or the beets weren’t fresh. Vinegar is essential for keeping that gorgeous deep red color — don’t skip it.
Can you freeze borscht? Yes, borscht freezes beautifully. Let it cool completely, then store in airtight containers or freezer bags for up to 3 months. Reheat gently on the stove.
Can I make borscht without cabbage? You can, though it changes the texture and body of the soup. Cabbage adds a softness and absorbs the broth in a way that’s fairly unique — but if you don’t have it, extra potato or even some shredded silverbeet works in a pinch.

Nutrition

Calories: 220kcal | Carbohydrates: 40g | Protein: 8g | Fat: 5g | Saturated Fat: 1g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 3g | Sodium: 1582mg | Potassium: 696mg | Fiber: 9g | Sugar: 9g | Vitamin A: 2515IU | Vitamin C: 40mg | Calcium: 95mg | Iron: 3mg
Keywords: Borscht, borscht recipe, borscht soup, beetroot soup borscht, vegetarian borscht, Ukrainian borscht recipe, beet soup
Tried this recipe?I love hearing from you! Please leave a rating or a comment about your experience. You can also follow me on Instagram, Facebook, Pinterest, YouTube, and or sign up to my Newsletter for more delicious food. Leave a review here.

More Hearty Soup Recipes

  • Save
Irena Macri
By Irena Macri

About the author:Hi, I’m Irena Macri. I share delicious recipes that I have cooked and loved. I am a published cookbook author, have been food blogging for over 10 years and have a Diploma in Nutrition. You will find many healthy recipes as well as my favourite comfort food. More about me here | Subscribe to my newsletter and freebies

Comment or Rate This Recipe

Made the recipe? Please leave a rating as it helps other readers to discover this dish. You don’t need to leave a comment if rating a recipe, unless it’s 3 stars or below.

5 from 1 vote

Leave a Reply

Your email address will not be published. Required fields are marked *

Click on the stars to rate this recipe!




Comments

12 Comments
  1. Hello,

    Can you blend this recipe? Also is there a reason why the sodium is so high? Thank you in advance for the help.

    1. Hi Kat, it’s not blended traditionally but you can absolutely do so. The flavour will still be the same, just less fibre. The nutrition calculator probably uses vegetable stock that’s quite in salt, hence it is skewing the sodium. Use low-sodium stock or homemade and you should be golden. You can also reduce added salt amount and season to taste at the end.

  2. Want to try this, I’m super excited about it too! Thank you, just wish I could alter the serving size.

  3. Fore some reason borscht turned me off as a child–cannot tell you why but think your recipe will help me get over this irrational feeling. Have a bunch of garden fresh, organic beets in the refrig as well as cabbage and carrots and onions–all home/local grown and organic. No dill but lots of fennel weed which often substitutes in my kitchen. Love the idea of other root veggies than potatoes. You mention parsnips but there is a big turnip also available as well as a good size kohlrabi both wondering how to be used. So thankx for this recipe and can’t wait to try it.

    1. I think you can throw in any root vegetables you like, including kohlrabi which is part of the cabbage family anyway. It will work well!

  4. My half Russian/ Ukraine husband said it was very close to his mother’s borscht. I used pomegranate molasses instead of vinegar which gave it a beautiful flavour. It will be our family favourite now. I’m half Polish so very special to both of us. Tradition!

    1. Love the idea of the pomegranate molasses. I have some in my pantry, so I will have to try it next time. Glad you liked it.

  5. I just made this – WOW, so delicious!!! I love how the flavours really come together. I can’t believe I have never made this before – it will now be part of my repertoire!! Thank you so much for the wonderful recipe!

      1. I make this as well & store in jars in my coldroom. I use soup bones to make the broth or just buy it. The secret is using garden veggies like potatoes, peas, beans, shredded cabbage, shredded carrots etc. (even canned Heinz beans & tomato sauce). The secret to “Baba’s Borstch” is to use Ketchup rather than tomato paste…The DILL is a must & that freezes very well. Just pick, wash, dry on paper towels & chop finely & store in the freezer in small jars or ziplok bags & just use a fork & scrape off as much as you will need. Also great on new potatoes or in salads. This is my Romanian version of Borstch!! Yummu for the tummy!!!

See all comments »

You Might Also Like

12.2K Shares
Share via
Copy link
Powered by Social Snap