Ukraine · Hearty & chunky

Ukrainian borscht

A ruby-red pot of slow beef broth, beetroot, cabbage and potato, sweet and sour in balance, finished with garlic and dill and a spoonful of smetana.

Prep
30 min
Cook
3 hr 5 min
Total
3 hr 55 min
Effort
Takes some care
Serves
8

The total includes 20 min of soaking, resting or chilling.

Broth richness 5/10
Spice 1/10
Comfort 7/10

Ratings by the Soupmap Culinary Team, not readers.

Gluten-free

A vivid red bowl of Ukrainian borscht with a spoonful of sour cream.
Photo: Nillerdk, CC BY 3.0, via Wikimedia Commons

Borscht is cooked across a wide sweep of Eastern Europe, in more family versions than anyone could count, but it is most closely associated with Ukraine, where a pot of it is a full meal rather than a starter. In 2022 UNESCO inscribed the culture of Ukrainian borscht cooking on its list of intangible cultural heritage in need of urgent safeguarding.

This is a Ukrainian-style red borscht: a bone-in beef broth, then beetroot, cabbage, potato, carrot and tomato, sharpened with a little vinegar and finished with garlic and dill. The thing to get right is the colour. Beetroot's red pigment fades towards brown when it's boiled for a long time, so the beetroot is cooked separately with a splash of vinegar, which keeps the red stable, and joins the pot only near the end.

Serve it with smetana, the thick, tangy cultured sour cream eaten all over Eastern Europe. In Ukraine it often comes with pampushky too: small, soft bread rolls brushed with garlic. I think it's even better the next day.

Ingredients

Broth

Beetroot

Soup

To serve

Method

Make the broth

  1. Put the beef in a large pot (at least 6 l), add the cold water and bring it slowly to a boil over medium heat, about 20 minutes. As it nears the boil, grey foam rises: skim it off with a large spoon for about 5 minutes, until what rises is mostly white and the surface stays fairly clear.

  2. Add the halved onion, bay leaves and peppercorns. Lower the heat until the surface barely trembles and simmer with the lid ajar for 2–2 1/2 hours, until the meat is very tender and comes away from the bone easily.

  3. Lift out the beef. Strain the broth through a sieve into a clean pot; you should have about 2.5 l (top it up with water if you have less). Stir in the 1 tbsp salt. When the beef is cool enough to handle, pull the meat into bite-sized pieces, discarding the bones, gristle and any large pieces of fat.

Cook the beetroot

  1. About 45 minutes before the broth is ready, heat the oil in a large, deep frying pan or sauté pan over medium heat. Cook the chopped onion until soft and golden at the edges, 6–8 minutes, then add the carrot and cook for 5 minutes more.

  2. Add the beetroot, vinegar and sugar and stir well. Cook, stirring often, for 10 minutes, until the beetroot starts to soften and looks glossy. Stir in the tomato paste and cook for 2 minutes.

  3. Add the 250 ml water, cover and cook over low heat until the beetroot is tender and a deep, glossy red, 15–20 minutes. Add a splash more water if the pan starts to look dry.

Bring it together

  1. Bring the strained broth to a boil over medium-high heat. Add the potatoes and simmer for 10 minutes.

  2. Add the cabbage and simmer until it has just softened and the potatoes are nearly tender, 5–8 minutes.

  3. Stir in the beetroot mixture and the meat. Bring the soup back to a gentle simmer and cook until the potatoes are tender, 5 minutes. Don't let it boil hard from here on, or the colour dulls.

  4. Stir in the garlic and most of the dill and turn off the heat. Taste and balance: it should be savoury, gently sweet and clearly but not sharply sour. Add salt (it will likely need another 1–2 tsp), pepper, or a few more drops of vinegar as needed.

  5. Cover the pot and let it rest for 15–20 minutes so the flavours settle. Serve in deep bowls with a spoonful of smetana and the rest of the dill.

Swaps

Cooking for coeliac disease or an allergy? Check every label: the notes below say which ones matter.

Gluten-free

  • It's already gluten-free as written. If you take the stock shortcut, choose a stock labelled gluten-free, and check the label on the sour cream if it contains anything beyond cream and cultures.
  • Serve it with gluten-free bread rather than pampushky, which are wheat rolls.

Plant-based

  • Follow the meatless variation (vegetable stock or water plus soaked dried mushrooms), check the stock label for milk, and finish with unsweetened plant-based yoghurt instead of smetana. It's still very much borscht: meatless borscht is part of the Ukrainian Christmas Eve supper.
  • Add a drained 400 g tin of kidney or white beans with the beetroot to make up for some of the body the beef gives.

High-protein

  • Use 1.5 kg bone-in beef instead of 1 kg: about 8 g more protein a bowl, on top of the roughly 15 g the meat gives as written, and a meatier broth.
  • Add 2 drained 400 g tins of kidney or white beans with the beetroot: about 5 g more a bowl.

Tips

  • Acid keeps the colour. Beetroot's red pigment is most stable in slightly acidic conditions and breaks down with long boiling. The vinegar in the pan and the short, gentle final simmer are what keep the soup ruby rather than brown.
  • Choose meat on the bone. Shin, short ribs or brisket on the bone give the broth body from the bones and connective tissue, and the meat stays moist through the long simmer.
  • Cut everything slim. Thin matchsticks of beetroot, grated carrot and finely shredded cabbage are the usual Ukrainian cut. They cook evenly and quickly, and every spoonful gets a bit of everything.
  • Balance at the end, not the start. Sweet (beetroot, carrot, sugar), sour (vinegar, tomato) and salt all shift as the soup cooks. Adjust them together once everything is in the pot.
  • Smetana substitutes: full-fat sour cream or crème fraîche are the closest. Low-fat sour cream is thinner and sharper.
  • Wear an apron. Beetroot stains hands, boards and clothes. Gloves help when you're cutting it.

Make ahead and storage

  • Borscht is a natural make-ahead soup. Cool it quickly (divide it between shallow containers), then refrigerate for up to 4 days. It freezes for up to 3 months, though the potatoes turn slightly grainy.
  • Reheat gently until steaming hot throughout, without a hard boil, to keep the colour.
  • You can make the broth up to 2 days ahead. Chill it, then lift off the solid fat before using.

Variations

  • Meatless: use water or vegetable stock instead of the beef broth and add a handful of dried mushrooms, soaked and chopped, with the beetroot. Meatless borscht is traditionally part of the Ukrainian Christmas Eve supper.
  • With beans: add 1 tin (400 g) of kidney or white beans, drained, with the beetroot. Beans are a common addition in Ukraine.
  • With pork: use bone-in pork ribs in place of the beef; they need about 1 1/2 hours.
  • Shortcut: skip the broth and use 2.5 l low-salt beef stock (check the label if you need it gluten-free), seasoning to taste. You lose the meat and some body, but it's a good weeknight borscht.

Reviews & cooks' tips

Reviews and tips from people who've cooked this appear here.