Posted on — Leave a comment

Borscht Recipe: How to Make Classic Ukrainian Beet Soup

Dark ceramic bowl of red borscht with beef pieces, cubed potato, beet strands, sour cream and dill; a spoon rests at the edge.

When the beet dressing goes into the beef broth, deep red spreads through the pot. Tender beef, potatoes and cabbage take on that colour, while garlic and dill added near the end bring a fresh finish. At the table, a spoonful of sour cream softens the broth’s tang.

This borscht recipe makes a generous pot of Ukrainian-style beet soup from slow-simmered beef broth. It is brothy and full of vegetables rather than a thick beef stew or a smooth beetroot purée. Beets bring earthy sweetness, while tomato and a little vinegar keep the flavour bright.

The beef needs the longest cooking time, so prepare the vegetables while it simmers. Later, the beets cook gently in a frying pan while the potatoes and cabbage cook in the stockpot. The steps below coordinate both pans, with clear tenderness checks and an eight-minute cue for adding cabbage.

Jump to: Ingredients | Step-by-step recipe | Quick version | Troubleshooting | Storage | Variations

Borscht Recipe at a Glance

ServingsAbout 8 moderate, vegetable-rich bowls
Hands-on timeAbout 40–50 minutes, spread across the cooking period
Total timePlan for 3–4 hours; tougher beef can take longer
Quick versionAbout 60–75 minutes with prepared stock and cooked beef
Starting water2.8 L (approximately 11¾ US cups)
Usable broth target2.3–2.5 L (approximately 9¾–10½ US cups) before vegetables are added

What Is Ukrainian Borscht?

Ukrainian borscht, also written borshch (борщ), is a traditional soup made with broth and vegetables. The familiar red version gets much of its colour and character from beets, often alongside cabbage, potatoes, carrots, onions and herbs. Some preparations include beef or pork; others use beans, mushrooms or vegetable broth.

There is no single recipe followed in every Ukrainian household. Broths, souring ingredients and vegetable cuts vary between families, regions and occasions. Some cooks grate the beets; others slice them into fine strips. Tomato, vinegar and fermented beet preparations can all contribute acidity.

Cooking and sharing borscht is part of Ukrainian family and community life. In 2022, UNESCO inscribed the culture of Ukrainian borscht cooking on its List of Intangible Cultural Heritage in Need of Urgent Safeguarding. The dish remains an important expression of everyday cooking, hospitality and cultural identity.

Three blue bowls of red borscht with white sour cream, a separate sour-cream dish, fresh dill and golden garlic pampushky on a wooden table.
Sour cream, fresh dill and golden pampushky accompany these borscht bowls. Serve the garlic buns separately to keep their crusts intact until dipping.

Many Ukrainian versions use a separately sautéed vegetable base, sometimes called zasmazhka; the name and preparation vary. Here, onion and carrot soften in oil before grated red beets and tomato paste join them. That mixture enters the beef broth only after the potatoes have had time to soften. It is one coherent way to make the dish, not a claim that every Ukrainian cook prepares it identically.

Borscht Recipe Ingredients

The ingredients are divided into three groups: beef broth, beet dressing, and soup finishing. Vegetable weights are measured after peeling or trimming. A kitchen scale helps account for different beet and potato sizes, while approximate counts are included where useful.

Overhead ingredient board grouped as Beef Broth, Beet Dressing and Soup & Finish, with bone-in beef, onion, carrot, beets, tomato paste, potatoes, cabbage, garlic, dill and sour cream.
Onion and carrot appear twice: large pieces flavour the stock, whereas smaller cuts stay in the beet dressing. Keep the two portions separate when preparing ingredients.

For the Beef Broth

  • 700 g (about 1½ lb) bone-in beef shank or meaty short ribs — for broth and tender pieces of beef.
  • 2.8 L (about 11¾ US cups) cold water — the starting quantity.
  • 1 small onion, approximately 85 g (3 oz) — peeled and halved.
  • 1 small carrot, approximately 85 g (3 oz) — peeled and cut into large pieces.
  • 2 bay leaves.
  • 6–8 whole black peppercorns.
  • 5 g fine salt — approximately ¾–1 teaspoon, depending on the salt; more to taste later.

Beef shank gives the broth body as its connective tissue softens. Meaty short ribs work too, although they can release more fat. Because the 700 g includes bones, the amount of cooked beef varies by cut. Expect a vegetable-rich soup with modest pieces of meat rather than eight meat-heavy servings.

Raw cross-cut beef shank with a marrow-bone centre on the left and meaty raw short-rib sections on the right, arranged on a labelled metal tray.
For beef shank, choose plenty of meat around the marrow bone; for short ribs, avoid cuts that are mostly bone. Either option should provide some cooked meat to return to the soup.

Using prepared stock and cooked beef? Go to the quicker borscht method instead.

