Swedish Meatballs with Cream Gravy & Lingonberries

Swedish meatballs | Marian Weyo

Tender Swedish meatballs in rich cream gravy are one of those comforting meals that feel made for cold evenings.

A mixture of ground beef and pork is combined with milk-soaked breadcrumbs, gently cooked onion, egg, allspice, nutmeg, and pepper, then shaped into small meatballs and browned in butter. The flavorful drippings left behind in the skillet become the foundation for a smooth beef-and-cream gravy.

Serve everything with buttery mashed potatoes, tart lingonberry preserves, and perhaps some quick-pickled cucumber for a classic combination of rich, savory, sweet, and tangy flavors.

Swedish meatballs are small enough to cook quickly but substantial enough for dinner, and they are particularly good made ahead. The meatballs can be shaped in advance, the gravy reheats well, and leftovers may be even better the following day.

🇸🇪 Swedish Meatballs Recipe

Prep time: 30 minutes
Cook time: 35 minutes
Total time: About 1 hour 5 minutes
Servings: 6
Makes: About 30–36 small meatballs

🛒 Ingredients

For the Meatballs

  • 1 pound ground beef
  • 1 pound ground pork
  • 1/2 cup plain breadcrumbs
  • 1/2 cup whole milk
  • 1 large egg
  • 1 small yellow onion, very finely diced
  • 2 tablespoons unsalted butter, divided
  • 1 teaspoon kosher salt
  • 1/2 teaspoon ground allspice
  • 1/4 teaspoon ground nutmeg
  • 1/2 teaspoon freshly ground black pepper
  • 1/4 teaspoon ground white pepper, optional

For the Cream Gravy

  • 3 tablespoons unsalted butter
  • 3 tablespoons all-purpose flour
  • 2 1/2 cups beef broth
  • 3/4 cup heavy cream
  • 1 teaspoon Dijon mustard
  • 1 teaspoon soy sauce
  • Freshly ground black pepper
  • Salt, as needed

For Serving

  • Creamy mashed potatoes
  • Lingonberry preserves
  • Chopped fresh parsley
  • Pickled cucumber, optional

🥣 Soak the Breadcrumbs

Place the breadcrumbs in a large mixing bowl.

Pour the milk over them and stir.

Let the mixture stand for about 5 to 10 minutes, until the breadcrumbs have absorbed the milk and become soft.

This mixture is called a panade.

It helps keep meatballs tender by adding moisture without simply pouring excess liquid directly into the ground meat.

🧅 Cook the Onion

Melt 1 tablespoon butter in a small skillet over medium-low heat.

Add the finely chopped onion.

Cook for about 5 to 7 minutes, stirring occasionally, until very soft and translucent.

Do not brown it aggressively.

Swedish meatballs benefit from the onion’s sweetness without needing a strong caramelized flavor.

Remove the skillet from the heat and let the onion cool for several minutes.

🥩 Mix the Meatballs

Add the cooled onion to the breadcrumb mixture.

Add the egg, salt, allspice, nutmeg, black pepper, and optional white pepper.

Stir until combined.

Add the ground beef and pork.

Use clean hands or a sturdy fork to mix everything gently until evenly distributed.

Stop as soon as the mixture comes together.

Overworking ground meat can make meatballs dense and springy instead of tender.

🍳 Test the Seasoning

Before shaping the entire batch, pinch off a teaspoon of the mixture and cook it in a small skillet.

Taste it.

This is the safest and easiest way to determine whether the meatballs need more salt, pepper, or spice before you commit to cooking all of them.

Adjust the mixture if necessary.

⚪ Shape Small Meatballs

Wet your hands lightly with cool water.

Shape the mixture into meatballs about 1 inch across, using roughly 1 generous tablespoon of mixture for each.

Swedish meatballs are traditionally on the smaller side.

Place them on a tray or baking sheet as you work.

You should get approximately 30 to 36 meatballs depending on size.

❄️ Chill if You Have Time

If time allows, refrigerate the shaped meatballs for about 20 to 30 minutes.

This helps them firm slightly and makes them easier to turn in the skillet.

It is not mandatory, so skip the step if dinner needs to happen quickly.

🧈 Brown the Meatballs

Heat a large skillet over medium heat.

Add the remaining tablespoon of butter.

Working in batches, add the meatballs without crowding the pan.

Cook for about 7 to 9 minutes per batch, turning carefully so they brown on several sides.

