Ukrainian Borshch.
Beetroot, Cabbage and Bean Soup
Борщ · Borshch · say it: BORSHCH
Borshch is a thick beetroot soup, not a beetroot puree — a beef or pork broth carrying cabbage, potato, beans, carrot and grated beetroot, soured with vinegar or beet kvas so the colour stays deep ruby instead of turning muddy brown. It tastes sweet-sour and meaty at once, with a hard edge of raw garlic that arrives at the very end. Every Ukrainian household makes it slightly differently and every one of them is convinced theirs is correct, but the structure below is the common backbone: build a real broth, cook the vegetables in the order of how long they need, sweat the beetroot separately with acid, and never boil it hard afterwards. It is a whole meal in a bowl and it improves overnight.

- Gate
Ukraine- Prep
- 35 min
- Cook
- 2 hr 30 min
- Total time
- 3 hr 5 min
- Serves
- 6
- Status
- Medium
- Nutrition / serving · estimated
- Calories 380 kcal
- Protein 27 g
- Carbs 30 g
- Fat 18 g
- Fiber 7 g
- Sugar 9 g
- Sodium 720 mg
Why this recipe works.
- The beetroot is cooked separately with acid, which is the only reliable way to keep the finished soup ruby rather than brown.
- Real broth from bone-in beef, not stock cubes — the body of the soup comes from meat and time, not from thickeners.
- Includes the traditional salo-and-garlic finish, plus a workable substitute for cooks who cannot get cured pork fat.
- Vegetables go in on a schedule so the potato is tender, the cabbage still has bite and nothing turns to pulp.
Ingredients.
19 itemsFor the broth
For the soup
For the beetroot pan
To finish
Equipment
- Large heavy pot (5 l or more)
- Box grater
- Frying pan
- Mortar and pestle or a small food processor
Instructions.
Start the broth
Put the beef shank in the pot with the cold water and bring slowly to a simmer. As it heats, grey foam will rise — skim it off patiently for the first ten minutes until the surface runs clear, then add the bay leaves and peppercorns and a good pinch of salt.
Tip Start in cold water, not hot. It draws more flavour out of the bones and brings the scum up where you can remove it.
Simmer the meat and beans
Drain the soaked beans and drop them into the pot. Cover partially and simmer at a lazy bubble for about 1 hour 45 minutes, until the beef pulls away from the bone with a fork and the beans are creamy all the way through.
Lift out and shred the meat
Fish out the beef, discard the bone and bay leaves, and pull the meat into rough bite-sized pieces. Return it to the broth. You should have roughly 2.5 litres of liquid; top up with hot water if it has reduced further.
Cook the beetroot separately
Heat the sunflower oil in a wide frying pan and soften 1 of chopped onion with the grated carrot over medium heat for 6–7 minutes, until translucent and just starting to colour. Stir in the grated beetroot, tomato paste, vinegar and sugar, add a ladle of broth, and cook covered on low for 15 minutes until the beetroot is tender and stains the pan a strong red.
Tip The vinegar goes in here, not in the soup. This is what locks in the ruby colour.
Add the potato and cabbage
Bring the broth back to a simmer, add the potato cubes and cook for 8 minutes, then add the shredded cabbage and cook 5 minutes more. The potato should be tender at the point of a knife and the cabbage should still have a slight bite.
Combine and stop boiling
Scrape the entire beetroot mixture into the pot and stir once. Let it come back to a bare tremble — small bubbles at the edge only — and cook for 5 minutes, no longer. From this point a hard boil will turn the soup brick brown.
Pound the salo with garlic
While the soup settles, chop the salo finely and pound it in a mortar with the garlic cloves and half the dill until it becomes a rough, sticky paste that smells aggressively of garlic. Stir it into the pot off the heat and clamp the lid on.
Rest, then serve
Let the borshch stand off the heat for at least 15 minutes so the garlic and fat disperse through the broth. Taste and correct the sweet-sour balance with salt, a splash more vinegar or a pinch of sugar. Ladle into bowls, add a spoon of cold sour cream and the remaining dill at the table.
Tips from our kitchen.
- Skim the broth properly in the first ten minutes. The grey foam that rises is what makes borshch cloudy, and once it is stirred back in you cannot remove it.
- Grate the beetroot rather than dicing it — grated beet releases colour and sweetness into the whole pot instead of hiding it inside cubes.
- Add acid to the beetroot pan, not to the finished soup. Beet pigment holds its red in acidic conditions and fades in neutral ones, so the timing genuinely matters.
- Once the beetroot goes in, keep the pot at a bare tremble. A rolling boil dulls the colour to brick brown within minutes.
- Taste for the sweet-sour balance at the end and adjust in small steps: a pinch of sugar if it is too sharp, a teaspoon of vinegar if it is flat and sweet.
- Make it a day ahead if you can. Borshch is one of those soups that tastes noticeably rounder on the second day, and the garlic mellows into the broth.
Substitutions.
- Salo (cured pork fat) for the garlic finish → 60 g fatty smoked bacon, finely chopped, or 3 tbsp unrefined sunflower oil pounded with the garlic
- Bacon brings smoke that salo does not have, but it works. The oil version keeps the finish meat-free and is what Ukrainian cooks use on fasting days.
- Beef shank → Pork ribs, a smoked ham hock, or duck legs
- All three are traditional somewhere in Ukraine. Smoked pork gives a darker, heavier soup; duck is the Poltava style.
- Dried white beans → A 400 g tin of cannellini or borlotti beans, drained and added in the last 10 minutes
- Tinned beans save four hours of soaking and cook far too fast to go in early — hold them back or they collapse.
- White wine vinegar → Beet kvas, lemon juice, or a grated sour apple
- Beet kvas is the old-school choice and gives a rounder sourness; any of these will hold the colour.
Variations.
- Postniy borshch (Lenten borshch)
- Built on dried mushroom stock instead of meat, with extra beans and no sour cream. Not a modern vegan invention — it is the version Ukrainians have cooked through fasting periods for centuries, and it is genuinely good.
- Zeleniy borshch (green borshch)
- A spring soup with sorrel, spinach and hard-boiled egg instead of beetroot and cabbage. Sour, light, pale green, and confusingly still called borshch.
- Poltava borshch with halushky
- Made on goose or duck broth and served with soft flour dumplings dropped into the pot at the end.
Storage & reheating.
Borshch keeps 4 days refrigerated and most Ukrainians think day two is the best it gets. Reheat gently to just below a simmer; boiling it hard dulls the colour and turns the cabbage soft. It freezes for 3 months, though the potato goes slightly grainy on thawing — if you are freezing deliberately, leave the potato out and add freshly boiled cubes on reheating. Always add sour cream to the individual bowl, never to the pot, or it will split when reheated.
Serve with
Pampushky — hot garlic rolls torn and dunked — with a bowl of cold sour cream and extra dill on the table.
The story behind Ukrainian Borshch.
Borshch is old enough that its name outlived its original ingredient. The word is generally traced to borshchivnyk — common hogweed — a wild plant whose fermented stalks made a sour green soup long before beetroot took over the pot. Beetroot came later, and with it the colour everyone now associates with the dish. That layered history is why borshch exists in dozens of forms across the region: green borshch with sorrel in spring, cold borshch in summer, mushroom borshch for fasting days, and the red beef-and-cabbage version that stands for the whole family.
The dish is genuinely shared across Eastern Europe — Poland, Belarus, Russia, Lithuania, Romania and Moldova all have their own versions and their own claims, and pretending otherwise would be dishonest. What is specific and documented is the Ukrainian relationship to it: in 2022, UNESCO inscribed the culture of Ukrainian borshch cooking on its list of intangible cultural heritage in need of urgent safeguarding, an emergency listing made while the war put the practice, its cooks and its regional variants at risk. Russia objected to the framing. The listing does not declare who invented soup with beetroot in it; it recognises the living Ukrainian tradition around it, which is a different claim and a fair one.
Inside Ukraine, borshch is regional to an almost comic degree. Poltava borshch is made on goose or duck. Chernihiv adds courgette and sour apple. Lviv leans on beans. Odesa versions can include tomato and even fish. Some cooks swear by beet kvas fermented specially for the pot; others use a spoon of vinegar and a grated sour apple and get there faster. What almost nobody skips is the finish: a mortar of salo pounded to a paste with raw garlic and dill, stirred in off the heat, and pampushky — small garlic rolls — served alongside to be torn and dunked. Borshch is also the standard test of a Ukrainian kitchen. Ask someone how they make it and you will get a recipe, an opinion about their mother-in-law, and a strong position on whether beans belong.
Questions, answered.
Why did my borshch turn brown instead of red?
Two things destroy the colour: heat and lack of acid. Beetroot pigment (betanin) breaks down when boiled for a long time, and it holds its red far better in acidic conditions. The fix is to cook the grated beetroot separately with vinegar or lemon juice, add it to the soup near the end, and keep the pot below a rolling boil from that point on.
Is borshch Ukrainian or Russian?
Versions of beetroot soup are cooked across Ukraine, Russia, Poland, Belarus, Lithuania, Moldova and Romania, and no single country invented soup with beetroot in it. What is formally recognised is the Ukrainian tradition around it: in 2022 UNESCO added the culture of Ukrainian borshch cooking to its list of intangible heritage in need of urgent safeguarding. That recognises a living practice and its regional variants, not exclusive ownership of the ingredient list.
Do beans belong in borshch?
In much of Ukraine, yes — white beans are standard, especially in the west around Lviv, and they add body and protein that make the soup a full meal. Plenty of households leave them out, and both versions are traditional. If you skip the beans, add an extra potato so the soup keeps its substance.
Can I make borshch vegetarian?
Yes, and there is a centuries-old Ukrainian precedent for it. Replace the meat broth with a strong stock made from dried porcini and root vegetables, double the beans, and finish with garlic pounded into unrefined sunflower oil instead of salo. Skip the sour cream to make it fully vegan, or keep it if you eat dairy.
What is the salo and garlic paste at the end for?
It is called zaprazhka or zatovkha, and it does two jobs: the pounded fat enriches the broth and carries flavour, while the raw garlic goes in uncooked so it stays sharp and aromatic. Adding garlic at the start of a two-hour soup leaves you with nothing; adding it at the end off the heat is the whole point.
You might also like.
All recipes →Keep exploring Ukraine.
Ukraine has 9 more dishes in the atlas — Banosh and Deruny, and 7 more.
Recipe by The DishRoute Kitchen · published August 20, 2026 · updated August 20, 2026