For the Beet Dressing

  • 450 g (about 1 lb) peeled raw red beets — usually 2–3 medium beets, coarsely grated.
  • 140 g (5 oz) onion — about 1 medium onion, finely diced.
  • 130 g (4½ oz) carrots — about 1 large or 2 small carrots, coarsely grated.
  • 35 g tomato paste — approximately 2 rounded tablespoons; weighing is more reliable.
  • 30 ml (2 tablespoons) sunflower or neutral cooking oil.
  • 120 ml (½ US cup) prepared beef broth — reserved from the stockpot, not additional liquid.
  • 5 ml (1 teaspoon) vinegar at 5% acidity — distilled white or apple cider vinegar.

Choose firm, deep-red beets for the familiar colour and earthy flavour. Golden beets will not produce the same red soup. Extra red beets can be roasted for a beet salad with feta and walnuts.

For the Soup and Finishing

  • 350 g (about 12 oz) peeled potatoes — cut into even 1.5–2 cm (⅝–¾ inch) cubes.
  • 300 g (about 10½ oz) green or white cabbage — thinly shredded into approximately 3–5 mm strips.
  • 12 g garlic — about 3–4 cloves, minced or crushed.
  • 15 g (about ½ oz) fresh dill — chopped.
  • Up to 10 ml (2 teaspoons) additional 5%-acidity vinegar — only after tasting.
  • Up to 5 g (approximately 1¼ teaspoons) granulated sugar, optional — only if the soup remains too sharp.
  • Ground black pepper — start with about ¼ teaspoon.
  • Additional fine salt — to taste.

Potatoes and cabbage share the stockpot, but they are cut and added for different cooking times. Uniform potato cubes cook more evenly and hold together, while fine cabbage ribbons soften quickly after the potatoes have had a head start.

Blue cutting board holding evenly cubed potatoes marked 1.5–2 cm and thinly shredded cabbage marked 3–5 mm, with a knife above.
Thick cabbage ribs soften more slowly than delicate leaves. Slice them finely so the cabbage finishes close to the potatoes.

For serving: Allow 120–160 g (4–5½ oz) sour cream for eight bowls, with extra dill and rye bread or Ukrainian garlic buns (pampushky).

No fresh dill? Start with 1–2 teaspoons dried dill leaves (dill weed), added during the last few minutes of cooking, and adjust to taste. Dill seeds are not a direct substitute for the leafy herb. Fresh parsley is possible but gives a different flavour.

Three labelled images compare feathery fresh dill, dried green dill weed in a bowl and tan dill seeds in a bowl; the seed panel warns against direct substitution.
Dill weed means dried leafy dill; dill seed is a different, seed-shaped spice. Use dill weed, not dill seed, when replacing fresh dill.

Before You Start: Prepare the Vegetables

Prepare the vegetables while the beef simmers. Peel and grate the beets, grate the carrots, dice the onion and shred the cabbage during the later part of the broth cooking. Cut the potatoes shortly before cooking; if cut ahead, keep them in cold water and drain before adding them to the pot.

You will need a 7–8 L (about 7½–8½ qt) stockpot, a large preferably deep frying pan with a lid or suitable heat-safe cover, a coarse grater, a knife, a cutting board and a measuring jug. Beet juice stains readily, so use a washable board and protect light-coloured fabrics.

For potatoes that hold together, choose Yukon Gold, red potatoes or another all-purpose or waxy variety. Floury potatoes such as Russets can break down more readily. That characteristic is useful in a creamier potato soup, where extra starch helps thicken the broth.

Coarsely grated beets soften relatively quickly and disperse through the broth. Thin matchsticks remain more visible in each bowl but usually take longer to cook. Either preparation works, provided you judge the actual beet tenderness rather than relying entirely on the clock.

On dark slate, loose coarsely grated red beets sit beside uniform thin beet matchsticks; a halved beet and knife lie above the comparison.
These are thin beet matchsticks, not thick batons. If your strips are wider, test the thickest one before combining the pans; it may take longer to soften than grated beets.

Want to see when the beets and potatoes begin cooking together in separate pans? Follow the two-pan cooking timeline.

How to Make Borscht Step by Step

Step 1: Make the Beef Broth

  1. Put 700 g bone-in beef into the stockpot and cover with 2.8 L cold water. Heat gradually until the water approaches a simmer.
  2. Skim away the greyish foam. Add the broth onion, carrot, 2 bay leaves, 6–8 whole peppercorns and 5 g fine salt.

As cold water and beef heat together, grey protein foam gathers at the surface before the stock settles into a simmer. Lift it off gently at this point. A rapid boil breaks the foam apart and makes it harder to collect, which is why the initial heating should be gradual.

A cook uses a round metal skimmer to lift pale grey protein foam from a large stockpot of simmering beef broth.
Skim grey foam close to the beef broth’s surface. Plunging the skimmer deep into the pot can disperse the loose particles again.