Transfer browned meatballs to a clean plate.

Add a little more butter if the skillet becomes dry between batches.

The meatballs do not necessarily have to be completely cooked through at this stage because they will finish cooking in the gravy.

They should, however, develop plenty of golden-brown color.

🥄 Keep the Browned Bits

Once all the meatballs are out of the skillet, do not wash the pan.

Those brown bits stuck to the bottom contain concentrated meat and butter flavor.

They will dissolve into the sauce when the broth is added.

If there is an excessive amount of fat, carefully pour off some while leaving approximately 3 tablespoons behind.

🧈 Make the Gravy Roux

Add enough butter to the skillet to give you approximately 3 tablespoons total fat.

Sprinkle in the flour.

Whisk continuously over medium heat for about 1 to 2 minutes.

The mixture should become smooth and lightly golden.

This cooks away the raw flour flavor while creating the thickening base for the gravy.

🥣 Add the Beef Broth

Slowly pour in the beef broth while whisking constantly.

Begin with a small amount.

Once the flour mixture is smooth, gradually add the rest.

Scrape the bottom of the skillet with the whisk or a wooden spoon to loosen all the browned bits.

Bring the sauce to a gentle simmer.

Cook for about 3 to 5 minutes until it begins to thicken.

🥛 Add the Cream

Reduce the heat to medium-low.

Whisk in the heavy cream, Dijon mustard, soy sauce, and several grinds of black pepper.

Taste before adding salt.

Beef broth and soy sauce can both contain substantial amounts of sodium.

The gravy should be creamy and savory without tasting overwhelmingly salty.

🥘 Finish the Meatballs in the Gravy

Return the meatballs and any juices from the plate to the skillet.

Reduce the heat to low.

Simmer gently for about 8 to 10 minutes, turning the meatballs occasionally.

The gravy should thicken enough to coat the meatballs.

Check one of the larger meatballs with an instant-read thermometer.

Ground beef and pork should reach 160°F.

If the sauce becomes thicker than you prefer, stir in a splash of beef broth.

🥔 Serve with Mashed Potatoes

Spoon creamy mashed potatoes onto warm plates.

Arrange the Swedish meatballs alongside or over the potatoes.

Spoon plenty of cream gravy over everything.

Add a spoonful of lingonberry preserves on the side and finish with chopped parsley.

If you like, add pickled cucumber for another tart contrast to the rich gravy.

🇸🇪 What Are Swedish Meatballs?

Swedish meatballs are called köttbullar in Swedish.

They are typically smaller than many Italian-American meatballs and are commonly made from a mixture of ground beef and pork.

Breadcrumbs, milk or cream, egg, and onion help create their tender texture.

Seasoning varies considerably among families and cooks, but spices such as allspice, white pepper, black pepper, and sometimes nutmeg are common.

The meatballs are traditionally associated with simple Swedish home cooking and are frequently served with potatoes, brown or cream sauce, lingonberries, and pickled cucumber.

Visit Sweden describes meatballs as being about as close to a national dish as Sweden has, while also emphasizing that individual families have their own preferred recipes.

🥩 Why Use Both Beef and Pork?

Beef brings a deep savory flavor.

Pork contributes fat and tenderness.

Combining them produces meatballs that are flavorful without becoming dry.

A half-beef, half-pork mixture is also used in Visit Sweden’s traditional meatball recipe.

You can make all-beef Swedish meatballs if needed, but choose beef that contains some fat so the finished meatballs remain juicy.

🍞 Why Soak Breadcrumbs in Milk?

Dry breadcrumbs absorb liquid before they enter the meat mixture.

That creates a panade, which helps keep the meatballs tender as they cook.

Without it, proteins in the meat can contract tightly and produce a firmer texture.

The key is balance.

You need enough milk to hydrate the breadcrumbs but not so much that the mixture becomes wet and impossible to shape.

For this two-pound batch of meat, 1/2 cup breadcrumbs and 1/2 cup milk create a moist but manageable mixture.

🧅 Why Cook the Onion First?

Raw onion can remain surprisingly firm inside a small meatball.

Cooking it first softens the pieces and mellows their sharpness.

That allows the onion to disappear into the meat mixture rather than creating crunchy pockets.

Let the cooked onion cool briefly before adding it so you do not warm the raw meat unnecessarily.

🌿 What Spices Go in Swedish Meatballs?

Allspice is probably the seasoning most strongly associated with many Swedish meatball recipes.

