Swedish Meatballs with Cream of Celery Soup Recipe

Updated November 4, 2026

Total time
50 min
prep 20 min · cook 30 min
Serves
6
portions as written
Safe temperature (USDA)
160°F / 71°C
check the thickest piece

Jump to recipe

Swedish Meatballs with Cream of Celery Soup Recipe

Swedish meatballs with cream of celery soup are tender beef-and-pork meatballs simmered in a creamy, savory gravy and served over noodles or potatoes. Swedish meatballs have many regional and family versions; this easy stovetop recipe uses condensed soup for a convenient, home-style sauce rather than claiming to be one traditional preparation.

Ingredients

  • ½ cup (55 g) plain fine breadcrumbs
  • ⅓ cup (80 ml) milk
  • 1 large egg (about 50 g without shell)
  • 1 medium yellow onion (about 150 g), divided: half finely grated and half finely chopped
  • 1½ pounds (680 g) ground beef and pork, such as ¾ pound (340 g) of each
  • 1 teaspoon (6 g) fine salt
  • ½ teaspoon (1 g) black pepper
  • ¼ teaspoon (0.5 g) ground allspice
  • ⅛ teaspoon (0.25 g) ground nutmeg
  • 1 tablespoon (15 ml) neutral cooking oil
  • 1 can condensed cream of celery soup, 10½ ounces (298 g)
  • 1¼ cups (300 ml) low-sodium beef broth
  • 1 teaspoon (5 ml) Worcestershire sauce
  • ½ cup (120 g) sour cream, preferably at room temperature
  • 2 tablespoons (8 g) chopped fresh parsley, optional, for serving

For a complete meal, have cooked egg noodles, mashed potatoes, or boiled potatoes ready to serve; these are accompaniments, not ingredients in the meatball mixture. Condensed cream of celery soup is widely available in many US grocery stores. If you cannot find it, use condensed cream of mushroom soup in the same amount; the gravy will have a more earthy mushroom flavor and lose the celery note. Choose condensed soup, not ready-to-eat soup, because the broth is added separately to create the sauce.

Instructions

  1. Get the ingredients ready. Finely grate half the onion and finely chop the other half. Measure out the seasonings, soup, broth, and Worcestershire sauce so they are ready when the meatballs are browning. This preparation, along with shaping and mixing, is included in the 20-minute prep time.

  2. Soak the breadcrumbs. In a large bowl, stir the breadcrumbs and milk together. Let them stand for 5 minutes so the crumbs soften. Beat in the egg, then mix in the grated onion, salt, pepper, allspice, and nutmeg. The softened crumbs help keep the meatballs tender; dry crumbs mixed straight into the meat can make them dense.

  3. Shape the meatballs. Add the ground beef and pork to the bowl. Use clean hands or a fork to mix gently just until the ingredients are evenly combined. Avoid squeezing or kneading the mixture, which can make the finished meatballs firm. Shape it into about 24 meatballs, each roughly 1¼ inches (3 cm) across. If the mixture sticks, lightly dampen your hands rather than adding extra breadcrumbs.

  4. Brown in batches. Heat the oil in a large, deep skillet or Dutch oven over medium heat. Add enough meatballs to leave a little space between them and brown for about 8 to 10 minutes, turning every couple of minutes so several sides develop color. Transfer them to a plate and brown the remaining batch. They do not need to be cooked through at this stage; browning builds flavor, and they finish cooking in the gravy. If the pan looks dry between batches, add a small splash of oil.

  5. Start the gravy. Pour off excess fat if there is more than about a tablespoon left in the pan, taking care to leave the browned bits behind. Add the chopped onion and cook for 3 to 4 minutes, stirring, until softened. Stir in the condensed cream of celery soup, beef broth, and Worcestershire sauce, scraping the bottom of the pan to loosen the browned bits. The sauce may look thick at first; it will loosen as it heats.

  6. Simmer until cooked through. Return the meatballs and any juices on the plate to the skillet. Bring the sauce just to a gentle simmer, then lower the heat, cover, and cook for about 15 minutes, turning the meatballs once if convenient. Check a large meatball in the center with a food thermometer: USDA FSIS safe minimum temperature for ground meat is 160°F (71°C). If it has not reached that temperature, continue simmering and check again after a few minutes. Keep the sauce at a gentle bubble rather than a hard boil.

  7. Finish the creamy sauce. Turn the heat to low. Stir a spoonful of hot gravy into the sour cream, then stir that mixture back into the skillet. This gradual warming helps the sour cream blend smoothly. Heat gently for 1 to 2 minutes without boiling, taste the gravy, and adjust the pepper or salt if needed. Sprinkle with parsley, if using, and serve while warm.

Tips

  • Use a light touch with the meat. Mix only until the beef, pork, and seasonings come together. Overmixing compresses the mixture and can make meatballs tough. A small cookie scoop helps portion them evenly, which also helps them cook at the same rate.
  • Brown in uncrowded batches. If meatballs are packed tightly into the skillet, they steam instead of browning. Give them room and let each side take on color before turning. If your skillet is small, make three batches rather than forcing two crowded ones.
  • Adjust the gravy carefully. Condensed soup and broth brands vary in saltiness, so use low-sodium broth and taste before adding more salt. If the gravy gets thicker than you like, stir in broth a tablespoon or two at a time. If it seems thin, simmer it uncovered briefly before adding the sour cream.
  • Keep sour cream from splitting. Let it lose its refrigerator chill while the meatballs cook, temper it with a little hot gravy, and add it over low heat. Avoid boiling the finished sauce. Full-fat sour cream usually gives the smoothest result; reduced-fat versions can separate more easily when overheated.