Unsure whether you are skimming early protein foam or excess fat? Compare the two surfaces.

  1. Maintain a gentle simmer, with occasional small bubbles rather than a rolling boil. Leave the lid slightly ajar and cook for about 1½–2½ hours, longer if necessary, until the meat pulls apart easily with a fork.

Use the broth’s surface, not a burner number, to control the heat. You want occasional small bubbles rising around the beef without constant churning. Check again after partially covering the pot, because the lid can make the simmer stronger.

Side-by-side labelled stockpots: a gentle beef-broth simmer with intermittent small bubbles on the left and a vigorous rolling boil on the right.
A gentle simmer breaks the surface intermittently; a rolling boil churns across it. If your pot resembles the right-hand example, reduce the heat.

Check Beef Tenderness Before Deboning

The long broth simmer ends when the thickest pieces pull apart without much force. You can prepare the vegetables while the beef cooks, but start cooking the potatoes and cabbage only after the broth is ready. Outside colour cannot show tenderness, so check the meat fibres before removing the beef.

A fork pulls moist brown simmered beef into separating fibres on a shallow plate containing a little cooking broth.
A fork can pierce beef before it is truly tender. Pull apart a thicker section; if the fibres resist, simmer longer.
  1. Lift out the beef. Once cool enough to handle, remove the bones and unwanted tough tissue, then cut or shred the meat. Keep it covered with a little broth during the short vegetable stage. Refrigerate promptly if you take a longer break rather than leaving the meat out.

Once the broth meat is tender enough to shred, remove bones and any rubbery gristle before returning it to the soup. Keep the cooked meat in spoon-size pieces so every serving contains some beef without requiring a knife at the table.

Hands use a fork and tongs to separate cooked beef from a rib bone on a wooden cutting board, with the removed bone visible.
After removing a rib bone, check for small fragments around the joint. Cut the cooked beef into spoon-size pieces before returning it to the soup.

Strain, Taste and Reserve the Broth

  1. Remove the spent onion, carrot, bay leaves and peppercorns. Strain the broth if you prefer and skim off excess fat.
  2. Measure and taste the broth. Aim for roughly 2.3–2.5 L (9¾–10½ US cups) with a satisfying beef flavour. If too concentrated, add hot water or unsalted stock. If weak, gently reduce the strained broth or strengthen it with unsalted stock. The flavour matters more than an exact volume.
  3. Set aside 120 ml (½ US cup) of this prepared broth for the beet dressing.

Taste the strained beef stock before adding the red beet dressing. You are judging the savoury base at this stage, so distinguish an overly concentrated stock from a weak one. A broth that merely needs salt will taste different from a broth lacking beef flavour.

Hand holding a spoon above an amber broth bowl beside a guide for diluting strong stock, concentrating weak stock and checking salt when flavour seems flat.
Let a spoonful of stock cool slightly before tasting. Then decide whether it needs dilution, concentration or seasoning.

Step 2: Cook the Beet Dressing and Start the Potatoes

Prepare the Beet Dressing

The beet dressing cooks in a separate pan while the potatoes begin in plain beef broth. First soften onion and carrot, then introduce red beet and tomato paste. Reserved broth and a little vinegar start a moist simmer; the following steps coordinate both pans.

Three-step borscht dressing guide: sauté onion and carrot, add grated beets and tomato paste, then add broth and 5%-acidity vinegar before a covered 8–12-minute moist simmer.
The 8–12-minute covered simmer starts after broth and vinegar join the beets, not while the onion and carrot are softening. Check beet tenderness near the end of this moist stage.
  1. Bring the broth in the stockpot back to a gentle simmer. In the frying pan, heat 30 ml (2 tablespoons) oil over medium heat.
  2. Cook 140 g diced onion and 130 g grated carrot for 5–7 minutes, stirring occasionally, until softened.
  3. Add 450 g grated raw beets and 35 g tomato paste. Stir for 2 minutes without scorching the paste.

The frying pan is still separate from the beef stockpot. Softened onion and carrot form the base for grated beets and tomato paste, which cook briefly together before any reserved broth is added. Stir until the tomato paste is evenly distributed rather than sitting in one lump.

Hands tip grated beet strips and a mound of tomato paste into a black skillet of softened chopped onion and shredded carrot.
Spread tomato paste evenly through the softened onion, carrot and grated beets. A lump of paste left against the hot pan can scorch.

Coordinate the Two Pans Before Starting the Timers

The recipe now has two simultaneous cooking tasks in different vessels. Beet strands soften in the covered frying pan while diced potatoes begin in amber beef stock. Study the timeline before starting both stages; the important handoff is adding cabbage eight minutes after the potatoes enter the stockpot.

