Ingredients
Equipment
Method
Make the meatballs
- In a large mixing bowl, mix the ground beef, breadcrumbs, parmesan, egg, minced garlic, onion powder, Worcestershire sauce, salt, and pepper just until combined. Stop as soon as no dry spots remain so the meatballs stay tender.
- Roll the mixture into 1.5-inch balls and place them on a tray or plate as you go. Aim for even size so they cook at the same pace.
- Heat a large skillet over medium-high heat and brown the meatballs, turning as needed, until golden, about 4 to 6 minutes. Remove and set aside once browned.
Make brown onion gravy and finish
- Melt the butter in the same skillet and add the thinly sliced onion, cooking until caramelized, about 10 minutes. Stir occasionally and cook until deep golden and fragrant.
- Whisk in the flour and cook for 1 minute, stirring constantly. This removes the raw flour taste and forms a smooth base.
- Gradually whisk in the beef broth, Worcestershire, and Dijon mustard. Bring to a simmer and cook until thickened, about 5 to 8 minutes.
- Return the browned meatballs to the gravy and simmer until cooked through, about 15 minutes. Keep the heat at a gentle simmer so the gravy stays rich and the meatballs finish evenly.
Serve
- Spoon the meatballs and brown gravy over mashed potatoes. Top with fresh parsley for a bright finish.
Notes
For best gravy texture, whisk the flour in thoroughly and add the beef broth gradually so no lumps form. Refrigerate leftovers in a covered container up to 3 days; reheat gently on the stovetop until warmed through, adding a splash of broth if needed. Freezing is yes—freeze meatballs and gravy in a sealed container up to 3 months and thaw in the fridge overnight. For a lighter option, use lean ground beef (90/10) and reduce the butter in the gravy to 2 tablespoons while keeping the onion caramelization time the same.
