
Japanese Hamburg Steak Meatballs with Demi-Glace
Juicy, tender wafu-style meatballs made the hamburg-steak way, with sweet sautéed onion and panko soaked in milk. They're pan-browned, then finished in a glossy ketchup-Worcestershire demi-glace with mushrooms. Serve over steamed rice.
- Prep
- 20 min
- Cook
- 31 min
- Wait
- 25 min
- Total
- 1 hr 16 min
- Makes
- 16 meatballs (4 servings of 4 meatballs) with about 1½ cups sauce
Steps
Before you start
- No oven is needed; everything is cooked on the stovetop in one skillet.
- Keep the beef in the fridge until you mix; cold meat shapes cleanly and stays juicy.
- Finely chop the onion (about ¼-inch pieces) and slice the mushrooms before you start cooking.
- Plan on 25 minutes of passive time: 10 minutes for the onion to cool and 15 minutes for the meatballs to chill.
- Start steamed rice about 30 minutes before you want to eat, if serving with it.
Cook the onion
- Melt 1 tbsp butter in the 12-inch skillet over medium heat.
- Add the chopped onion and a pinch of the salt from the meatball measure.
- Cook, stirring often, for 6 minutes until soft, translucent and just starting to turn pale gold.
- Scrape onto a plate, spread out, and let cool for 10 minutes.
- Wipe out the skillet.
+ Show details− Hide details
Ready when: Onion is soft and translucent with only a hint of color
Tip: Don't brown the onion deeply; the meatballs should taste sweet, not roasted.
Soak the panko
- While the onion cools, stir the panko and milk together in a small bowl.
- Let sit for 5 minutes, until the crumbs have absorbed the milk and look like a thick, damp paste.
+ Show details− Hide details
Ready when: No liquid pooling in the bowl; crumbs are soft and pasty
Mix the meat
- In a large bowl combine the cold ground beef, cooled onion, soaked panko and milk, beaten egg, remaining salt (about ¾ tsp total), pepper and nutmeg, if using.
- Mix with your hand in one direction for about 1 minute until the mixture is uniform, sticky and holds together when squeezed.
+ Show details− Hide details
Ready when: Mixture looks tacky and no streaks of plain beef remain
Tip: Stop as soon as it comes together; overmixing makes the meatballs dense.
Shape the meatballs
- Wet your hands lightly with water.
- Portion the mixture into 16 equal balls, about 45 g (2 heaped tablespoons) each.
- Toss each ball gently between your palms 4 or 5 times to push out air pockets, then roll smooth.
- Set on a rimmed plate or tray.
+ Show details− Hide details
Ready when: Balls are smooth with no cracks
Tip: Tossing between palms is the traditional hamburg-steak trick that keeps them from cracking while they cook.
Chill the meatballs
- Refrigerate the shaped meatballs, uncovered, for 15 minutes so they firm up.
- Meanwhile slice the mushrooms if you haven't already and stir the cornstarch and cold water together in a small bowl.
+ Show details− Hide details
Ready when: Meatballs feel firm to the touch
Brown the meatballs
- Heat 1 tbsp oil in the 12-inch skillet over medium-high heat until it shimmers.
- Add the meatballs in a single layer with space between them.
- Brown for about 6 to 7 minutes total, turning every 1½ minutes, until all sides are deep golden brown.
- They will not be cooked through.
- Transfer to a clean plate.
+ Show details− Hide details
Ready when: Deep golden-brown crust on all sides; browned bits stuck to the pan
Tip: Let each side release from the pan on its own before turning; if it sticks, give it another 30 seconds.
Sauté the mushrooms
- Pour off all but about 1 tablespoon of the fat, leaving the browned bits.
- Keep the heat at medium-high, add the sliced mushrooms, and cook, stirring occasionally, for 4 minutes until they release their liquid and brown at the edges.
+ Show details− Hide details
Ready when: Mushrooms are golden at the edges and the pan looks mostly dry
Build the sauce
- Pour in the red wine and scrape up the browned bits with a wooden spoon.
- Simmer for 1 minute until reduced by half.
- Stir in the ketchup, Worcestershire, beef broth, soy sauce and sugar.
- Bring to a simmer and cook for 3 minutes, stirring, until slightly reduced and deep brown.
+ Show details− Hide details
Ready when: Sauce is glossy, deep brown and smells savory-sweet, not sharp of alcohol
Simmer the meatballs
- Nestle the meatballs and any juices from the plate into the sauce.
- Cover and cook over medium-low heat for 8 minutes, turning the meatballs once halfway, until cooked through.
- Check one in the center with a thermometer.
+ Show details− Hide details
Ready when: Internal temperature reaches 160°F (71°C) and juices run clear
Tip: Keep the sauce at a gentle simmer; a hard boil toughens the meat.
Thicken and serve
- Re-stir the cornstarch slurry and pour it into the skillet.
- Simmer, stirring gently, for 1 minute until the sauce coats the back of a spoon.
- Remove from the heat and swirl in the cold butter pieces until melted.
- Taste and add a pinch of salt if needed.
- Serve 4 meatballs per person with plenty of sauce, over steamed rice.
+ Show details− Hide details
Ready when: Sauce is glossy and leaves a clear trail when you drag a spoon through it
Tip: Add the butter off the heat so the sauce turns glossy rather than greasy.
Good to know
Tips
- Use 80/20 beef; leaner beef makes drier meatballs.
- Cooling the onion before mixing keeps the fat in the beef from melting and keeps the texture tender.
- Cook one small test patty if you want to check seasoning before you cook the full batch.
- Serve with steamed rice and blanched broccoli or a shredded cabbage salad to balance the rich sauce.
Make ahead
Shape the meatballs up to 8 hours ahead, cover, and refrigerate. The onion can be cooked and chilled a day ahead. The whole dish can be cooked 2 days ahead and reheated.
Storage & reheating
Room temperature: no more than 2 hours. Fridge: up to 4 days in an airtight container with the sauce. Freezer: up to 3 months; thaw overnight in the fridge. Reheat gently in a covered skillet over medium-low heat with a splash of water or broth for 8 to 10 minutes until the center reaches 165°F (74°C).
Substitutions
- dry red wine → Sake or extra beef broth. Sake adds a softer sweetness; broth makes it slightly less rich.
- ground beef, 80/20 → Half ground beef and half ground pork. Pork gives a softer, more tender texture, as in many Japanese hamburg steaks.
- panko breadcrumbs → Fresh breadcrumbs from white sandwich bread. Use the same weight; the texture will be slightly softer.
- cornstarch → Potato starch (katakuriko). Use the same amount; the sauce will be a bit glossier.