Two-track borscht timeline: beets simmer in a separate frying pan while potatoes start in amber broth; cabbage enters that stockpot at +8 minutes, and the pans join when ready.
The +8-minute marker tells you when cabbage joins the potato stockpot—not when the beet dressing must be finished. If one pan finishes first, leave it covered off the heat briefly while the other catches up.
  1. Pour in the reserved 120 ml broth and 5 ml (1 teaspoon) 5%-acidity vinegar. Lower the frying-pan heat to medium-low and cover loosely.
  2. Immediately add 350 g diced potatoes to the simmering stockpot and set a timer for 8 minutes. Continue tending the beets. When the timer rings, add 300 g shredded cabbage to the stockpot right away, even if the beets are still cooking. The cabbage now cooks alongside the potatoes.
  3. Meanwhile, let the beets simmer gently for about 8–12 minutes, stirring occasionally. The mixture should stay moist rather than fry dry or brown; add a small splash of water or broth if needed.

Reserved broth turns the sautéed beet mixture into a moist, gently simmering dressing. This stage is about softening the strands without reducing everything to a dry paste. The colour may already look vivid before the texture is ready, so check the pan for sticking and taste a strand.

Close view of red grated beet strands simmering in visible liquid inside a frying pan; an instruction across the image says to keep the dressing moist.
Check the edges as well as the glossy centre of the beet dressing. If the outer strands begin sticking, lower the heat or add a little broth.
  1. Taste a few beet strands. They should be nearly tender, not distinctly crunchy. Matchsticks or firmer beets can take longer. Once the beets are ready, turn off the frying-pan heat and leave the dressing covered while the stockpot finishes.

Step 3: Check the Potatoes and Cabbage

  1. After the cabbage has gone into the stockpot, let it simmer with the potatoes for about 5–7 minutes. Finely shredded young cabbage may be ready sooner; mature cabbage or thick strips can take longer.

When shredded cabbage enters the stockpot, the liquid may briefly stop simmering and the leaves will look bulky. Let the broth return to a gentle simmer before checking their tenderness. The beet dressing remains in the separate pan until the potatoes are nearly ready.

Hands add pale shredded cabbage to an amber stockpot containing potato cubes; the overlay marks cabbage addition after eight minutes.
At the eight-minute mark, shredded cabbage joins the potatoes in amber beef broth. The soup turns red later, when the separate beet dressing is added.
  1. Test a potato cube through its centre. It should be nearly fork-tender before the acidic beet dressing is added. Continue cooking if the centre is still firm.

Check the potatoes and cabbage separately before combining the pans. The largest potato cube is the best test because a small piece may already be soft while larger pieces still have firm centres. If necessary, give the potatoes more time in plain broth rather than adding the acidic dressing prematurely.

Fork lifts a potato cube from amber broth with cabbage and more potatoes; the heading asks whether potatoes are nearly tender before beet dressing is added.
Test the largest potato cube rather than the smallest. Its centre usually takes longest to soften, so an easy fork test on a tiny piece can give a misleading result.
  1. The two pans do not have to finish together. If the potatoes and cabbage are ready first, turn off the stockpot heat and cover it briefly while the beets finish. If the dressing is ready first, it can wait off the heat. Return both to a gentle simmer before combining.

Giving potatoes this head start helps them soften before the tomato-and-vinegar dressing goes in; an acidic cooking liquid can slow that process.

Step 4: Bring the Borscht Together

  1. Add the beet dressing and cooked, deboned beef to the stockpot. Stir gently as the broth turns red.

Only combine the pans after the beet strands have lost their raw crunch and the potatoes are nearly fork-tender. The final simmer is brief, so it should bring the soup together rather than compensate for vegetables that still need a long cook.

Skillet tilts red grated-beet dressing into a stockpot of amber broth, potato and cabbage, with a small bowl of cooked beef nearby.
Transfer the beet dressing with its red cooking juices, not just the beet strands. Fold it gently into the stockpot so nearly tender potato cubes hold their shape.
  1. Simmer gently for 3–5 minutes, or until the beets, potatoes and cabbage are tender and the beef is heated through. Avoid a prolonged rolling boil.
  2. If the vegetables are crowded with too little liquid, add hot unsalted stock or water a little at a time until the soup is comfortably brothy.

The finished soup should have visible red liquid between the meat and vegetables. Judge that balance in the stockpot rather than from a tightly packed serving bowl. Gently stir and lift a ladleful before adding more stock, because the vegetables settle beneath the surface as the soup rests.

Large metal stockpot full of red borscht with beef, diced potatoes, beet shreds and herbs; a ladle rests in the soup and sour cream is nearby.
Freely moving red broth should surround the beef, potatoes and beet strands. If the solids move easily when stirred, the soup may need no extra liquid.

