
This classic Ukrainian borscht recipe brings together sweet beets earthy beef and garden vegetables in one delicious pot. The rich ruby color and layers of flavor have made it a staple in Ukrainian kitchens for generations with each family adding their own loving touches.
Ingredients
- Beef shank with bone or beef soup bones: choose a meaty cut with marrow for the richest broth
- Water: filtered if possible for clear clean broth
- Beets: opt for firm medium sized roots with vibrant color to ensure freshness and sweetness
- Sunflower oil or vegetable oil: sunflower oil gives an authentic touch and subtle flavor
- Large onion: go for firm bulbs with papery skins for sweetness when cooked
- Carrots: pick younger carrots for their natural sweetness and tender texture
- Tomato paste: use double concentrate for more robust flavor and deeper red color
- White vinegar: select a mild vinegar for balancing sweetness and adding brightness
- Potatoes: waxy potatoes hold their shape better in soup
- Cabbage: use fresh tightly packed heads for best crunch and taste
- Garlic: fresh local garlic gives the deepest flavor
- Sugar: just a pinch made from cane to enhance beet sweetness
- Salt and pepper: freshly ground black pepper and kosher salt are ideal
- Fresh dill: bright green fronds with no wilt for a burst of herbal freshness
- Bay leaf: whole dried bay for subtle herbal background
- Sour cream: full fat is classic for richness and creamy finish
Step-by-Step Instructions
- Build the Beef Broth:
- Place beef shank or bones in a large pot with water. Bring to a boil and skim off foam. Simmer for about two hours on low heat. Remove beef and set aside to cool then reserve the broth. This slow simmer releases deep flavor and makes the borscht hearty.
- Cook the Beet Base:
- While broth simmers peel and grate beets. Heat sunflower oil in a skillet over medium. Add beets vinegar and sugar. Sauté gently for five minutes to concentrate their sweetness and develop color.
- Add Tomato Depth:
- Mix tomato paste into beets and cook for an additional two minutes. This step caramelizes the paste intensifying the borscht’s rich flavor.
- Make the Aromatic Base:
- In the same pan sauté finely chopped onion and grated carrot until soft about seven minutes. Cook them low and slow so their natural sugars develop. Then add them to the main broth.
- Layer the Vegetables:
- Slide potatoes and bay leaf into the reserved broth. Keep simmering about ten minutes so potatoes start to soften and add their gentle earthiness to the stock.
- Add Cabbage:
- Toss in shredded cabbage. Let everything simmer until both cabbage and potatoes are melt in your mouth tender about fifteen minutes. Good borscht needs patience in this step.
- Return the Beef:
- Shred the cooled beef by hand removing any bones or gristle. Add meat back to the pot for delicious texture and savory depth.
- Season and Finish:
- Add minced garlic. Sprinkle salt and pepper to taste. Simmer a minute so the flavors meld.
- Add Fresh Dill:
- Remove from heat and stir in chopped dill for herbal aroma and classic Ukrainian freshness.
- Serve:
- Ladle borscht into bowls and finish with sour cream for the traditional creamy swirl.

There is something magical about fresh dill in this soup. Its bright grassy notes are what make each spoonful unmistakably Ukrainian. The moment I see sour cream melting into the garnet red broth I remember my grandfather always insisting on a double spoonful.
Storage Tips
Borscht stores beautifully in the fridge for up to four days. I recommend letting it chill overnight since the flavor improves by day two. Freeze in airtight containers for up to three months. When reheating gently warm it on the stove and add a splash of water or broth if needed as it may thicken.
Ingredient Substitutions
For vegetarian borscht swap the beef broth for quality vegetable stock and increase the amount of root vegetables for richness. If you do not have sunflower oil a mild olive oil works. For a meatier flavor without beef try smoked turkey legs or add a few dried mushrooms to the broth.
Serving Suggestions
Serve hot with a swirl of sour cream and a sprinkle of extra dill. It pairs perfectly with traditional Ukrainian rye bread or garlic pampushky which are soft Ukrainian rolls. For a lighter meal borscht is also delicious served chilled during summer months.

Cultural and Historical Context
Borscht is a vital part of Ukrainian culinary history and every region has its own cherished method. It is not just a soup but also a celebration dish served at weddings or feasts and enjoyed both hot and cold through all seasons. That deep red color is a symbol of hospitality and home.
Recipe FAQs
- → What gives Ukrainian borscht its signature color?
The deep red hue comes from grated beets, which are essential in achieving the soup’s signature vibrant color and earthy flavor.
- → Can I use other meats instead of beef?
Yes, while beef shank is traditional, pork or even chicken can be used. For a vegetarian option, simply omit the meat and use vegetable broth.
- → How do I enhance the flavors of borscht?
Allow the soup to rest for a few hours or overnight—this helps the flavors develop and meld together for a richer taste.
- → Is borscht typically served hot or cold?
Borscht can be enjoyed both ways! Hot is common in colder months for comfort, while cold versions are enjoyed in summer.
- → Which garnishes are traditional with borscht?
Traditionally, a dollop of sour cream and a sprinkle of fresh dill add creaminess and brightness to each serving.
- → What can I serve with Ukrainian borscht?
Pair with rye bread or Ukrainian garlic pampushky rolls for a complete, authentic experience.