This post may contain affiliate links. Please read our disclosure policy.

These Skillet Swedish Meatballs are sure to become part of your weekly menu. They are warm, cozy, and the perfect family dinner for any night of the week. 

Easy Skillet Swedish Meatballs

I know Swedish Meatballs are everyone’s favorite IKEA menu item, but you can also make them at home for the perfect savory and comforting weeknight dinner. The true secret is in the sauce: an outstanding creamy, rich gravy with a unique combination of allspice and nutmeg that really sets these apart. My entire family adores meatballs, and since these keep well in the fridge, they’re the perfect meal prep for the week ahead. 

Easy Skillet Swedish Meatballs

And with a quick sub to ghee instead of butter, these Easy Skillet Swedish Meatballs become a Whole30 meal! Making it the perfect meal to have prepped for your January Whole30 and one that anyone else in your household will enjoy even if they aren’t doing a Whole30 — a double win!

If you are wondering how to serve these meatballs are easiest over some store-bought egg noodles. For a great Whole30 option, you could serve them over Whole30 Mashed Potatoes. I love them paired with some roasted veggies or a big side salad for some greens alongside this dish. 

Regardless, these are going to quickly become a go-to. If you love these meatballs, try some of my other favorite meatballs:

Gluten-Free Chicken Piccata Meatballs 

Epic Whole30 Baked Meatballs 

Whole30 Chicken Enchilada Meatballs 

Easy Skillet Swedish Meatballs
4.68 from 25 votes

Easy Skillet Swedish Meatballs

Gluten-Free, Dairy-Free (if modified), Paleo (if modified), Whole30 (if modified), Grain-Free
Total: 45 minutes
Servings: 4


For the Meatballs:

  • 1 pound ground beef 90/10
  • ½ pound ground pork
  • 2 teaspoons Dijon mustard
  • 2 tablespoons finely chopped parsley leaves plus more for garnish
  • ¼ cup minced yellow onion
  • 1 teaspoon garlic powder
  • 1 teaspoon allspice
  • ¼ teaspoon nutmeg
  • ¼ teaspoon cayenne
  • 1 teaspoon kosher salt
  • ½ teaspoon freshly ground black pepper
  • 2 tablespoons cassava flour
  • 1 large egg beaten
  • 2 tablespoons extra virgin olive oil plus more as needed

For the Gravy:

  • 4 tablespoons salted butter sub ghee for paleo, Whole30 or vegan butter for dairy-free
  • ¼ cup halved and thinly sliced shallot about 1 medium shallot
  • 2 cloves garlic minced
  • 2 tablespoons cassava flour
  • 1 ½ cup low-sodium beef broth
  • ½ cup full fat unsweetened coconut milk
  • 2 teaspoons Dijon
  • 1 tablespoon coconut aminos
  • ½ teaspoon kosher salt more to taste
  • ¼ freshly ground black pepper
  • ¼ teaspoon allspice
  • 1 tablespoon apple cider vinegar


Prepare the Meatballs:

  • In a large bowl, combine the beef, pork, Dijon, parsley, onion, garlic powder, allspice, nutmeg, cayenne, salt, pepper, cassava flour, and egg. Mix until just combined, without over mixing the meat.
  • Using a tablespoon or cookie scoop, measure out the meat mixture and roll into 1-inch balls.
  • In a large, deep non-stick skillet, heat the oil over medium heat. Working in batches to keep from crowding the skillet, sear the meatballs in a single layer and cook until browned on all sides, about 2 minutes per side, or about 6 minutes per batch. Transfer the cooked meatballs to a paper towel-lined plate, and continue cooking the rest of the meatball, adding more oil to the pan if it becomes dry. Set aside.
  • Discard the excess fat, reserving 2 tablespoons. Then wipe the skillet with a paper towel to remove excess fat and overly browned bits.

Make the Gravy and Finish the Meatballs:

  • In the same skillet, add the butter and the reserved fat. Once the butter is melted, add the shallot and garlic. Sauté until tender, about 2 minutes.
  • Next, sprinkle the cassava over the shallot mixture and cook, stirring, to toast the flour, about 1 minute.
  • While whisking, slowly pour in the beef broth until well incorporated and smooth. Add the coconut milk and continue to whisk until well incorporated. Bring the gravy to a simmer then reduce to a light simmer, about medium-low heat, until you see the sauce start to thicken, about 2 minutes.
  • Add the Dijon, coconut aminos, salt, pepper, allspice, apple cider vinegar and stir to combine. Nestle the meatballs back into the skillet. Continue to cook, uncovered and simmering, until meatballs are cooked through, 6 to 7 minutes.
  • Taste a meatball with the sauce and add more salt, if desired. Serve as desired and top with additional parsley.


Serving Notes: When I have the time, I love serving these over mashed potatoes, however, they are also great over wide egg noodles.

Nutrition information is automatically calculated, so should only be used as an approximation.

Additional Info

Servings: 4

Photography and styling by Eat Love Eats.

Welcome! I’m Alex.

I’m a food lover sharing healthy, simple, delicious, recipes from my kitchen to yours. Here you’ll find lots of Whole30, lots of healthy, and a little indulgence here and there because…it’s all about balance y’all!

Similar recipes

Leave a comment

Your email address will not be published. Required fields are marked *

Recipe Rating


  1. 5 stars
    I have made many of the Swedish meatball recipes out there by other whole30 recipe creators but this one is the BEST. We serve with mashed potatoes and extra fresh cracked pepper on top. One of my favorite recipes from Alex.

  2. 5 stars
    So So yummy! I have made several times and my whole fam absolutely loves them! Any tips on making this in the slowcooker?

    1. So glad you love this one-
      For the slow cooker- you’d stil have to brown the meatballs, set them in the slow cooker, then make the gravy, set it in the slow cooker and just keep on really low to finish cooking through or just to keep warm.
      I worry that the gravy could separate if cooked too long in the slow cooker… so just be cognizant that it doesn’t get too hot.