Step 5: Season, Add Garlic and Dill, and Rest

  1. Salt first. The broth already contains 5 g fine salt. Add more a little at a time, about ¼ teaspoon per adjustment if using fine table salt, stirring and tasting between additions.
  2. Then acidity. If the soup tastes heavy or overly sweet, add 2.5–5 ml (½–1 teaspoon) 5%-acidity vinegar. Stir and taste before adding more, up to the planned 10 ml (2 teaspoons) additional. You may need none.
  3. Sugar only if needed. If the soup remains too sharp after checking the salt, add a pinch of granulated sugar. The optional allowance is up to 5 g (approximately 1¼ teaspoons).

Taste the ungarnished broth after the beef and vegetables have combined. First decide whether the savoury base needs more salt; only then judge acidity, because sweetness and sourness can taste different once the salt balance is corrected. Add each adjustment separately rather than combining vinegar and sugar at once.

Seasoning graphic around a red bowl of borscht: salt first, taste, vinegar only if needed, then a little sugar if still too sharp.
Taste before stirring sour cream into the bowl. The dairy topping softens perceived sharpness, so adjust the main pot using the plain broth rather than an already garnished spoonful.

If the finished soup is still too sweet, sour or salty, use the flavour troubleshooting guide before adjusting again.

Finish the Soup Without Prolonged Boiling

  1. Season with ground black pepper, beginning with about ¼ teaspoon.
  2. During the last minute of gentle heating, add 12 g minced garlic and 15 g fresh chopped dill. If using dried dill leaves, add them a few minutes earlier.

Garlic and dill provide the last aromatic layer after the vegetables have softened. A long boil can dull their fragrance, so add them only near the end. Brief heating followed by a covered rest lets their flavour spread without unnecessarily cooking the cabbage further.

Hand holds a wooden spoon with minced garlic and green dill above a steaming pot of red borscht; more chopped garlic and herbs sit in a bowl beside it.
Finely minced garlic and tender dill fronds disperse evenly through the finished borscht. Leave out thick, woody dill stems.
  1. Turn off the heat, cover and rest the soup for 10–15 minutes. Taste once more before serving: the beef broth should remain savoury, with beet sweetness and a little tang in the finish.

These five stages show how the broth, beet dressing and vegetables come together. Use tenderness, rather than identical cooking times, to decide when each stage is ready. This overview is a quick reminder of the process rather than a second set of instructions.

Five-stage borscht guide showing beef stock, moist beet dressing, potatoes and cabbage in pale broth, combined red soup, and the final seasoned pot.
Treat these stages as readiness checkpoints, not equal time slots. The beef, beet strands and potatoes must each reach the right tenderness before the final combination.

Need the quantities again? Return to the ingredients · Back to top.

What to Serve with Borscht

After the long broth simmer and shorter vegetable stages, ladle the borscht into bowls with some beef, potato, cabbage and beet in each serving. Offer sour cream, fresh dill and bread at the table. A spoonful of sour cream swirls into the red broth and rounds out the acidity.

Spoon pours thick white sour cream into a dark bowl of beet-red borscht containing potato, beef, cabbage and dill.
Sour cream creates a white-to-pink swirl in hot borscht. Add it to individual bowls rather than the main stockpot.
  • Sour cream: Start with around one tablespoon per bowl; serve extra at the table.
  • Plain thick yogurt: Use unsweetened, unflavoured Greek yogurt or another thick plain yogurt if sour cream is unavailable; it may taste tangier.
  • Fresh dill: A little on top brings a fresh herbal finish.
  • Pampushky: Soft Ukrainian garlic buns are a traditional accompaniment.
  • Rye bread or garlic bread: Rye bread works well; homemade garlic bread is an accessible alternative when you are not making pampushky.

Pampushky make a pleasing contrast to the broth. Their soft interiors absorb a little soup, while the garlic-brushed crust contributes a savoury, fragrant bite. Serve them freshly baked or gently warmed, with the borscht ladled separately so the bread retains its texture until eating.

Hand holds a torn-open soft garlic pampushka beside a plate of glossy herb-topped buns, with a red bowl of borscht behind.
The torn pampushka shows the soft interior beneath its garlic-herb crust. Serve the buns fresh alongside the soup.

Add dairy toppings to individual bowls, not the stockpot. This leaves the remaining soup easier to store and reheat. For safe storage times and freezing instructions, see how to store borscht.

Borscht Troubleshooting: Common Problems and Fixes

Why Is My Borscht Brown, Orange or Pale?

Pale borscht may have too much broth relative to the amount of beet. Duller or brownish borscht may reflect changes to beet pigments during prolonged heating. Beet variety and cooking conditions also affect colour; the red pigment betanin is sensitive to heat.

If the soup is pale and lacks beet flavour, cook a small extra handful of grated red beet gently in a little broth until tender and stir it in. That may help both colour and flavour. Extra vinegar will not reliably restore pigment lost through prolonged cooking, and too much can make the soup sour.

Three labelled bowls of beet soup in deep red, orange-red and dull brownish red, with notes relating colour to beet balance and cooking conditions.
A pale or orange-red bowl does not necessarily need more vinegar. Compare beet flavour and dilution first; prolonged heating can also dull the colour.

