Swedish Meatballs with Gravy – Classic, Cozy, and Comforting

Swedish meatballs with gravy are one of the most iconic comfort foods to come out of Scandinavian cuisine. Known as “köttbullar” in Sweden, these tender, bite-sized meatballs are gently spiced, browned to golden perfection, and smothered in a rich, creamy gravy. Served traditionally with mashed potatoes or lingonberry jam, Swedish meatballs offer a heartwarming blend of savory and subtly sweet flavors.

While IKEA made them famous worldwide, homemade Swedish meatballs are a different level of satisfying. Their soft, juicy interior contrasts beautifully with the silky gravy, making every bite a comforting escape. This dish is perfect for cozy weeknight dinners, festive gatherings, or meal prep you’ll look forward to.

Ingredients Overview

The magic of Swedish meatballs lies in the perfect balance of meat, spices, and the iconic cream-based gravy. Here’s what makes each component essential:

Ground Meat

Traditionally, a 50/50 blend of ground beef and ground pork is used. The pork adds fat and moisture, while the beef brings depth and structure. You can use all beef, but you may lose some of the characteristic tenderness.

  • Substitution: For a lighter version, use ground turkey and a splash of olive oil to mimic the richness of pork.

Breadcrumbs and Milk

The breadcrumbs soak in milk to form a panade, ensuring the meatballs stay soft and juicy. It’s a key to avoiding dry, dense meatballs.

  • Gluten-free option: Use certified gluten-free breadcrumbs or crushed gluten-free crackers.

Onion and Garlic

Finely minced onion is gently sautéed before mixing into the meat — this prevents harsh, raw flavors and gives a mild sweetness. Garlic adds just enough bite without overpowering.

  • Tip: Use a box grater or microplane for onion to keep the texture silky.

Ground Allspice and Nutmeg

These warming spices are subtle but vital to authentic Swedish flavor. Just a pinch of each brings that unmistakable Scandinavian essence.

  • Variation: Add white pepper for a slightly sharper edge.

Egg

Egg acts as a binder, holding everything together without making the mixture tough.

Butter and Flour

Used in the gravy base to create a roux, butter and flour help thicken the sauce and deliver that rich mouthfeel.

Beef Broth and Heavy Cream

These create the gravy’s luxurious texture. The beef broth adds umami while the cream rounds out the flavor with smoothness.

  • Dairy-free alternative: Use full-fat coconut milk or unsweetened almond milk and vegan butter.

Dijon Mustard and Worcestershire Sauce

A spoonful of Dijon adds mild acidity, while Worcestershire deepens the savory notes — think of these as flavor enhancers.

Step-by-Step Instructions

Making Swedish meatballs from scratch is easier than you think — just follow these steps for a comforting, restaurant-worthy result.

1. Soak the Breadcrumbs

In a large bowl, combine the breadcrumbs and milk. Let them sit for about 10 minutes to absorb and soften. This creates a panade that keeps the meatballs tender.

2. Sauté Onion and Garlic

In a skillet, melt a bit of butter and cook the finely chopped onion over medium heat until soft and translucent, about 4–5 minutes. Stir in the garlic and cook for another 30 seconds. Let cool slightly before adding to the meat mixture.

3. Mix the Meatball Mixture

To the bowl with the soaked breadcrumbs, add the sautéed onion and garlic, ground meats, egg, allspice, nutmeg, salt, and pepper. Use your hands to gently mix until just combined — don’t overwork it or the meatballs may turn tough.

4. Shape the Meatballs

With damp hands or a small scoop, shape the mixture into 1 to 1½-inch balls. You should get about 25–30 meatballs. Place them on a parchment-lined tray.

5. Brown the Meatballs

Heat a skillet over medium heat with a mix of butter and oil. Brown the meatballs in batches, turning to brown all sides. They don’t need to cook through — they’ll finish in the gravy. Transfer browned meatballs to a plate.

6. Make the Gravy

In the same skillet, melt butter and whisk in flour to create a roux. Cook until lightly golden, then slowly pour in beef broth while whisking constantly. Simmer until thickened.

Add heavy cream, Dijon mustard, Worcestershire sauce, salt, and pepper. Let it simmer until creamy and smooth.

7. Finish Cooking

Return the meatballs to the skillet and simmer in the gravy for 10–12 minutes, or until fully cooked and tender. Stir occasionally to keep them evenly coated.

Tips, Variations & Substitutions

Cooking Tips

  • Don’t overcrowd the pan when browning — it helps get that beautiful crust.

  • Use a cookie scoop for uniform meatballs that cook evenly.

  • If the mixture is too sticky, chill it for 15–20 minutes before shaping.

Variations

  • Swedish holiday style: Add a spoonful of lingonberry jam to the gravy for a sweet-savory twist.

  • Rustic version: Use coarsely ground pork for a chunkier texture.

  • Weeknight fast: Bake the meatballs at 400°F for 15 minutes instead of pan-frying.

