Sweden · Europe

Healthy Swedish Meatball Recipe with Creamy Gravy

Updated November 3, 2026

Total time
50 min
prep 25 min · cook 25 min
Serves
4
portions as written
Safe temperature (USDA)
160°F / 71°C
check the thickest piece
Cuisine
Sweden
Europe

Jump to recipe

Healthy Swedish Meatball Recipe with Creamy Gravy

Swedish meatballs, or köttbullar, are gently spiced beef-and-pork meatballs served with a savory, creamy pan gravy. This version keeps the familiar allspice-and-nutmeg flavor, uses leaner ground meat, and builds a smooth sauce with broth and milk rather than a large amount of cream.

Ingredients

  • ½ cup plain fine breadcrumbs (30 g)
  • ¼ cup milk, for soaking the breadcrumbs (60 ml)
  • ½ cup finely grated yellow onion (about 75 g, from 1 small onion)
  • 1 large egg
  • 1 pound lean ground beef, about 90% lean (454 g)
  • 8 ounces lean ground pork (227 g)
  • ¾ teaspoon fine salt (4 g), divided
  • ¼ teaspoon freshly ground black pepper (about 0.5 g), plus more to taste
  • ½ teaspoon ground allspice (about 1 g)
  • ¼ teaspoon ground nutmeg (about 0.5 g)
  • 1 tablespoon neutral oil, such as canola oil (15 ml), divided for browning
  • 1 tablespoon unsalted butter (14 g)
  • 2 tablespoons all-purpose flour (16 g)
  • 1½ cups low-sodium beef broth (360 ml)
  • ½ cup milk (120 ml)
  • 1 teaspoon Dijon mustard (5 g)
  • 1 teaspoon Worcestershire sauce (5 ml)
  • ⅓ cup sour cream (about 75 g), at room temperature
  • 1 tablespoon chopped fresh parsley (about 4 g), optional, for serving

Instructions

  1. Soak the breadcrumbs. In a large bowl, stir the breadcrumbs and ¼ cup milk together until evenly moistened. Leave them for 5 minutes while you grate the onion and measure the remaining ingredients. The soft crumbs help bind the meatballs and keep their texture tender without requiring extra fat.
  2. Mix and shape the meatballs. Add the grated onion, egg, ground beef, ground pork, ½ teaspoon of the salt, pepper, allspice, and nutmeg to the bowl. Mix gently with clean hands or a fork just until the ingredients are evenly combined; compact, heavily mixed meat can make dense meatballs. Shape the mixture into 20 to 24 balls, about 1½ inches (4 cm) across, and set them on a plate. Keep the sizes as consistent as you can so they cook at the same rate.
  3. Brown in batches. Heat a large, deep skillet over medium heat and add about half the oil. When it is hot, arrange half the meatballs in the pan with space between them. Brown for 4 to 5 minutes, turning them carefully so several sides develop a golden crust; they do not need to be cooked through yet. Transfer them to a clean plate, add the remaining oil, and brown the second batch in the same way. If the pan is small, work in more batches rather than crowding the meatballs, which can make them steam instead of brown.
  4. Make the gravy. Reduce the heat to medium-low. Add the butter to the skillet and let it melt, scraping up browned bits from the bottom with a wooden spoon. Sprinkle in the flour and stir for about 1 minute, until it forms a smooth paste and smells lightly toasted but has not darkened much. Whisk in the beef broth a little at a time to avoid lumps, then whisk in the ½ cup milk, Dijon mustard, Worcestershire sauce, and remaining ¼ teaspoon salt. Bring the sauce to a gentle simmer, stirring, and cook for 2 to 3 minutes until it begins to thicken.
  5. Finish cooking the meatballs. Return the meatballs and any juices on the plate to the skillet. Turn them gently to coat with gravy, cover the pan, and simmer over low heat for 8 to 10 minutes, turning once if needed. Check a large meatball in the center with a food thermometer: the USDA FSIS safe minimum for ground beef and pork is 160°F (71°C). If it has not reached that temperature, continue simmering and check again after a few minutes.
  6. Stir in the sour cream and serve. Turn off the heat and let the bubbling stop for about 1 minute. Stir a spoonful of warm gravy into the room-temperature sour cream, then stir that mixture back into the skillet. This gradual warming helps the sour cream blend smoothly instead of breaking. Taste the gravy and adjust the pepper or salt if needed. Sprinkle with parsley, if using, and serve hot.