Why Does My Borscht Taste Bland or Watery?

Check the salt first. An underseasoned broth and a genuinely weak or diluted broth need different fixes, so taste a small spoonful before adding more ingredients.

  • Before adding vegetables: Simmer weak strained broth uncovered to concentrate it, tasting as it reduces.
  • After assembly: Add concentrated, unsalted beef stock if the meat flavour is lacking. For severe dilution, remove the solids temporarily and reduce part of the liquid separately as a last resort.
  • Only slightly flat: Adjust salt, then try a little vinegar if the flavour still needs brightness.

What If the Borscht Is Too Sweet, Sour or Salty?

  • Too sweet: Check the salt, then add vinegar in small amounts. Pickled beets or extra sugar may be contributing sweetness.
  • Too sour: Add unsoured stock gradually. A pinch of sugar may soften the sharpness but will not remove the acid.
  • Too salty: Dilute with unsalted stock or water. Do not continue reducing the soup; adding a raw potato will not reliably remove enough dissolved salt.
  • Too earthy: Check that the broth has enough savoury flavour and salt, then consider a small acidity adjustment.

A sweet, sour or salty bowl can look identical, yet each problem needs a different correction. Change one thing at a time, stir and retaste before another adjustment. Adding vinegar, sugar and salt together makes it harder to identify what actually helped.

Borscht flavour chart: too sweet—check salt, then vinegar; too sour—add unsoured stock; too salty—dilute with unsalted stock or water.
Match the fix to the problem: excess salt needs dilution, while sweetness or sourness usually calls for a smaller, more selective adjustment.

How to Fix Texture Problems

  • Hard potatoes: Simmer gently a little longer if they are nearly ready. If they remain stubbornly firm in the acidic soup, remove as many undercooked pieces as practical and replace them with potato cubes cooked separately in plain water or broth until tender.
  • Hard beets: Cook them longer. Remove woody or fibrous pieces that remain unpleasant to chew.
  • Tough beef: Remove it and simmer separately in some broth until tender before returning it, protecting the vegetables from overcooking. This can also matter when making beef barley soup.
  • Mushy cabbage: Its texture cannot be restored, but a little separately cooked fresh cabbage can add some bite.
  • Excess fat: Skim the surface. Fat is easier to remove after leftovers have been refrigerated properly.
  • Soup too thick: Add hot unsalted stock or water a little at a time and check the seasoning afterward.

These two broth surfaces belong to different moments in cooking. Grey protein foam appears early as raw beef heats; golden surface fat becomes more noticeable later. Recognizing the difference helps you choose the appropriate utensil and avoid removing more broth than necessary.

Two-panel comparison: a mesh skimmer lifts grey foam from early beef stock, while a spoon removes a golden film of surface fat below.
Early grey foam is easiest to lift with a fine skimmer, whereas later golden fat suits a shallow spoon.

Vegetables settle as borscht rests, so a single densely packed ladleful can make an otherwise brothy soup look too thick. Stir the stockpot gently and check how easily the solids move. Dilute only when the entire pot is crowded with vegetables and has insufficient broth.

Side-by-side bowls labelled correctly brothy and too thick; the first shows red broth between vegetables, while the second looks densely packed with solids.
Before diluting the stockpot, check another ladleful with more broth between the solids. The apparent thickness of a single bowl can be misleading.

Ready to cook again? Return to the full method · Back to top.

How to Store, Freeze and Reheat Borscht

Borscht keeps well for another meal, although the potatoes and cabbage may soften a little in storage. Its flavours often seem more settled the next day. Store dairy toppings separately so the soup can be reheated without curdling the sour cream.

How Long Does Borscht Last in the Fridge?

Refrigerate cooked borscht at 4°C (40°F) or below and use within 3–4 days. Divide leftovers into shallow, food-safe containers so they cool promptly. Refrigerate within 2 hours of cooking, or 1 hour when the surrounding temperature is above 32°C (90°F). Do not leave a large stockpot at room temperature overnight.

In a refrigerator, two stacked closed clear tubs and a sealed bag hold red borscht; the bag has a blank date label and a banner says refrigerate for 3–4 days.
Label leftover borscht with the cooking date. Several shallow, sealed portions cool more promptly than a full stockpot and let you reheat only what you need.

Can You Freeze Borscht?

Yes. Cool the soup promptly, then pack it in airtight freezer-safe containers or bags, leaving room for expansion. Use within about 2–3 months for best quality. Potatoes and cabbage may be softer after thawing. Food kept continuously frozen at −18°C (0°F) can remain safe longer, but quality gradually declines. Use glass only if it is specifically freezer-safe.

Inside a freezer, a lidded container and zip-top bag hold red borscht; printed guidance says leave headspace, best quality 2–3 months and thaw in the refrigerator.
Rigid freezer containers stack securely; sealed bags can freeze flat on a tray. Leave space for expansion and keep the rim or zip seal clean before closing.

