This hearty meal features homemade beef meatballs simmered in a thick, flavorful onion gravy. It is a filling dish that pairs exceptionally well with mashed potatoes, egg noodles, or steamed rice.

List of ingredients
- 2 large eggs (well beaten) – acts as a binder for the meat.
- 1/2 cup panko breadcrumbs – provides a light texture.
- 2 tablespoons ketchup – adds a subtle tang and sweetness.
- 1 tablespoon light brown sugar (packed) – balances the savory flavors.
- 1 tablespoon Worcestershire sauce – enhances the depth of the meat.
- 1 tablespoon garlic powder – provides consistent savory seasoning.
- 1 tablespoon onion powder – adds an aromatic base.
- 1/2 teaspoon kosher salt – basic flavor enhancement.
- 1/2 teaspoon black pepper – provides a mild spice.
- 1/2 teaspoon smoked paprika – adds a hint of smokiness.
- 2 pounds lean ground beef – the primary protein source.
- Oil for frying – used to sear the meat surface.
- 6 tablespoons unsalted butter – used to create the roux for the gravy.
- 1 medium sweet onion (thinly sliced) – the main aromatic for the sauce.
- 1/2 teaspoon kosher salt – for seasoning the onions.
- 1/2 teaspoon black pepper – for seasoning the onions.
- 4 cloves garlic (minced) – adds pungent flavor.
- 6 tablespoons all-purpose flour – thickens the gravy.
- 4 cups beef stock – the liquid base for the sauce.
- 2 teaspoons Worcestershire sauce – adds extra umami to the gravy.
- Fresh chopped parsley (optional) – used for a fresh garnish.
step-by-step instructions
- Prepare the Binder: In a large mixing bowl, stir together the beaten eggs, panko breadcrumbs, ketchup, brown sugar, Worcestershire sauce, garlic powder, onion powder, salt, pepper, and smoked paprika.
- Mix the Meat: Add the lean ground beef to the bowl. Mix thoroughly using your hands to ensure all seasonings are evenly distributed without overworking the meat.
- Shape and Chill: Roll the mixture into balls, approximately 1.5 tablespoons each. Place them on a sheet tray and freeze for 10 minutes to firm up the structure and prevent them from breaking during frying.
- Brown the Meatballs: Pour about 1/4 inch of oil into a dutch oven or deep skillet over medium heat. Fry the meatballs in batches for about 2.5 minutes per side until golden brown; they should not be fully cooked through at this stage.
- Set Aside: Remove the browned meatballs and place them on a plate, continuing the process until all batches are seared.
- Prepare the Pan: Carefully wipe out excess grease from the pot, but leave any browned bits stuck to the bottom as these add significant flavor to the gravy.
- Sautรฉ Onions: Melt the butter in the pot. Add the sliced onions, salt, and pepper, stirring and cooking for 10 minutes until the onions are soft and lightly browned.
- Add Aromatics and Flour: Stir in the minced garlic and cook for 30 seconds. Add the flour and stir constantly for one minute to cook the raw flour taste.
- Build the Gravy: Very slowly pour in the beef stock while whisking continuously to prevent lumps from forming. Stir in the remaining Worcestershire sauce.
- Simmer and Finish: Return the meatballs to the pot and stir gently to coat. Simmer uncovered for 10 minutes, stirring occasionally, until the gravy thickens and the meatballs reach an internal temperature of 165ยฐF.
- Serve: Taste the gravy and adjust salt or pepper if needed. Garnish with fresh chopped parsley and serve immediately.
Professional Tips for Better Meatballs
Prevent Overworking the Meat
Avoid mixing the ground beef too vigorously after adding it to the binder. Overworking the meat can lead to a dense, tough texture rather than a tender, juicy meatball.
Utilize the Chilling Phase
Freezing the rolled meatballs for 10 minutes is a critical step. This chills the fats and binders, ensuring the meatballs maintain their spherical shape when they hit the hot oil.
Sear in Small Batches
Do not overcrowd the skillet when browning the meatballs. Overcrowding drops the oil temperature, which causes the meat to steam rather than sear, resulting in a lack of golden-brown color.
Check Internal Temperature
Use a digital meat thermometer to ensure the meatballs reach 165ยฐF. This guarantees the meat is safe to eat while preventing overcooking, which can make the beef dry.
Meat and Base Substitutions
Using Ground Turkey or Chicken
If you prefer a leaner alternative to beef, ground turkey or chicken works well. Since these meats are leaner, you may add a tablespoon of olive oil to the meat mixture to maintain moisture.
Selecting Different Onion Varieties
While sweet onions provide a mellow flavor, yellow onions offer a sharper taste and white onions provide a clean, crisp profile. Any of these can be used depending on your flavor preference.
Alternative Stock Options
Beef stock is standard for this brown gravy, but chicken stock can be used for a lighter flavor. If using chicken stock, consider adding a teaspoon of soy sauce to maintain the dark color.
Breadcrumb Alternatives
If panko is unavailable, standard dried breadcrumbs can be substituted. Panko provides a lighter texture, while standard crumbs result in a slightly denser meatball.
Mastering the Gravy Consistency
Creating a Stable Roux
The combination of butter and flour creates a roux, which is the foundation of the gravy. Cooking the flour for one minute ensures the final sauce does not have a grainy, floury taste.
Preventing Sauce Lumps
Always stream the beef stock in slowly while whisking. Adding the liquid too quickly can cause the flour to clump, making it difficult to achieve a smooth, velvety consistency.
Utilizing the Fond
The brown bits left in the pan after searing the meat are called the fond. These concentrated proteins provide deep, savory notes that are essential for a professional-tasting gravy.
Adjusting Final Thickness
If the gravy is too thick after simmering, stir in a small amount of beef stock or water. If it is too thin, simmer for an additional 5 minutes uncovered to reduce the liquid.
Serving and Pairing Suggestions
Classic Potato Pairings
Mashed potatoes are the most traditional side for meatballs and gravy. The creamy texture of the potatoes complements the rich, savory nature of the onion sauce.
Using Egg Noodles
Wide egg noodles provide a great textural contrast and are excellent for soaking up the gravy. Toss the noodles in a small amount of butter before plating.
Serving Over Rice
Steamed white or brown rice is an effective base that absorbs the sauce well. This option is ideal for those seeking a gluten-free base, provided the gravy is modified with a gluten-free thickener.
Recommended Vegetable Sides
Pair this dish with steamed green beans, roasted carrots, or sautรฉed spinach. These vegetables provide a fresh, crisp balance to the richness of the beef and butter.
Storage and Preservation
Refrigeration Guidelines
Store leftover meatballs and gravy in an airtight container in the refrigerator. They will remain fresh and safe to eat for up to 5 days.
Freezing Instructions
This dish freezes well for up to 3 months. Use freezer-safe containers and leave a small amount of space at the top to allow for expansion during freezing.
Proper Thawing Process
To thaw frozen meatballs and gravy, transfer the container to the refrigerator overnight. This slow thaw preserves the texture of the meat and the consistency of the sauce.
Reheating Methods
Stovetop Reheating
Place the meatballs and gravy in a pot over low heat. Add a splash of beef stock or water to loosen the gravy, which often thickens significantly when cooled.
Oven Reheating
Place the dish in an oven-safe container and cover tightly with aluminum foil. Bake at 325ยฐF until heated through to prevent the sauce from evaporating.
Microwave Reheating
Heat in short intervals of 60 to 90 seconds, stirring in between. This ensures even heating and prevents the meatballs from becoming rubbery.
Make-Ahead Strategies
Pre-rolling and Freezing
You can roll the meatballs and freeze them raw on a tray. Once frozen solid, transfer them to a bag; they can be fried directly from the freezer, though they may need an extra minute of searing.
The Slow Oven Method
For a more tender result, bring the dish to a simmer on the stove, then cover it and place it in a preheated 250ยฐF oven. Stir every 30 minutes and cook for up to 4 hours.
Preparing Gravy Base
You can prepare the onion and flour base (the roux) in advance. Store it in the fridge and simply add the stock and meatballs when you are ready to finish the meal.
Common Troubleshooting
Meatballs Falling Apart
If meatballs break during frying, it is usually due to insufficient binder or not chilling them long enough. Ensure the eggs are well beaten and the meatballs spend 10 minutes in the freezer.
Gravy Tasting Too Salty
If the gravy is overly salty, stir in a pinch of brown sugar or add a small amount of unsalted beef stock. This helps balance the sodium levels without changing the flavor profile.
Meatballs Feeling Dry
Dry meatballs often result from using meat that is too lean or overcooking them during the simmering phase. Ensure you use lean ground beef but do not exceed the 165ยฐF internal temperature.
Flour Clumping in Sauce
If lumps appear despite whisking, you can use a handheld immersion blender for a few seconds to smooth the sauce. Alternatively, strain the gravy through a fine-mesh sieve before adding the meatballs.
Frequently Asked Questions
Can I use frozen pre-made meatballs?
Yes, you can use high-quality frozen meatballs. Skip the rolling and browning steps, and simply add them directly to the simmering gravy to heat through.
Is there a substitute for panko?
You can use regular breadcrumbs, crushed crackers, or even quick-cooking oats. Panko is preferred for lightness, but other binders will still hold the meatballs together.
How can I make the gravy spicier?
To add heat, stir in a pinch of red pepper flakes or a dash of cayenne pepper during the flour-cooking stage. This distributes the spice evenly throughout the sauce.
Can I make this in a slow cooker?
While the recipe is designed for a pot, you can brown the meatballs and sautรฉ the onions first, then transfer everything to a slow cooker. Cook on low for 4-6 hours for a tender result.
Print
Savory Meatballs with Rich Onion Gravy
- Total Time: 60 minutes
- Yield: 6 servings 1x
- Diet: General
Description
Meatballs and gravy is a stick-to-your-ribs, comforting meal. With homemade meatballs and a luscious onion gravy, this recipe will be sure to go on your weekly meal rotation.
Ingredients
- 2 large eggs, well beaten
- 1/2 cup panko breadcrumbs
- 2 tablespoons ketchup
- 1 tablespoon light brown sugar, packed
- 1 tablespoon Worcestershire sauce
- 1 tablespoon garlic powder
- 1 tablespoon onion powder
- 1/2 teaspoon kosher salt
- 1/2 teaspoon black pepper
- 1/2 teaspoon smoked paprika
- 2 pounds lean ground beef
- oil for frying
- 6 tablespoons unsalted butter
- 1 medium sweet onion, thinly sliced
- 1/2 teaspoon kosher salt
- 1/2 teaspoon black pepper
- 4 cloves garlic, minced
- 6 tablespoons all-purpose flour
- 4 cups beef stock
- 2 teaspoons Worcestershire sauce
- fresh chopped parsley, optional
Instructions
- Step: Add the beaten eggs, panko breadcrumbs, ketchup, light brown sugar, Worcestershire sauce, garlic powder, onion powder, salt, pepper, and paprika in a large bowl and stir to combine.
- Step: Place the ground beef in the bowl and mix it well together.
- Step: Roll the mixture into balls (about 1 and 1/2 tablespoons each), place on a sheet tray, and freeze for 10 minutes.
- Step: Heat oil in a dutch oven or large skillet over medium heat and fry meatballs in batches until golden brown, about 2 and 1/2 minutes per side.
- Step: Place the browned meatballs on a plate.
- Step: Wipe out excess grease from the pan, leaving the browned bits.
- Step: Melt butter in the pot and cook onions with salt and pepper for about 10 minutes until softened and slightly browned.
- Step: Stir in garlic for 30 seconds, then add flour and cook for 1 additional minute.
- Step: Slowly stream in the beef stock while whisking to avoid lumps and stir in the Worcestershire sauce.
- Step: Return meatballs to the pot and simmer uncovered for 10 minutes, or until internal temperature reaches 165ยฐF and gravy thickens.
- Step: Serve immediately with a garnish of fresh parsley.
Notes
Serve over noodles, rice, or mashed potatoes. Store leftovers in the fridge for up to 5 days or freeze for up to 3 months.
- Prep Time: 20 minutes
- Cook Time: 40 minutes
- Category: Main Course
- Method: Pan-frying
- Cuisine: American
Nutrition
- Serving Size: 1 serving
- Calories: 446 kcal
- Sugar: 8 g
- Sodium: 981 mg
- Fat: 21 g
- Saturated Fat: 11 g
- Unsaturated Fat: 8 g
- Trans Fat: 1 g
- Carbohydrates: 23 g
- Fiber: 1 g
- Protein: 40 g
- Cholesterol: 186 mg