Tips

  • Grate the onion finely. Small pieces distribute through the meatballs and soften as they cook. Large chunks can make the mixture harder to shape and may leave unevenly cooked spots. If the onion releases a lot of liquid, you can press it lightly with a spoon; there is no need to squeeze it completely dry.
  • Keep the mixture tender. Combine the ingredients only until mixed, and use a light touch when shaping. If the meat mixture feels sticky, dampen your hands with cool water rather than adding extra breadcrumbs, which can make the cooked centers dry.
  • Choose a useful substitute carefully. Plain panko can replace fine breadcrumbs in the same volume, though the meatballs may have a slightly looser, more textured crumb. If you cannot find allspice, use a small pinch each of cinnamon and cloves; the flavor will be warmer and less directly peppery, so start sparingly. Dijon can be omitted, but it gives the gravy a subtle tang.
  • Prevent a broken sauce. Keep the gravy at a gentle simmer, not a hard boil, and stir in sour cream after removing the pan from the heat. Full-fat sour cream is more stable than low-fat varieties. If the gravy becomes too thick, loosen it with a tablespoon of broth or milk at a time.

Serving Suggestions

For a classic Swedish-style plate, spoon the meatballs and gravy over boiled potatoes or creamy mashed potatoes, then add lingonberry preserves and a crisp cucumber salad. Lingonberries have a bright, tart flavor that balances the savory sauce. If they are difficult to find, cranberry preserves with a little lemon juice offer a practical, sweeter substitute; use a small spoonful so they do not overpower the meal.

Egg noodles, buttered whole-wheat noodles, or steamed rice also make convenient bases for catching the gravy. Add a green vegetable such as green beans, peas, or sautéed cabbage for freshness and color. For a less formal meal, serve the meatballs with toothpicks and a small bowl of extra sauce, but keep them hot until serving and return leftovers to the refrigerator promptly.

Variations

Swedish meatballs have family and regional variations, so the seasoning and accompaniments are not identical in every version. This recipe uses a common beef-and-pork combination with allspice and nutmeg. For a milder flavor, reduce the allspice to ¼ teaspoon; for a more pronounced warm spice note, add another small pinch of nutmeg rather than doubling both spices at once.

For an all-beef version, replace the pork with an additional 8 ounces (227 g) of lean ground beef. The result will taste a little less rich, so take care not to overmix or overcook it. You can also use ground turkey in place of the beef and pork, but poultry meatballs must reach 165°F (74°C), the USDA FSIS safe minimum for ground poultry; check the center with a thermometer and simmer as needed.

To make the gravy without sour cream, use ⅓ cup (80 ml) plain, unsweetened Greek yogurt, stirred in off the heat. It tastes tangier and can separate if boiled, so temper it with warm gravy just as you would the sour cream. For a dairy-free variation, use an unsweetened, unflavored plant milk and dairy-free butter, and omit the sour cream or use a suitable plain dairy-free alternative. The sauce will have a different flavor and may be less creamy.

Storage and Reheating

Let the meatballs cool briefly, then refrigerate them in a shallow, airtight container within 2 hours of cooking. Keep them with the gravy to help prevent drying; they will keep for 3 to 4 days in the refrigerator. For longer storage, freeze the cooled meatballs and sauce in a freezer-safe container for up to 2 to 3 months for best quality. Thaw overnight in the refrigerator before reheating.

Reheat a portion gently in a covered saucepan over low to medium-low heat, stirring occasionally and adding a splash of broth or milk if the gravy has thickened. You can also microwave it in a covered, microwave-safe dish, stirring partway through. Reheat leftovers until the center reaches 165°F (74°C), checking with a food thermometer. Avoid repeatedly cooling and reheating the same batch; warm only the amount you plan to serve.

Frequently Asked Questions

Can I make the meatballs ahead?

Yes. Shape the meatballs up to 1 day ahead, cover them, and keep them refrigerated until you brown them. You can also cook the full recipe a day ahead and reheat it gently. The gravy may thicken as it chills, so stir in a little broth or milk while reheating and check that the meatballs reach 165°F (74°C) as leftovers.

Why are my Swedish meatballs tough?

Overmixing, packing the meatballs too firmly, or simmering them for too long can make them dense. Mix only until the ingredients come together, shape them lightly, and use a thermometer to avoid guessing when they are done. The soaked breadcrumbs also help keep the texture tender, so do not skip them or leave them dry.

Can I bake the meatballs instead of browning them in a skillet?

Yes. Arrange the shaped meatballs with space between them on a lightly oiled, rimmed baking sheet and bake at 400°F (200°C) until browned and cooked through, generally about 15 to 20 minutes depending on their size. Check a center meatball with a thermometer for 160°F (71°C) because these contain ground beef and pork. Make the gravy separately in a skillet, then add the baked meatballs and their juices.

How can I tell whether the gravy is thick enough?

It should lightly coat the back of a spoon but still flow easily around the meatballs. Remember that it thickens as it cools and after the sour cream is added. If it is too thin, simmer it gently for another minute or two before adding the sour cream; if it is too thick, whisk in broth or milk a tablespoon at a time.

Are Swedish meatballs traditionally served with lingonberries?

Lingonberry preserves are a familiar accompaniment, but they are not essential to the meatballs themselves, and serving customs vary. Their tart-sweet flavor contrasts with the creamy gravy. Cranberry preserves or a tart cucumber salad are useful alternatives if lingonberries are not available, or simply serve the meatballs with potatoes and vegetables.

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).