Make the Beet Dressing Ahead

To keep potatoes and cabbage freshly cooked, prepare the beet dressing separately and save it for another day. This is useful when you want to divide the work without letting cooked vegetables sit in the finished soup for an extended period.

  1. Prepare the dressing as directed, using prepared stock for its liquid.
  2. Transfer to a shallow container and refrigerate promptly.
  3. Use within 3–4 days if refrigerated, or freeze airtight portions for roughly 2–3 months for best quality.
  4. Thaw safely and add the dressing after cooking the potatoes and cabbage to the nearly-tender stage. Heat everything thoroughly.

How to Thaw and Reheat Borscht Safely

Thaw frozen borscht in the refrigerator, or reheat it directly from frozen over gentle heat, stirring as the soup loosens. Do not thaw it on the countertop. Stir carefully as the liquid warms so no dense, still-frozen centre remains beneath a hot surface.

Bring the soup to a boil while reheating, stirring so the solids heat evenly, and ensure the contents reach at least 74°C (165°F) throughout. Once thoroughly reheated, remove from the heat rather than continuing to boil the vegetables. Thin with a little hot stock or water if needed; add fresh dill and sour cream or yogurt when serving.

Cook stirring a steaming pot of red borscht with a long metal ladle on a stovetop; vegetables and beef pieces are visible in the broth.
Steam rising from reheated borscht does not prove the beef and potatoes are hot throughout. Stir from the bottom and follow the boiling and temperature guidance above.

Can Borscht Be Home-Canned?

This borscht is intended for eating fresh, refrigerating or freezing. It is not a tested shelf-stable home-canning formula.

Meat-and-vegetable soups are low-acid foods that require an appropriate tested pressure-canning procedure for safe shelf storage. The National Center for Home Food Preservation’s soup-canning guidance specifically does not recommend cabbage under its general soup-canning procedure. Because this recipe contains cabbage, do not can it unchanged under those instructions. Water-bath canning is not a safe alternative.

Borscht Variations and Shortcuts

Prepared stock, precooked beets and meatless ingredients can shorten or change the method. The variations below start with the same flavour principles but adapt the broth, vegetables or cooking time. Follow the changes for your chosen version rather than combining several substitutions without adjusting seasoning.

Quick Borscht with Prepared Stock and Cooked Beef

Use 2.3–2.5 L (9¾–10½ US cups) prepared beef stock, preferably unsalted or reduced-sodium, with 300–400 g (10½–14 oz) previously cooked, safely thawed beef. That is a cooked weight, unlike the 700 g of raw bone-in beef used for homemade broth.

  1. Prepare the same quantities of vegetables as in the main recipe.
  2. Make the beet dressing using 120 ml of the prepared stock.
  3. As soon as the beets begin their covered simmer, start the potatoes in the remaining stock. Set an eight-minute timer and add cabbage when it rings, whether or not the beets have finished.
  4. When the potatoes are nearly tender, add the dressing and cooked beef. Heat through, season, add garlic and dill, then rest as in the main recipe.

Prepared stock and cooked beef remove the lengthy raw-meat simmer, but the vegetables still need their own tenderness checks. If your stock is already salted, taste before adding the planned finishing salt. The shortcut works best with tender cooked beef added near the end rather than repeatedly boiled.

Quick borscht guide contrasts raw bone-in beef with prepared stock and cooked beef, then shows finished red soup; the shortcut lists 2.3–2.5 L stock and 300–400 g cooked beef.
Using prepared stock and cooked beef saves the long stock-making stage. Keep the same two-pan vegetable sequence and add the cooked meat only near the finish.

Starting with raw bone-in beef instead? Use the full broth-first method.

Vegetarian or Vegan Borscht with Mushrooms and Beans

For a meatless version, replace beef broth with vegetable or mushroom stock. Keep the vegetable quantities, tomato paste, oil, vinegar, garlic and dill from the main recipe. Cooked beans make the soup more filling, while dried culinary mushrooms contribute a savoury depth.

Use 15–20 g commercially dried edible porcini or another dried culinary mushroom suitable for soup. Rehydrate in hot water following the package directions until soft enough to chop, often 20–30 minutes or longer. Strain the soaking liquid to remove grit and discard any pieces that stay unusually tough.

Porcini should soften enough to chop without hard centres before joining the vegetable stock. Their soaking liquid can be savoury, but grit collects near the bottom of the bowl. Retain only the clear, carefully strained portion and count it toward the total stock volume.

Two-panel mushroom preparation: dried porcini soaking in a glass bowl above, and dark liquid pouring through a cloth-lined metal strainer into a bowl below.
Pour the soaking liquid slowly through a lined sieve and stop before the gritty sediment reaches it. Keep the clearer strained liquid for the soup.