Substitutions

  • For dairy-free: Use oat milk and plant-based butter.

  • For low-carb: Replace breadcrumbs with crushed pork rinds or almond flour.

  • For vegetarian: Swap meat with a plant-based ground blend and use veggie broth.

Serving Ideas & Occasions

Swedish meatballs are traditionally served with buttery mashed potatoes, lingonberry sauce, and pickled cucumbers. But there are plenty of ways to enjoy them:

  • Over egg noodles for a satisfying pasta dish.

  • With buttered rice or cauliflower mash for a lighter twist.

  • As an appetizer with cocktail picks and a drizzle of gravy.

  • Perfect for holiday buffets, Sunday family dinners, or even cozy winter meal prep.

The creamy, comforting flavor makes them ideal for colder months or any time you crave old-world nostalgia in a bowl.

Nutritional & Health Notes

While Swedish meatballs with gravy are indulgent, you can tweak them for a more balanced meal:

  • Each serving offers a good dose of protein from the beef and pork.

  • Using leaner meats and cutting back on cream can reduce fat content without losing flavor.

  • The richness of the gravy makes portion control easy — you’ll feel full and satisfied with fewer meatballs.

  • Serve with fiber-rich sides like mashed sweet potatoes, steamed green beans, or whole-grain noodles for a better-rounded plate.

For gluten-sensitive diets, use gluten-free breadcrumbs and flour without compromising texture or flavor.

FAQs

Q1: Can I freeze Swedish meatballs?

A1: Yes, Swedish meatballs freeze beautifully. Freeze them after browning (before simmering in gravy), or fully cooked with gravy in airtight containers. Thaw overnight and reheat gently on the stovetop.

Q2: What can I use instead of heavy cream?

A2: Full-fat coconut milk, oat cream, or cashew cream are good dairy-free alternatives. Even whole milk with a tablespoon of butter can work in a pinch.

Q3: Why are my meatballs falling apart?

A3: Meatballs often fall apart due to too little binder (like egg or breadcrumbs) or overmixing. Make sure your panade is fully absorbed, and don’t skip the egg.

Q4: Are Swedish meatballs spicy?

A4: No, they are seasoned warmly but not hot. The allspice and nutmeg provide subtle aromatic notes, not heat. For a bit of spice, a dash of white pepper works well.

Q5: Can I make these ahead of time?

A5: Definitely. You can form and chill the meatballs a day in advance or cook and store them with the gravy for up to 4 days. Reheat on the stovetop with a splash of broth if needed.

Q6: How do Swedish meatballs differ from Italian meatballs?

A6: Swedish meatballs are smaller, softer, and gently spiced. Italian meatballs often contain Parmesan, garlic, and herbs, and are usually served in tomato sauce.

Q7: Can I bake the meatballs instead of frying?

A7: Yes. Bake at 400°F for about 15–18 minutes or until browned and fully cooked. This is a great hands-off method that’s less messy.

Print

Swedish Meatballs with Gravy – Classic, Cozy, and Comforting

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

Tender, spiced Swedish meatballs simmered in a creamy brown gravy — perfect over mashed potatoes or noodles.

  • Author: Maya Lawson
  • Prep Time: 20 minutes
  • Cook Time: 30 minutes
  • Total Time: 50 minutes
  • Yield: 4 servings 1x

Ingredients

Scale
  • 1/2 cup breadcrumbs

  • 1/2 cup whole milk

  • 1 small yellow onion, finely grated

  • 2 garlic cloves, minced

  • 1/2 lb ground beef

  • 1/2 lb ground pork

  • 1 large egg

  • 1/4 tsp ground allspice

  • 1/8 tsp ground nutmeg

  • Salt and pepper, to taste

  • 2 tbsp butter (for frying)

  • 1 tbsp neutral oil

Gravy:

  • 3 tbsp butter

  • 3 tbsp all-purpose flour

  • 2 cups beef broth

  • 1/2 cup heavy cream

  • 1 tsp Dijon mustard

  • 1 tsp Worcestershire sauce

  • Salt and pepper, to taste

Instructions

  • 1/2 cup breadcrumbs

  • 1/2 cup whole milk

  • 1 small yellow onion, finely grated

  • 2 garlic cloves, minced

  • 1/2 lb ground beef

  • 1/2 lb ground pork

  • 1 large egg

  • 1/4 tsp ground allspice

  • 1/8 tsp ground nutmeg

  • Salt and pepper, to taste

  • 2 tbsp butter (for frying)

  • 1 tbsp neutral oil

Notes

  • Add lingonberry jam on the side for a classic touch.

  • Store leftovers in the fridge for up to 4 days.

  • Reheat gently to keep the gravy smooth.

Did you make this recipe?

Share a photo and tag us — we can't wait to see what you've made!

Leave a Comment

Recipe rating 5 Stars 4 Stars 3 Stars 2 Stars 1 Star