These juicy and flavorful Swedish meatballs are just like the IKEA classic, but better. This recipe is super easy to make from scratch and uses pantry staples that you’ll likely already have. Flavored with allspice and nutmeg, these meatballs use a mixture of ground pork and beef, leading to delightfully moist and tender meatballs that will melt in your mouth.
I love how cozy this recipe is, thanks to the velvety and creamy gravy. This recipe is perfect for serving with pasta, egg noodles, or mashed potatoes to soak up all of that delightful sauce. After your first bite, you’ll see why this is the best Swedish meatball recipe ever. If you’re in the mood for more meatball recipes, then try my turkey meatball recipe, Instant Pot spaghetti and meatballs recipe, or my Italian wedding soup recipe.
What You Need to Make This Recipe
Ground meat — use a mixture of ground pork and ground beef for the best flavor. The fat from the ground pork will add a ton of moisture to the meatballs and ensure they stay tender.
Spices — you need to use a combination of allspice and nutmeg to create the distinct and authentic flavor of traditional Swedish meatballs.
Egg — you’ll need one egg to help bind the meatball mixture together.
Breadcrumbs — I’m using panko breadcrumbs for these meatballs, but you can use regular meatballs if that’s all you have on hand.
Butter — I suggest using unsalted butter for the base of the gravy to prevent the gravy from tasting too salty.
Flour — you can use any type of flour to make the roux for the gravy.
Broth — using beef broth creates a more flavorful base for the gravy.
Cream — heavy cream is key to creating a rich, luscious gravy.
How to Make Swedish Meatballs
1. Add the ground meat, onion, garlic, egg, and breadcrumbs to a large mixing bowl.
2. Add the parsley, salt, allspice, pepper, and nutmeg to the mixing bowl. Stir together until well combined.
3. Shape the meat mixture into 36 tablespoon-sized balls.
4. Heat oil over medium-high heat in a large skillet. Add half of the meatballs and cook until browned on all sides. Remove the meatballs and set aside. Repeat with remaining meatballs. Pour off any grease from the skillet and wipe clean.
5. Melt the butter in the same skillet over medium heat. Whisk the flour into the melted butter and cook for 1 minute, stirring constantly.
6. Gradually whisk in the broth until the mixture is smooth and starts to bubble and thicken.
7. Stir in the cream, salt, and pepper and bring to a low simmer, reducing the heat if necessary.
8. Add meatballs back to skillet and simmer until gravy thickens and meatballs are cooked through. Serve over hot egg noodles or mashed potatoes and garnish with more chopped parsley, if desired.
Pro Tips for Making This Recipe
- When combining the meatball mixture, be careful not to overmix. I like to use my hands, so I get a good feel of when the mixture is just combined. If you overmix, you end up with dense and heavy meatballs.
- To keep the meatballs uniform in size, use a cookie scoop. Having uniformed meatballs will help them cook evenly.
- If the meatballs stick to your hands, moisten your hands with some water to make it easier to shape the meatballs. Wetting your hands creates a barrier on your skin, preventing the meat from sticking and allowing you to roll it into a ball without making a mess.
- Use a large skillet and don’t try to brown all the meatballs in one go in the skillet. You need to make sure the meatballs are not touching while they brown, as this will ensure the meatballs get crispy instead of steaming.
- After adding the heavy cream to the skillet, be mindful not to boil the cream, as it might separate if you do. Keep the heat on the lower side so it simmers gently instead.
Frequently Asked Questions
You sure can! Place the meatballs on a lined sheet pan, then bake at 400°F for 12 to 15 minutes or until fully cooked. You can use an instant-read thermometer to ensure the meatballs’ internal temperature is 165°F.
If you prefer to use all ground pork or all ground beef to make the meatballs, you are more than welcome to!
Yes, the best way to prep this recipe ahead of time is to make the meatballs and cook them all the way through. When ready to serve, you can make the gravy and add the meatballs to it. Alternatively, you can make both the meatballs and gravy and store them separately. Everything will keep well in the fridge for up to 4 days in an airtight container. Just make sure everything is at room temperature before storing.
You can freeze the meatballs but not the gravy. You can either flash freeze the meatballs on a lined sheet pan after they’ve shaped them or after you’ve cooked them. Once frozen, transfer the meatballs to a freezer-safe, ziptop bag for up to two months. Thaw before you cook them as directed.
If you’ve tried this Swedish Meatballs recipe, then don’t forget to rate the recipe and let me know how you got on in the comments below, I love hearing from you!
Swedish Meatballs
Equipment
- Large skillet
- Large mixing bowl
Ingredients
For the Meatballs:
- 12 ounces ground beef (340g)
- 12 ounces ground pork (340g)
- 1 small yellow onion grated (121g)
- 3 garlic cloves minced
- ½ cup panko breadcrumbs (30g)
- ¼ cup parsley minced
- 1½ teaspoons salt
- ½ teaspoon ground allspice
- ½ teaspoon ground black pepper
- ¼ teaspoon ground nutmeg
- 1 large egg
- 2 tablespoons olive oil
For the Gravy:
- ¼ cup unsalted butter (57g)
- ¼ cup all-purpose flour (30g)
- 2½ cups beef broth (600mL)
- ½ cup heavy cream (120mL)
- ¼ teaspoon salt
- ¼ teaspoon ground black pepper
Instructions
For the Meatballs:
- In a large mixing bowl, combine all of the ingredients except for the olive oil. Stir together until well combined. (I like to use my hands for this!) Shape the meat mixture into 36 tablespoon-sized balls.
- Heat oil over medium-high heat in a large skillet. Add half of the meatballs and cook until browned on all sides, about 5 minutes. Remove and set aside. Repeat with remaining meatballs.
- Pour off any grease from skillet and wipe clean.
For the Gravy:
- Melt the butter in the same skillet over medium heat. Whisk the flour into butter and cook for 1 minute, stirring constantly. Gradually whisk in the broth until the mixture is smooth and starts to bubble and thicken, 1 to 2 minutes. Stir in the cream, salt, and pepper and bring to a low simmer, reducing the heat if necessary.
- Add meatballs back to skillet and simmer until gravy thickens and meatballs are cooked through, about 10 minutes. Serve over hot egg noodles or mashed potatoes and garnish with more chopped parsley, if desired.
Notes
- When combining the meatball mixture, be careful not to overmix. I like to use my hands, so I get a good feel of when the mixture is just combined. If you overmix, you end up with dense and heavy meatballs.
- To keep the meatballs uniform in size, use a cookie scoop. Having uniformed meatballs will help them cook evenly.
- If the meatballs stick to your hands, moisten your hands with some water to make it easier to shape the meatballs. Wetting your hands creates a barrier on your skin, preventing the meat from sticking and allowing you to roll it into a ball without making a mess.
- Use a large skillet and don’t try to brown all the meatballs in one go in the skillet. You need to make sure the meatballs are not touching while they brown, as this will ensure the meatballs get crispy instead of steaming.
- After adding the heavy cream to the skillet, be mindful not to boil the cream, as it might separate if you do. Keep the heat on the lower side so it simmers gently instead.