These oval-shaped Danish meatballs are the heart of a traditional Danish dinner table, pan-fried until deeply golden and served with brown gravy, boiled potatoes, and pickled beets. The panade of milk-soaked bread and grated raw onion keeps them incredibly tender and juicy inside their crisp crust.
Prep Time25 mins
Cook Time20 mins
Total Time45 mins
Servings4
Yield12 meatballs (4 servings)
Nutrition Facts
Per serving (estimated)
- 485 kcalCalories
- 32 gFat
- 12 gSaturated Fat
- 16 gCarbs
- 1 gFiber
- 4 gSugar
- 28 gProtein
- 780 mgSodium
- 520 mgPotassium
- 120 mgCalcium
- 3 mgIron
- 4 mgVitamin C
- 180 mcgVitamin A
Ingredients
For the meatballs
- 2 cups cubed stale white bread, crusts removed (about 2 thick slices)
- 1/2 cup whole milk
- 8 oz ground pork
- 8 oz ground beef (85/15)
- 1 medium yellow onion, finely grated on a box grater (about 1/2 cup)
- 2 large eggs, lightly beaten
- 1 1/2 tsp kosher salt, 1/2 tsp ground white pepper, and 1/4 tsp ground nutmeg
- 2 tbsp chopped fresh parsley
For pan-frying and gravy
- 3 tbsp unsalted butter
- 2 tbsp neutral oil (canola or sunflower)
- 1 1/2 cups beef stock
- 1 1/2 tbsp all-purpose flour
- Salt and freshly ground black pepper, to taste
Directions
- Place the cubed bread in a large bowl and pour the milk over it. Press down and let soak for 10 minutes until very soft, then mash into a rough paste with a fork.
- Add the ground pork, ground beef, grated onion, eggs, salt, white pepper, nutmeg, and parsley to the soaked bread. Mix gently with your hands just until evenly combined – do not overwork the mixture or the meatballs will turn tough.
- Cover the bowl and chill the mixture for 20 minutes to firm up, which makes shaping easier and lets the breadcrumbs fully hydrate.
- With wet hands, shape the mixture into 12 oval patties about 3 inches long and 1 inch thick, the traditional Danish rugby-ball shape. Smooth the edges with damp fingers.
- Heat the butter and oil in a large heavy skillet (preferably cast iron) over medium heat until the butter foams but has not browned. Fry the meatballs in two batches, without crowding the pan, for 4-5 minutes per side until deeply golden and cooked through to an internal temperature of 160°F/71°C.
- Transfer cooked meatballs to a warm plate and tent with foil. Pour off all but 2 tablespoons of fat from the skillet.
- To make the brown gravy, sprinkle the flour into the drippings and stir with a wooden spoon over medium heat for 1 minute until lightly toasted. Slowly pour in the beef stock while whisking constantly to prevent lumps.
- Bring the gravy to a gentle simmer and cook for 3-4 minutes until thickened and glossy. Season with salt and pepper to taste.
- Return the meatballs to the skillet and spoon the gravy over them for 1-2 minutes to warm through, or serve the gravy alongside in a small jug.
- Serve hot with boiled new potatoes, pickled beets, and a cucumber salad, with extra brown gravy spooned generously over the top.
Cook’s Notes
- Always shape Danish meatballs into ovals rather than rounds – the traditional rugby-ball shape gives them more browned surface per piece and is the visual hallmark of the dish.
- Grate the onion on the finest holes of a box grater; this releases its juices directly into the mix and adds moisture without any harsh raw bite.
- Chilling the mixture for 20 minutes is essential – it lets the breadcrumbs fully hydrate and firms the fat so the meatballs hold their shape during frying.
- Test-fry a tiny patty before cooking the whole batch to check seasoning; raw ground meat can taste under-seasoned even when perfectly salted once cooked.
- For an even more traditional flavor, finish the gravy off the heat with a small pat of cold butter swirled in to give it a silky gloss.
- Unlike Norwegian meatballs, the Danish version is never served in a cream sauce – it pairs with a clear brown gravy made from the pan drippings.










