Method

  1. Prepare the rice, herbs, and vegetables

    Rinse 60 g of short-grain white rice in a fine-mesh sieve until the water runs mostly clear, then drain well. Mince 50 g of yellow onion for meatballs. Chop 15 g of fresh parsley for meatballs and 10 g of fresh dill. Cut 150 g of yellow onion for soup, 200 g of carrots, 150 g of celery root, and 150 g of red bell pepper into roughly 1 cm (⅜ in) pieces so they cook at the same rate. Chop 15 g of fresh parsley for soup and keep it separate for the finish.

  2. Mix and shape the meatballs

    Combine 250 g of ground pork, 250 g of lean ground beef, 60 g of short-grain white rice, 1 large egg, 50 g of yellow onion for meatballs, 15 g of fresh parsley for meatballs, 10 g of fresh dill, 3 g of kosher salt for meatballs, and half of 2 g of black pepper in a large bowl. Mix just until the meat becomes slightly tacky and the rice and herbs are evenly distributed. Wet clean hands with cool water and shape the mixture into meatballs roughly 3.5 cm (1⅜ in) wide. Set them on a clean plate. Wash hands thoroughly, then wash and sanitize the bowl, work surface, and any utensils that touched the raw meat mixture.

  3. Soften the vegetables

    Heat 15 ml of olive oil in a large heavy pot over medium heat. Add 150 g of yellow onion for soup, 200 g of carrots, 150 g of celery root, 150 g of red bell pepper, and 4 g of kosher salt for soup. Cook for 7 to 9 minutes, stirring often, until the onion is translucent and the vegetable edges have softened without browning.

    08:00
  4. Build the broth

    Stir 45 g of tomato paste into the vegetables and cook for about 1 minute, scraping the bottom of the pot, until the paste darkens slightly and smells sweet. Pour in 1500 ml of unsalted beef broth and 720 ml of water, add 2 bay leaves and the rest of 2 g of black pepper, and bring the pot to a steady boil over medium-high heat.

    01:00
  5. Simmer the meatballs until fully cooked

    Fully cooked rice meatballs simmering in Romanian sour meatball soup as one is checked with a thermometer

    Lower the heat so the broth bubbles gently. Add the shaped meatballs one at a time, spacing them around the pot, and avoid stirring for the first 3 minutes so their surfaces can set. Simmer uncovered for 20 to 25 minutes, stirring gently once or twice, until the rice is tender and the meatballs are firm. Start checking at 20 minutes. Lift an intact meatball from the center of the pot onto a clean spoon and insert a thin-tip instant-read thermometer from the side into its center; it must reach at least 71°C/160°F. Do not rely on floating or color alone. Remove 2 bay leaves.

    20:00
  6. Sour and finish the soup

    While the meatballs finish cooking, heat 480 ml of Romanian wheat-bran borș in a small saucepan until it just reaches a boil. Pour about three-quarters of the hot borș into the soup, return the pot to a gentle simmer, and cook for 3 minutes. Stir in 5 g of dried lovage and 15 g of fresh parsley for soup, then taste. Add some or all of the remaining hot borș until the broth is distinctly tangy but still savory; add a small splash of hot water if the sourness becomes sharper than you prefer.

    03:00
  7. Serve the soup

    Ladle the hot soup into deep bowls, giving each serving several meatballs and plenty of vegetables. Offer sour cream (optional) and fresh green chile peppers (optional) at the table so each person can enrich or sharpen the bowl to taste.

Cook's noteBorș varies in acidity from brand to brand. Let it simmer in the soup for the full 3 minutes before deciding whether the broth needs adjustment.

Smart Substitutions

  • No Romanian borș? Use fresh lemon juice instead, adding it gradually near the end until the broth tastes clearly sour but balanced.
  • No celery root? Use a combination of celery stalks and parsnip for a similar mix of herbal and earthy sweetness.
  • Prefer one meat? Use all ground pork or all lean ground beef, keeping the total weight unchanged and cooking every meatball to 71°C/160°F.
  • No lovage? Use fresh celery leaves with extra parsley; the flavor will be different but still fresh and soup-friendly.

Tips and Variations

  • Wet your hands lightly before shaping each few meatballs; the mixture releases cleanly without adding extra filler.
  • Keep the broth at a gentle simmer after adding the meatballs. A hard boil can break their tender rice-studded structure.
  • Cut the soup vegetables to a similar size so carrot, celery root, onion, and pepper become tender at the same time.

What Went Wrong?

  • Meatballs are breaking apart The broth may be boiling too hard or the mixture may have been under-mixed. Lower the heat and let the remaining meatballs set for 3 minutes before stirring.
  • Rice inside the meatballs is still firm Keep the soup at a gentle simmer and cook a few minutes longer, checking that the pot has enough liquid to cover most of each meatball.
  • Broth tastes dull Check the salt first, then add more borș or a little lemon juice so the sourness lifts the meat and root vegetables.
  • Broth looks greasy Lower the heat to prevent vigorous boiling, then skim excess fat from the surface with a wide spoon before adding the herbs.

Nutrition Estimate

Calories310
Protein22 g
Carbs22 g
Fat14 g
  • Fiber: 3 g per serving
  • Sodium: 670 mg per serving

Nutrition disclaimer:This recipe is provided for general cooking information only. Nutrition values are estimates and may vary by ingredients, brands, preparation methods, and serving sizes. Check ingredient labels and follow appropriate food-safety practices. This content is not medical, dietary, allergy, or professional food-safety advice.

FAQ

What is Romanian borș?Romanian borș is a tart fermented wheat-bran liquid used to sour ciorbă. It is different from beet borscht and is usually sold bottled in Eastern European markets.
Why is rice mixed into the meatballs?The grains absorb broth as they cook, which keeps the meatballs tender and gives their centers the characteristic soft, lightly textured bite.
Can I make the soup less sour?Yes. Add the hot borș in stages and taste after a brief simmer, or soften an overly sharp pot with a small splash of hot water.