Its warm aroma gives the meatballs a distinct character without making them taste sweet.

Nutmeg works similarly.

Use it lightly.

The meatballs should primarily taste like browned beef, pork, onion, and creamy gravy, with warm spices underneath rather than dominating the dish.

White pepper is another traditional Scandinavian seasoning and can be substituted for or combined with black pepper.

🧈 Why Fry the Meatballs in Butter?

Butter adds flavor and creates valuable browned bits for the gravy.

Because butter can burn if the heat is excessively high, keep the skillet around medium.

If you find that the butter is browning too rapidly during several batches, add a small amount of neutral cooking oil.

That raises the effective cooking tolerance without losing the butter flavor.

🥘 Can You Bake Swedish Meatballs?

Yes.

Baking is useful when you do not want to brown several batches on the stovetop.

Preheat the oven to 400°F.

Arrange the meatballs on a lightly oiled baking sheet and bake for approximately 15 to 20 minutes, or until cooked through.

Food Network also uses a 400°F oven for one of its Swedish meatball preparations.

The drawback is that you will not get quite as much flavorful fond in the skillet for making gravy.

You can compensate by browning the butter slightly before making the roux.

🍶 What Makes Swedish Meatball Gravy Different?

The sauce is generally mild, creamy, and savory.

It does not need garlic, tomato, or large amounts of herbs.

The flavor comes from meat drippings, beef stock, cream, and restrained seasoning.

This recipe adds a little Dijon mustard and soy sauce.

Visit Sweden’s traditional recipe likewise uses beef stock, cream, and dark soy sauce in its accompanying sauce.

The soy sauce is not meant to make the gravy taste Asian. In a small quantity, it simply deepens the savory color and flavor.

🍒 Why Serve Lingonberries with Meatballs?

Lingonberries are tart northern berries widely used in Scandinavian cooking.

Their preserves have enough sweetness to complement the meatballs but retain a bright tartness.

That acidity cuts through the richness of cream gravy, meat, butter, and mashed potatoes.

Think of it in much the same way cranberry sauce balances a rich roast dinner.

You do not need to stir lingonberry preserves into the gravy.

A small spoonful served alongside the meatballs lets each person combine as much as they like in every bite.

🍒 What Can You Use Instead of Lingonberry Jam?

Cranberry sauce is the easiest substitute.

Choose one that retains some tartness rather than an extremely sweet jelly.

Red currant preserves are another good option.

Raspberry preserves can work in a pinch, though the flavor is sweeter and less tart.

The goal is to provide a small acidic fruit component rather than turn the meatballs into a sweet dish.

🥔 Mashed or Boiled Potatoes?

Either is appropriate.

Mashed potatoes are especially good when there is plenty of cream gravy because they soak up the sauce.

Boiled potatoes create a simpler plate and are also traditional.

Visit Sweden lists both mashed and boiled potatoes among common accompaniments for köttbullar.

For an easy Pop & Thistle side, try Garlic & Parsley Mashed Potatoes.

🥒 Add Pickled Cucumber

Thinly sliced pickled cucumber provides another acidic component.

The cool, crisp cucumber contrasts beautifully with warm meatballs and potatoes.

A Swedish-style pressed cucumber salad typically uses thin cucumber slices with vinegar, sugar, pepper, and parsley.

Even simple refrigerator pickles can perform the same basic role if that is what you have available.

🍝 Can You Serve Swedish Meatballs with Egg Noodles?

Yes.

Egg noodles are particularly common in American interpretations of Swedish meatballs.

They may not be the most traditional Swedish accompaniment, but they work extremely well with cream gravy.

Cook broad egg noodles until tender, drain, and toss with a little butter.

Spoon the meatballs and gravy over the top.

Rice can also work, although mashed potatoes remain my first choice.

🫕 Should Swedish Meatballs Be Completely Covered in Sauce?

Not necessarily.

You want enough gravy to coat the meatballs and spoon over potatoes, but they do not need to swim in it.

The recipe makes a generous amount because sauce is one of the pleasures of the dish.

If you prefer a lighter coating, use a little less cream and broth or reserve some gravy for another meal.

🚫 Why Are My Meatballs Tough?

Overmixing is one of the most common causes.

Once the meat goes into the bowl, mix only until the ingredients are evenly combined.

Packing the balls tightly can also create a dense texture.

Use light pressure when shaping them.

