
Swedish Meatballs Party Appetizer with Creamy Gravy
Tender beef-and-pork meatballs, gently spiced with allspice and nutmeg, are browned in a skillet and simmered in a silky cream gravy. Bite-sized, make-ahead friendly and perfect with toothpicks and a spoonful of lingonberry jam.
- Prep
- 23 min
- Cook
- 43 min
- Wait
- 30 min
- Total
- 1 hr 36 min
- Makes
- About 48 one-inch meatballs with gravy (12 appetizer servings of 4 meatballs)
Steps
Before you start
- Take the beef, pork and egg out of the fridge 15 minutes before mixing so they mix easily, but keep the meat cold to the touch.
- Line a large rimmed baking sheet with parchment paper for the shaped meatballs, and have a large plate ready for the browned ones.
- Use ground beef and pork that are not extra-lean (about 80% lean). Leaner meat makes dry, tough meatballs.
- You will brown the meatballs in 3 batches, so read through the method once before starting.
Soak the breadcrumbs
- In a large mixing bowl, stir together the breadcrumbs and milk.
- Let the mixture stand for 5 minutes so the crumbs absorb the milk and form a thick, wet paste (a panade).
- This keeps the meatballs tender and moist.
+ Show details− Hide details
Ready when: Crumbs look like a thick, evenly moist paste with no dry pockets
Mix the meatball base
- Grate the onion on the small holes of a box grater straight into the bowl with the panade, including its juices.
- Add the egg, salt, allspice, nutmeg and pepper and stir to combine.
- Add the beef and pork.
- With clean, lightly wet hands, mix for about 1 minute, just until the meat and seasonings are evenly combined and the mixture looks slightly sticky.
+ Show details− Hide details
Ready when: No streaks of unmixed panade or egg remain
Tip: Do not overmix. Working the meat too long makes the meatballs dense and rubbery.
Shape the meatballs
- Line a rimmed baking sheet with parchment.
- Use a 1-tablespoon cookie scoop or heaping tablespoon to portion the mixture (about 25 g / 1 oz each), then roll between damp palms into smooth 1-inch (2.5 cm) balls.
- Arrange them on the sheet in rows without touching.
- You should have about 48.
+ Show details− Hide details
Ready when: Balls are smooth, uniform in size and hold their shape
Tip: Rinse your hands under cold water every few minutes so the mixture doesn't stick to them.
Chill the meatballs
- Refrigerate the tray of meatballs, uncovered, for 20 minutes.
- Chilling firms up the fat so the meatballs hold their round shape and brown cleanly instead of flattening in the pan.
+ Show details− Hide details
Ready when: Meatballs feel firm and cold to the touch
Brown in batches
- Heat a 12-inch (30 cm) deep skillet over medium-high heat for 2 minutes.
- Add 1 tablespoon of the oil and 1 tablespoon of the frying butter and swirl until the butter foams.
- Add about 16 meatballs, leaving space between them.
- Cook for 6 to 7 minutes, turning every 1½ minutes with tongs or a spoon, until browned on all sides.
- Move to a large plate.
- Repeat with the remaining oil, butter and meatballs for 3 batches total.
- They will not be cooked through yet.
+ Show details− Hide details
Ready when: Deep golden-brown crust on all sides
Tip: If the pan smokes or the browned bits turn black, lower the heat to medium. Burnt bits will make the gravy bitter.
Start the roux
- Carefully pour off all but about 2 tablespoons of fat from the skillet, leaving the browned bits.
- Reduce the heat to medium.
- Add the gravy butter and let it melt.
- Sprinkle in the flour and whisk constantly for 1½ minutes, until it forms a smooth paste that smells lightly nutty and is pale golden.
+ Show details− Hide details
Ready when: Smooth paste, pale golden, with a toasty smell and no raw flour odor
Tip: If the pan is too dry for the roux to come together, add 1 teaspoon more butter.
Build the gravy
- Slowly pour in the beef broth while whisking, scraping up the browned bits from the bottom of the pan.
- Whisk in the cream, Dijon and soy sauce.
- Bring to a gentle simmer over medium heat and cook, whisking often, for 3 to 4 minutes until the gravy is lightly thickened.
+ Show details− Hide details
Ready when: Gravy is smooth and coats the back of a spoon, leaving a clear line when you run a finger through it
Tip: Add the broth slowly at first. Pouring it all in at once can make the roux lumpy.
Simmer meatballs in gravy
- Return the meatballs and any juices on the plate to the skillet and spoon the gravy over them.
- Reduce the heat to low, partially cover, and simmer gently for 12 minutes, turning the meatballs once halfway through.
- The gravy should barely bubble.
+ Show details− Hide details
Ready when: The center of a meatball reads 160°F (71°C) on an instant-read thermometer and no pink remains
Tip: Boiling the cream gravy can make it split. Keep it at a bare simmer.
Rest and season
- Turn off the heat and let the meatballs rest in the gravy for 5 minutes, which lets the gravy thicken to a coating consistency.
- Taste the gravy and add a pinch of salt or pepper if needed.
- If it is too thick, stir in 1 to 2 tablespoons of warm water or broth.
+ Show details− Hide details
Ready when: Gravy lightly coats the meatballs and pools only a little in the pan
Garnish and serve
- Transfer the meatballs and gravy to a warm serving dish or small slow cooker set to warm.
- Sprinkle with the parsley, if using, and stick a toothpick into each meatball.
- Serve with the lingonberry jam on the side for dipping or spooning on top.
+ Show details− Hide details
Ready when: Meatballs are steaming hot and glossy with gravy
Tip: Keep on the warm setting and stir gently every 30 minutes; add a splash of broth if the gravy tightens.
Good to know
Tips
- Grating the onion rather than chopping it adds moisture and flavor without leaving crunchy bits in small meatballs.
- Keep the meatballs a uniform 1-inch size so they brown and cook through at the same rate.
- To test the seasoning before shaping, fry a teaspoon of the mixture in a small pan, taste, and adjust the salt and spices.
- For easy serving at a party, hold the meatballs in a small slow cooker on the warm setting for up to 2 hours.
Make ahead
"Shape the meatballs up to 1 day ahead, cover the tray tightly and refrigerate. Or fully cook the meatballs and gravy up to 2 days ahead, cool, and refrigerate in an airtight container. Reheat gently on the stovetop over low heat with a splash of broth or milk, stirring occasionally, until steaming hot (165°F / 74°C)."
Storage & reheating
"Room temperature: no more than 2 hours (including time on the party table). Fridge: up to 3 days in an airtight container. Freezer: up to 3 months in a freezer-safe container, with the gravy; thaw overnight in the fridge. Reheat gently in a saucepan over low heat, adding a splash of broth or milk if the gravy has thickened, until steaming hot (165°F / 74°C), or microwave in short bursts, stirring between."
Substitutions
- plain dried breadcrumbs → Panko breadcrumbs (1 cup / 60 g). Panko is lighter and absorbs less milk, so the meatballs are slightly softer. Gluten-free crumbs work too.
- heavy cream → Half-and-half (1 cup / 240 ml). The gravy will be a little thinner and less rich; simmer 2 minutes longer and don't let it boil hard.
- ground pork → Ground veal or additional ground beef. All beef gives a firmer, beefier meatball; veal makes them more tender. Keep the total at 2 lb (908 g).
- lingonberry jam → Cranberry sauce or red currant jelly. Gives the same sweet-tart contrast to the rich gravy.
More meatballs
See all →Find more like this
- Meal
- Snack
- Main ingredient
- Ground BeefGround Pork
- Method
- Stovetop
- Quick & Easy
- Make Ahead
- Occasion
- Parties



