This post may contain affiliate links. Please read our disclosure policy.
These Easy 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.

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, or even as an appetizer for hosting. The magic is in the sauce: an outstanding creamy, rich gravy with a unique combination of allspice and nutmeg that really sets these apart from other types of meatballs. And with a quick sub to ghee instead of butter, these Easy Skillet Swedish Meatballs become a Whole30 meal!
Swedish meatballs are traditionally served with store-bought egg noodles, but they’re also great served over my Whole30 Mashed Potatoes or alongside some roasted veggies or a big side salad.
ingredients:
- Ground Beef
- Ground Pork
- Dijon Mustard
- Fresh Parsley
- Yellow Onion
- Garlic Powder
- Ground Allspice
- Freshly Grated nutmeg
- Cayenne Pepper
- Kosher Salt
- Freshly Ground Black Pepper
- Cassava Flour
- Egg
- Extra Virgin Olive Oil
- Salted Butter
- Shallot
- Low-Sodium Beef Broth
- Full-Fat Unsweetened Coconut Milk
- Coconut Aminos
- Apple Cider Vinegar
step-by-step:
step one: make the meatball mixture
In a large bowl, combine the beef, pork, Dijon mustard, parsley, onion, garlic powder, allspice, nutmeg, cayenne pepper, salt, pepper, cassava flour, and egg. Mix until just combined.
step two: shape the meatballs
Use a tablespoon or small cookie scoop to form and shape 1-inch balls.
step three: cook the meatballs
Heat the oil in a large, deep non-stick skillet set over medium heat. Working in batches to avoid overcrowding, sear the meatballs in a single layer and cook until browned on all sides, about 2 minutes per side. 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.
step four: saute the shallot and garlic
Discard all but 2 tablespoons of excess fat. Melt the butter in the same skillet. Add the shallot and garlic and sauté until tender, about 2 minutes.
step five: add the flour
Add the cassava flour and cook, stirring, to toast the flour, about 1 minute.
step six: make the gravy
Slowly pour in the beef broth, whisking constantly, 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.
step seven: add the seasonings
Add the Dijon mustard, coconut aminos, salt, pepper, allspice, and 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.
step eight: garnish and serve
Taste and season with more salt, if needed. Garnish with additional parsley and serve.

Whether you’re hosting a game day watch party or entertaining during the holidays, my Easy Skillet Swedish Meatballs need to be on your menu. Leave a comment and let me know what you think of this recipe!
looking for more delicious meatball recipes? try these!
Meatballs with Basil and Burst Tomatoes
Gluten-Free Chicken Piccata Meatballs
Whole30 Chicken Enchilada Meatballs

Easy Skillet Swedish Meatballs
Ingredients
For the Meatballs:
- 1 pound (90/10) ground beef
- 1/2 pound ground pork
- 2 teaspoons Dijon mustard
- 2 tablespoons finely chopped parsley leaves, plus more for garnish
- 1/4 cup finely diced yellow onion
- 1 teaspoon garlic powder
- 1 teaspoon ground allspice
- 1/4 teaspoon freshly grated nutmeg
- 1/4 teaspoon cayenne pepper
- 1 teaspoon kosher salt
- 1/2 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
- 1/4 cup halved and thinly sliced shallot (from about 1 medium shallot)
- 2 garlic cloves, minced
- 2 tablespoons cassava flour
- 1½ cups low-sodium beef broth
- 1/2 cup full fat unsweetened coconut milk
- 2 teaspoons Dijon mustard
- 1 tablespoon coconut aminos
- 1/2 teaspoon kosher salt, plus more to taste
- 1/4 freshly ground black pepper
- 1/4 teaspoon ground allspice
- 1 tablespoon apple cider vinegar
Instructions
- In a large bowl, combine the beef, pork, Dijon mustard, parsley, onion, garlic powder, allspice, nutmeg, cayenne pepper, salt, pepper, cassava flour, and egg. Mix until just combined.
- Use a tablespoon or small cookie scoop to form and shape 1-inch balls.
- Heat the oil in a large, deep non-stick skillet set over medium heat. Working in batches to avoid overcrowding, sear the meatballs in a single layer and cook until browned on all sides, about 2 minutes per side. 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 all but 2 tablespoons of excess fat. Melt the butter in the same skillet. Add the shallot and garlic and sauté until tender, about 2 minutes.
- Add the cassava flour and cook, stirring, to toast the flour, about 1 minute.
- Slowly pour in the beef broth, whisking constantly, 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 mustard, coconut aminos, salt, pepper, allspice, and 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 and season with more salt, if needed. Garnish with additional parsley and serve.
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.
Photography and styling by Eat Love Eats.




This was delicious! I doubled the recipe and everyone loved it! Thank you as always for the amazing recipes ♥️
Glad you loved it!! Thank you, Julie!
So delicious! Made it for dinner this evening and was a hit with my hubs and kiddos. Used only a teaspoon of ACV instead of a tablespoon after reading the comments.
Thinking about making into a meatloaf next time and use the gravy to bast and serve over mashed potatoes.
Glad you enjoyed it!!!
Made this recipe tonight and it was so flavorful! Already had ground beef on hand so didn’t use pork. Served over pasta. Will definitely make again!
Delicious! Perfect over egg noodles.
A classic combo!
These were very good! I served them over your whole 30 mashed potatoes. Delish!
These are amazing! The gravy is SO good. love this flavor profile! Served over mashed cauliflower. YUM.
Alex does it again!
Yay! Thank you!
Can you tell us approximately how many meatballs this recipe makes? We’re trying to multiply for a party. Thanks!
I’d say about 18-20!
I was so excited to make this tonight, my husband even requested I make a double batch. The meatballs were good. I ate a couple while waiting on the last batches to cook. The gravy, however, was so acidic. I don’t know if it was from the apple cider vinegar and other ingredients put in at the end, but the taste was nothing like the gravy from IKEA. I followed the recipe exactly how it was written. Honestly, everything smelled and looked good up until I added the final ingredients (besides meatballs). I really wish I had tried the gravy before putting those final things in. Maybe it would be okay if I omit the apple cider vinegar… might try again.
So sorry you didn’t enjoy them! I haven’t tried doubling the recipe– so I am not sure if that makes it too acidic, but I can’t image doubling it would do that.
The gravy was my family’s favorite part! I was literally licking it off of my plate at the end!! Haha. Not sure why the gravy didn’tturn out for these people.
My gravy also came out sour. I had followed the recipe exactly. 1 tbsp of vinegar Is a lot for this quantity of gravy..
Delicious! Before the gravy was done, I had to stop my sons and husband from eating all the meatballs. I doubled the recipe but one change was that I baked most of the meatballs at 400 for 15min. I only browned a few raw meatballs to get some of the flavor in the gravy. Just needed to complete one step in the morning instead of at dinner time to avoid hangry toddlers.
Made with regular flour and heavy cream and they were DELICIOUS. Best thing I’ve made in a long time!! The first recipe I cooked in our new house and will always have a great memory from this recipe!!!
So glad this was a hit for your first dinner in your new home!