Serving Suggestions

Egg noodles are a familiar pairing because their mild flavor and broad shape catch the creamy gravy. For six servings, cook about 12 ounces (340 g) of dry noodles according to the package directions, then drain them just before the meatballs are ready. Mashed potatoes also make a good base, while boiled baby potatoes keep the meal simple and let the sauce stand out. Spoon meatballs and plenty of gravy over the starch rather than serving the sauce on the side.

Add a vegetable with a fresh or slightly tart edge to balance the rich sauce. Steamed green beans, buttered peas, roasted carrots, or a crisp cucumber salad all work well. A spoonful of lingonberry preserves is a classic Swedish-style accompaniment if you can find it; cranberry preserves or a tart berry jam are practical substitutes, though they bring a different fruit flavor. Put the preserves on the side so each person can decide how much to add.

Variations

Use all beef or all pork: The half-beef, half-pork combination gives a balanced, savory flavor, but either meat can be used alone. All beef makes a somewhat more robust meatball; all pork tends to be softer and milder. Keep the total amount at 1½ pounds (680 g), and use the same thermometer check for doneness.

Make it without dairy in the sauce: For a different, dairy-free approach, use a suitable dairy-free condensed celery soup and unsweetened plant milk in place of the milk, then omit the sour cream. Check labels because condensed soups and plant-based substitutes vary. The gravy will be less tangy and may not be as rich, so taste it and add a little extra broth or pepper as needed. The meatball mixture still contains an egg; replacing that requires a tested egg-free binder and can change the texture.

Add mushrooms: Brown 8 ounces (225 g) sliced mushrooms after the meatballs, adding a little oil if needed. Set them aside with the meatballs, soften the onion in the same skillet, and continue with the soup and broth. Return the mushrooms when you add the meatballs. They make the gravy more earthy and substantial without changing the cooking method.

Give the sauce a little tang: Stir in 1 teaspoon (5 ml) Dijon mustard along with the condensed soup, or add a small squeeze of lemon after cooking. Either option brightens the rich gravy; start with a little, taste, and increase only if you want a more noticeable tang.

Storage and Reheating

Refrigerate leftover meatballs and gravy within 2 hours of cooking, using a shallow, covered container so they cool promptly. They keep in the refrigerator for 3 to 4 days. Store noodles or potatoes separately when possible; this prevents them from soaking up all the gravy and becoming soft. If you are packing the meal for later, let it cool briefly, portion it into containers, and refrigerate rather than leaving it out to cool for an extended period.

Reheat only the portion you plan to eat in a saucepan over low to medium-low heat, stirring gently and adding a splash of broth or water if the sauce has thickened. Heat until the meatballs and gravy reach 165°F (74°C), checking with a food thermometer. Microwave portions in a covered microwave-safe dish, stirring halfway through and checking more than one spot for even heating. Avoid repeatedly reheating and cooling the entire batch, since that can dry out the meatballs and affect the sauce.

For longer storage, freeze cooled meatballs and gravy in a sealed freezer-safe container for up to 3 months for best quality. Leave a little room for expansion. Thaw overnight in the refrigerator, then reheat to 165°F (74°C). The sour cream sauce may look slightly less smooth after freezing and thawing; warm it gently and stir well. Do not leave the dish at room temperature for more than 2 hours.

Frequently Asked Questions

Can I use frozen meatballs?

Yes. Use about 2 pounds (900 g) of fully cooked frozen meatballs. Skip the meatball ingredients and browning steps, soften the chopped onion in the skillet, and stir in the soup, broth, and Worcestershire sauce. Add the frozen meatballs and simmer according to the package directions until hot throughout; check that the centers reach 165°F (74°C) when reheating cooked meat. Stir in the sour cream at the end. The texture and seasoning will differ from homemade meatballs, and you may want to taste before adding salt.

Can I make the meatballs ahead?

You can shape the uncooked meatballs, cover them, and refrigerate them for up to 24 hours before browning and simmering. Keep them cold and separate from ready-to-eat foods. You can also cook the whole recipe a day ahead and refrigerate it; the sauce may thicken, so loosen it with a splash of broth as you reheat it. Always check the center temperature when cooking or reheating.

Why did my cream sauce turn grainy or separate?

The most common cause is heating sour cream too quickly or letting the finished gravy boil. Take the pan off a strong heat, temper the sour cream with a spoonful of warm sauce, and stir it in over low heat. If the sauce has already separated, whisking gently while adding a tablespoon of warm broth may improve its appearance, although it may not become completely smooth again.

Can I make this recipe gluten-free?

Possibly, but check every packaged ingredient. Use certified gluten-free breadcrumbs, and confirm that the condensed celery soup, Worcestershire sauce, and broth are labeled gluten-free. If gluten-free condensed cream of celery soup is not available, a compatible condensed soup substitute can work, but it will alter the flavor. Keep the same total quantities and verify the meatballs reach 160°F (71°C).

What can I use instead of cream of celery soup?

Condensed cream of mushroom soup is the closest easy swap in texture and quantity, though it gives the gravy a deeper, earthier taste. Condensed cream of chicken soup also works, with a milder, poultry-forward flavor. Use 10½ ounces (298 g) and retain the broth amount, then taste before seasoning because different soups have different salt levels. Ready-to-eat soup is thinner and should not be substituted in the same amount without reducing the broth.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).