Finally, excessively lean meat can become dry. Pork helps prevent that by adding fat and moisture.

💧 Why Is My Meatball Mixture Too Wet?

The breadcrumbs may not have had enough time to absorb the milk, or the liquid ratio may be too high.

Let the panade sit before adding the meat.

If the final mixture still feels extremely loose, refrigerate it for about 30 minutes.

If necessary, add breadcrumbs a tablespoon at a time.

Avoid pouring in a large quantity because too many breadcrumbs can make the meatballs dry.

🥣 Why Is My Gravy Lumpy?

The broth was probably added too quickly.

When making a roux-based sauce, start with a small amount of liquid and whisk until completely smooth.

Then add more gradually.

If small lumps remain, whisk vigorously while the sauce simmers.

For a completely smooth gravy, strain it through a fine-mesh sieve before returning the meatballs.

🧂 Why Is My Gravy Too Salty?

Prepared beef broth, soy sauce, and the browned meatballs all contribute salt.

Use low-sodium beef broth when possible and wait until the gravy is nearly finished before adding additional salt.

If it becomes slightly too salty, adding unsalted cream or broth can dilute it.

Serving the meatballs with unsalted or lightly salted potatoes also helps balance the plate.

🥛 Why Did My Cream Sauce Separate?

The heat may have been too high.

Once the cream is added, keep the gravy at a gentle simmer rather than a hard boil.

Heavy cream is relatively stable, but prolonged aggressive boiling can still affect its texture.

Adding the meatballs back at low heat lets them finish cooking without abusing the sauce.

⏰ Can You Make Swedish Meatballs Ahead?

Yes.

You can shape the raw meatballs several hours ahead, cover them, and refrigerate until cooking time.

Alternatively, cook the meatballs completely and refrigerate them separately from the gravy.

Prepare the gravy when you are ready to serve, then warm the meatballs in it.

You can also make the entire dish ahead and gently reheat it, adding a splash of broth if the gravy has thickened.

❄️ How to Store Leftovers

Cool leftovers promptly.

Transfer the meatballs and gravy to shallow airtight containers and refrigerate.

Use cooked leftovers within about 3 to 4 days.

Store mashed potatoes separately if possible.

When reheating, warm the meatballs and gravy gently on the stovetop.

Add a splash of beef broth or cream if the sauce has become too thick.

Reheat leftovers to 165°F.

🧊 Can You Freeze Swedish Meatballs?

Yes.

The meatballs themselves freeze particularly well.

Let cooked meatballs cool completely and freeze them in an airtight container for up to about 3 months for best quality.

The cream gravy can also be frozen, although dairy-based sauces occasionally separate slightly after thawing.

Gently whisking while reheating can usually restore the texture.

Another option is to freeze the meatballs without gravy and make a fresh batch of sauce when serving.

🇸🇪 Did Swedish Meatballs Come from Turkey?

You may have heard the story that King Charles XII brought the idea for Swedish meatballs home after spending several years in the Ottoman Empire in the early 18th century.

Visit Sweden still recounts that story as part of the dish’s history.

However, the claim is not universally accepted by food historians.

When the Swedish Institute publicized the story widely in 2018, Swedish food historian Richard Tellström argued that there was no documentary evidence showing Charles XII introduced meatballs to Sweden.

Meatball-like dishes existed throughout Europe and elsewhere long before modern national versions developed.

The safest conclusion is that Swedish köttbullar emerged from a much broader tradition of minced-meat dishes, while Ottoman culinary influence may have contributed to Swedish cooking during this period.

Whatever their earliest ancestry, the modern combination of small meatballs, potatoes, gravy, lingonberries, and pickled cucumber is firmly established in Swedish food culture.

🍽️ A Swedish Comfort-Food Favorite

Swedish meatballs are a good example of how a relatively simple recipe can become something memorable through balance.

The meatballs are savory and gently spiced. The cream gravy is rich. Mashed potatoes are mild and buttery. Lingonberry preserves add sweetness and tartness, while cucumber brings freshness and acidity.

None of those elements needs to overpower the others.

Soak the breadcrumbs, soften the onion, handle the meat gently, brown the meatballs well, and use those pan drippings to build the gravy.

Serve everything together, with plenty of sauce and a spoonful of lingonberries on the side.

It is comforting, practical, and exactly the sort of dinner worth making again when the weather turns cold.

🔗 Related Articles

📚 Sources & Further Reading

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.