Cook the Mushroom Stock and Finish with Beans

  1. Combine the strained soaking liquid with enough vegetable stock for 2.3–2.5 L total liquid. Include the soaking liquid in that total.
  2. Simmer the chopped mushrooms in the stock until thoroughly tender, often 15–30 minutes after rehydration depending on the product. Follow the package instructions and texture rather than a rigid timer.
  3. Reserve 120 ml stock for the beet dressing. Prepare the dressing as in Step 2, using vegetable stock.
  4. Start potatoes when the beets begin their covered simmer. After eight minutes, add cabbage regardless of beet progress; combine once the potatoes and other vegetables are nearly tender.
  5. Add 240 g (8½ oz) drained, cooked white beans during the final simmer if you want a heartier bowl. Heat thoroughly, finish with garlic and dill, and serve without dairy or with a plant-based alternative.

Mushroom stock provides savoury depth even without meat; white beans add substance alongside the beets and cabbage. If using canned beans, drain them and rinse away salty packing liquid when needed. Taste the broth again after adding the beans, since their seasoning can vary.

Green bowl of beet-red soup with white beans, browned mushroom slices, orange vegetable pieces, fresh dill and white topping; on-image text identifies topping and bread spread as plant-based.
Add cooked white beans near the end so they remain intact. For a vegan serving, use plant-based topping and bread spread instead of dairy.

Beans and mushrooms also feature in regional borscht preparations. For a different bean-centred soup, see our white bean soup with cannellini beans and vegetables.

Can You Make Borscht with Canned or Precooked Beets?

Yes. Use about 450 g (1 lb) drained plain cooked beets, grated or cut into small pieces. This is an approximate working quantity rather than an exact weight-for-weight equivalent of raw beets.

Soften onion and carrot in the oil, stir in the tomato paste, then add the cooked beets and 120 ml (½ US cup) broth. Warm for 3–5 minutes. Add the usual 5 ml (1 teaspoon) 5%-acidity vinegar for plain cooked beets. Cook potatoes and cabbage in the stockpot as directed, then add this mixture once the potatoes are nearly tender.

Using pickled beets? Omit the initial vinegar and taste before adding any at the end. Pickled beets may already contain vinegar, sugar and salt. Drain them first so their packing liquid does not overwhelm the broth. Leftover cooked beets can also be used in beet hummus.

Comparison of grated plain cooked beets on the left and sliced pickled beets in dark red brine on the right; the pickled-beet guidance says to skip initial vinegar.
Pickled beets are already seasoned. Start with the drained solids and taste the assembled borscht before adding more acidity, sugar or salt.

Pork-Rib Borscht

Replace the beef with around 700 g (1½ lb) meaty pork ribs. Simmer with the broth aromatics until fork-tender, often 1¼–2 hours or longer. Remove bones, skim excess fat, measure the broth and follow the same beet–potato–cabbage sequence. Return the cooked pork during the final simmer.

Pork-rib borscht graphic showing a green bowl of red soup with pork and potatoes, raw ribs in an upper panel and a dish of cooked pork in a smaller panel.
After simmering pork ribs, check for small cartilage or bone fragments even after removing the main bones. Let the meat cool enough to handle before returning it to the soup.

Borscht with Sauerkraut

For a fermented-cabbage flavour, replace the 300 g fresh cabbage with 150 g fresh cabbage plus 150 g sauerkraut. Drain or briefly rinse very salty or sour sauerkraut. Firm sauerkraut can be simmered separately in a little broth from the batch for about 15–25 minutes, until tender.

Cook the potatoes first, then add fresh cabbage. Once the potatoes are nearly tender, add the sauerkraut with its cooking liquid and the beet dressing. Skip the initial vinegar and taste before adding any at the end; sauerkraut may already provide enough sourness.

Graphic comparing bowls marked 150 g fresh shredded cabbage and 150 g sauerkraut, beside a small borscht pot with a reminder to add sauerkraut after potatoes are nearly tender.
Sauerkraut varies in saltiness and acidity. Taste it before deciding whether to rinse, and adjust the finished soup only after the fermented cabbage has been added.

Borscht Without Potatoes or Cabbage

You can omit either vegetable. After reserving the usual 120 ml broth for the dressing, start with a little less broth for the remaining vegetables and add more as needed for a brothy consistency.

Without potatoes: Simmer the cabbage until nearly tender before adding the dressing. Without cabbage: Cook the potatoes until nearly tender, then add the dressing. Cooked white beans can make a potato-free version more substantial without changing the beet-forward character of the soup.

How Do You Make Your Borscht?

Small choices—how you cut the beets, which broth you use and how you sour the soup—give different borscht preparations their own character. Do you grate your beets, cut them into thin strips or use another method? Share your approach in the comments, or ask about a step you would like help with.

Recipe navigation: Recipe at a glance · Ingredients · Full cooking method · Back to top.