These homemade Ikea meatballs blend ground beef and pork with soaked breadcrumbs, finely chopped onion, garlic, warm milk and warming spices like allspice and nutmeg. Shape into walnut-sized balls, brown in butter and oil, then simmer in a velvety sauce made from pan drippings, flour, stock, cream, soy and mustard until thickened. Serve hot with mashed potatoes and lingonberries for a classic finish.
Saturday afternoon and the kitchen smelled like butter and allspice and I almost convinced myself I was somewhere in Stockholm. My partner walked in and said it smelled like an Ikea food court but better, which honestly was the whole point. These meatballs came together because I wanted that exact cozy cafeteria magic without the flat pack furniture detour. Turns out homemade beats the original by a wide margin.
I made these for a small gathering once and someone actually asked if I had ordered them from somewhere. That kind of compliment sticks with you. The allspice and nutmeg do something subtle but unmistakable, a warmth you notice on the second bite. Now I double the batch every single time.
Ingredients
- 250 g ground beef: Go for something with a bit of fat, around 80/20, so the meatballs stay juicy inside.
- 250 g ground pork: This is what gives the meatballs that classic Swedish softness you cannot get with beef alone.
- 1 small onion (finely chopped): Finely chop it so it practically melts into the meat mixture.
- 2 cloves garlic (minced): Mince it small so you get flavor in every bite without harsh chunks.
- 60 ml milk: Combined with breadcrumbs this creates a panade that keeps things impossibly tender.
- 40 g breadcrumbs: Plain breadcrumbs work best here, nothing seasoned or panko style.
- 1 egg: The binder that holds everything together through frying.
- 1/2 tsp salt: Season the meat directly so the flavor is built in from the start.
- 1/2 tsp black pepper: Freshly ground makes a noticeable difference.
- 1/4 tsp ground allspice: The signature Swedish warmth, use a light hand.
- 1/4 tsp ground nutmeg: Just enough to add depth without announcing itself.
- 2 tbsp unsalted butter (for frying): Butter and oil together give you browning and flavor without burning.
- 2 tbsp vegetable oil (for frying): Raises the smoke point so the butter behaves.
- 30 g unsalted butter (for sauce): The base of your roux for that silky cream sauce.
- 2 tbsp all purpose flour: Thickens the sauce without making it gluey if you whisk properly.
- 300 ml beef or vegetable stock: Beef stock gives richer flavor but vegetable works in a pinch.
- 125 ml heavy cream: This is what makes the sauce luxurious and worth every calorie.
- 2 tsp soy sauce: Adds a savory umami depth that rounds out the whole sauce.
- 1 tsp Dijon mustard: A quiet sharpness that lifts everything without tasting mustardy.
- Salt and pepper to taste: Adjust at the very end once the sauce has simmered down.
Instructions
- Soak the breadcrumbs:
- In a large bowl combine breadcrumbs and milk and let them sit for about 5 minutes until the crumbs absorb everything and turn soft.
- Build the meat mixture:
- Add both ground meats, onion, garlic, egg, salt, pepper, allspice, and nutmeg to the bowl. Mix gently with your hands until just combined because overworking makes them tough.
- Shape the meatballs:
- Roll the mixture into walnut sized balls, roughly 3 cm across. Wet your hands slightly so the meat does not stick to your palms.
- Brown them beautifully:
- Heat butter and oil in a large skillet over medium heat and fry the meatballs in batches for about 8 minutes, turning occasionally until golden all over. Set them aside on a plate.
- Start the cream sauce:
- In the same skillet melt 30 g of butter and whisk in the flour, cooking for about 1 minute until it smells nutty. This is your roux and it needs constant attention.
- Build the sauce:
- Gradually pour in the stock while whisking steadily so no lumps form, then stir in the cream, soy sauce, and Dijon mustard. Let it simmer for 5 to 7 minutes until it coats the back of a spoon.
- Bring it all together:
- Return the meatballs to the skillet and coat them in the sauce. Simmer gently for 5 to 10 minutes until heated through.
- Serve and enjoy:
- Plate them over mashed potatoes with a spoonful of lingonberry jam on the side and some steamed vegetables.
The evening I served these with candles lit and a simple Pinot Noir, my friend said it felt like a tiny restaurant had opened in my kitchen. We ate slowly and went back for seconds. That is exactly the kind of meal these meatballs deserve to be part of.
What to Serve Alongside
Mashed potatoes are the classic pairing and honestly the best vehicle for that cream sauce. Lingonberry jam cuts through the richness in a way that cranberry sauce tries but never quite matches. A few steamed green beans or roasted broccoli round things out without stealing the show. Keep it simple so the meatballs stay the star.
Storing and Reheating
These keep in the fridge for up to 3 days in a sealed container with the sauce poured over them. Reheat gently in a covered skillet over low heat, adding a splash of stock if the sauce has thickened too much. You can also freeze the shaped raw meatballs on a baking sheet and transfer to a bag once solid. They go straight from freezer to skillet with just a couple extra minutes of cooking time.
Making Them Your Own
Swap the pork for ground turkey if you want something lighter, though expect a slightly different texture. A pinch of cardamom added to the spice mix nudges these in a more traditional Scandinavian direction. Some nights I skip the stovetop entirely and bake them at 200C for 20 minutes on a lined sheet pan while I make the sauce separately.
- Gluten free breadcrumbs and flour work perfectly here with no change in technique.
- Substitute half the cream with milk for a lighter sauce that still feels indulgent.
- A light lager alongside these is just as good as wine if that suits your mood.
This is one of those recipes that makes your kitchen feel like the best place in the world. Make a big batch and let everyone gather around.
Recipe FAQs
- → What meat ratio makes tender meatballs?
-
A 50/50 mix of ground beef and pork balances flavor and fat for tender, juicy meatballs; pork adds fat and richness while beef provides structure.
- → Why soak breadcrumbs in milk?
-
Soaking breadcrumbs in milk creates a panade that keeps the meat mixture moist and prevents dense, tough meatballs by gently hydrating the proteins.
- → How do I get a good brown crust without overcooking?
-
Use a mix of butter and oil over medium heat, cook in batches without crowding, and turn gently so each side browns evenly before finishing in the sauce.
- → How do I thicken the cream sauce without lumps?
-
Cook the flour briefly in melted butter to form a roux, then whisk in warm stock gradually to dissolve lumps before adding cream, soy and mustard to simmer until glossy and thick.
- → Can these be made ahead or frozen?
-
Yes. Fully cooked and cooled meatballs freeze well on a tray, then transfer to a bag. Reheat gently in sauce to keep them moist, or thaw overnight in the fridge first.
- → What simple swaps work for dietary needs?
-
For gluten-free, use gluten-free breadcrumbs and flour. For a lighter sauce, replace half the cream with milk; adjust seasoning to taste.