These meatballs and gravy are rich, savory, and virtually impossible to dry out or overcook. The key to making them unbelievably moist is to cook them slowly in the simmering gravy. My other secret to tender meatballs? I pre-soak the panko breadcrumbs in milk before mixing them with the ground beef. It’s a game-changer!
One day my pickiest child asked if I could make a different type of meatball that wasn’t just with a red sauce. I made these meatballs with brown gravy and he was a huge fan! That’s a big win in my book as a mom. We serve them over mashed potatoes or even rice, I love to make a batch of them and keep them in the freezer for an easy family dinner.

Why you’ll love this recipe
- An easy comfort food recipe ready in an hour. With rich cozy flavors, it’s a recipe the whole family will love.
- Moist and tender meatballs every time. Forget a dry and tough meatball, we have the best tips to make sure they come out perfectly every time.
- A one pan meal for easy cleanup. Both the meatballs and the gravy are made in the same skillet!
- This recipe is full of meal prep tips! Now that I make this recipe all the time, I have the best tips to reduce the cooking time of this dish by half. You’ll find all the details below.
Key Ingredient Notes
For the meatballs
- Panko breadcrumbs – These are a type of Japanese breadcrumb that has an airy, crisp texture and flaky consistency. They act as a binder for the meatballs and add moisture when mixed with the milk. You’ll find them in most grocery stores sold alongside regular breadcrumbs.
- Milk – Use any milk you have on hand. Whole milk, reduced-fat milk, or skim milk will all work.
- Ground beef – I suggest using lean ground beef; around 90/10 is ideal. If you use a higher fat content, you’ll need to drain some of the oil after browning the meatballs. You can also use ground chicken or ground turkey.
- Garlic – Fresh pressed garlic cloves infuse the meatballs and gravy with savory flavor. You’ll need 2-3 cloves for the meatball mixture and 2 cloves for the gravy.
- Egg – These are another binding ingredient that adds moisture, helping create tender and juicy meatballs that hold their shape.
- Worcestershire sauce – This adds both acidic and umami flavors.
- Seasonings – Italian seasoning, salt, and ground black pepper ensure a well-balanced, savory flavor. Salt enhances the taste of all the other meatball ingredients, and the Italian seasoning adds flavor from dried basil, oregano, marjoram, thyme, and rosemary.

For the gravy
- Olive oil – You’ll need 2 tablespoons of olive oil, divided. Use one tablespoon to brown the meatballs and the other tablespoon to sauté the mushrooms.
- Mushrooms – These add a meaty texture and earthy flavor to the gravy. I used sliced white button mushrooms, but cremini or baby bellas also work.
- Unsalted butter – Unsalted butter gives you more control over the amount of salt added to the gravy, but salted butter will work perfectly fine if that’s all you have on hand.
- All-purpose flour – I use this to thicken the gravy, giving it a smooth and creamy texture.
- Beef stock – Use this to form the base of the gravy. Low-sodium beef stock is best because you can always add more salt to taste once your meatballs and gravy are done cooking.

How to make this meatballs and gravy recipe:
Line a baking sheet with parchment paper before you begin, and set it aside as you prepare the meatballs.
1. Prepare the meatballs
- Combine the panko breadcrumbs and milk in a small bowl, and let the mixture soak for 1 minute.
- Mix the soaked breadcrumbs, ground beef, minced garlic, egg, Worcestershire sauce, Italian seasoning, salt, and pepper in a large bowl. Use clean hands to combine the ingredients.
- Shape the meatballs using a medium cookie scoop, and place them on the prepared baking sheet.

2. Brown the meatballs
- Heat 1 tablespoon of olive oil over medium heat in a large skillet.
- Add the meatballs to the hot skillet, and brown them on all sides. The meatballs should be in a single layer and turned using kitchen tongs. Complete this step in batches if needed.
- Transfer the browned meatballs to a clean plate.
PRO TIP: We’re not trying to fully cook the meatballs during the browning step. We’re creating a succulent, golden-brown crust on the exterior and leaving some brown bits in the pan for the gravy! The meatballs will finish cooking when they’re added to the simmering gravy.
3. Cook the mushrooms
- Pour the remaining tablespoon of olive oil into the hot skillet.
- Add the mushrooms and garlic, and cook for about 3 minutes, stirring frequently.
- Transfer the cooked mushrooms and garlic to a clean plate.

4. Make the gravy
- Melt the butter in the same skillet over medium heat, and add the flour.
- Whisk the butter and flour together constantly, cooking the mixture for at least 2 minutes to remove any raw flour taste. Don’t rush this step! We’re making a roux, which is crucial for properly thickening the gravy.
- Pour the beef stock and Worcestershire sauce into the butter and flour mixture.
- Whisk the mixture frequently while it comes to a boil.

- Add the browned meatballs and mushrooms to the gravy. Let the meatballs and gravy cook for 8-10 minutes, until the meatballs are cooked through and the gravy has thickened.
- Add salt and pepper to taste, and serve with a sprinkle of chopped parsley. Enjoy!

Expert Tips:
- Purchase pre-sliced mushrooms. They come washed and ready to dump into the skillet at dinnertime.
- Don’t cook the meatballs all the way through in the skillet. This step is just to sear the outside for flavor. They will finish cooking all the way through when they simmer in the gravy at the end.
- Deglaze the browned bits up off the bottom of the skillet when making the gravy. This should happen when you add the stock. The browned bits have so much flavor from searing the meatballs, so it’s a step that isn’t one to be missed!
- Make your meatballs the same size and don’t overwork the meat mixture. Use a cookie scoop or tablespoon measure to help make them the same size so they cook at an even rate. If you overwork your meat mixture, your meatballs could be tough in texture.
- If you have time to make your own beef stock from scratch, it’s so worth it! This is also a great meal prep recipe to keep stock in the freezer for easy weeknight cooking.
What to serve with meatballs and gravy
Soak up every last bit of this hearty mushroom gravy by serving it over or alongside something equally as delicious! Our favorite options are:

Make-Ahead Solutions
- Make a big batch of my make-ahead meatballs. The recipe is very similar to this meatball recipe and includes baking instructions.
- Refrigerate a portion of the baked meatballs for 3-5 days, and freeze the remaining meatballs for up to 4 months.
- Sauté the mushrooms and garlic up to 3 days in advance.
- When you’re ready to prepare dinner, all you have to do is make the gravy, add the meatballs and mushrooms, and cook until the gravy is thick and the meatballs are warm. Easy peasy!
Storage
Store leftover meatballs and gravy in an airtight container in the refrigerator for up to 3 days.
When reheating, the gravy will solidify as it cools in the fridge and will turn back into a liquid as it reheats. Warm leftover meatballs and gravy on the stove over low heat. Add a splash of beef broth or water if the gravy is too thick.
Meatballs and gravy are also freezer-friendly. Once fully cooled, transfer leftovers to a freezer bag, and freeze for up to 3 months. Thaw overnight in the refrigerator before reheating.
FAQs:
Slightly different from the gravy found in this recipe, Swedish meatball gravy is usually made with a beef stock base and a creamy element like heavy cream or sour cream. It’s a seriously rich and creamy gravy! I opt for sour cream in my Instant Pot Swedish meatballs.
Meatballs can be added to sauce uncooked, browned, or fully cooked through. When you add them depends on the recipe and your personal preference. Browning or baking meatballs in advance, as I do in this recipe, creates a deliciously crispy texture on the outside. On the other hand, adding raw meatballs to simmering sauce results in an ultra-soft and tender texture that absorbs the flavors from the cooking sauce.
Your gravy might become too thick as it simmers on the stove with the meatballs. Stir in a splash of water or beef broth to thin it out. Start with a couple of tablespoons, and gradually increase as needed.
More Easy Meatball Recipes

Meatballs and Gravy
Equipment
- 1 medium cookie scoop
Ingredients
For meatballs:
- ½ cup Panko Japanese breadcrumbs
- ¼ cup milk Note 1
- 1 lb lean ground beef Note 2
- 2-3 garlic cloves pressed
- 1 large egg
- 1 tablespoon Worcestershire sauce
- 1 teaspoon Italian seasoning
- 1 teaspoon coarse kosher salt
- ½ teaspoon ground black pepper
For gravy:
- 2 tablespoons olive oil
- 8 oz sliced mushrooms Note 3
- 2 garlic cloves pressed
- 3 tablespoons unsalted butter
- 3 tablespoons all-purpose flour
- 2 cups beef stock
- 1 tablespoon Worcestershire sauce
- Salt and pepper to taste
- 2 tablespoons chopped parsley if desired
Instructions
To make the meatballs:
- In a small bowl, combine Panko and milk. Set aside to soak for a minute.½ cup Panko Japanese breadcrumbs, ¼ cup milk
- In a large bowl, mix together Panko mixture, beef, garlic, egg, Worcestershire sauce, Italian seasoning, salt and pepper. Mix the beef mixture until well combined.1 lb lean ground beef, 2-3 garlic cloves, 1 large egg, 1 tablespoon Worcestershire sauce, 1 teaspoon Italian seasoning, 1 teaspoon coarse kosher salt, ½ teaspoon ground black pepper
- Using a medium cookie scoop, shape the meatballs and arrange them on a baking sheet, lined with parchment paper. (You'll get about two dozen 1.5-inch meatballs.)
To make the mushroom gravy:
- In a large skillet, heat 1 tablespoon of olive oil over medium heat.2 tablespoons olive oil
- Arrange the meatballs in one layer and brown on all sides, turning each meatball using a pair of kitchen tongs. (Note: Meatballs don’t need to be cooked all the way, we’re just browning for now.) Remove the browned meatballs onto a clean plate.
- Pour the remaining 1 tablespoon of olive oil into the same skillet and add mushrooms.8 oz sliced mushrooms, 2 garlic cloves
- Cook the mushrooms stirring frequently for about 3 minutes, or until they’re nice and brown. Remove them onto a clean plate.
- In the same skillet, melt the butter and stir in the flour. Cook the flour mixture for at least 2 minutes, whisking constantly. (It's called roux. We're making it to thicken the gravy. If you don’t cook the roux long enough, you'll taste raw flour in your gravy, so don’t rush this step.)3 tablespoons unsalted butter, 3 tablespoons all-purpose flour
- Slowly pour in the stock while whisking continuously.2 cups beef stock, 1 tablespoon Worcestershire sauce
- Add Worcestershire sauce and garlic and bring it to a boil, whisking frequently.
- Add the browned meatballs and mushrooms and cook for additional 8-10 minutes. If the gravy thickens too much, add a little bit of water, or stock. Salt and pepper to taste.Salt and pepper to taste
- If desired, add chopped parsley before serving. Serve over mashed potatoes, or noodles, for a complete meal.2 tablespoons chopped parsley
Share your thoughts! If you make this please leave a review letting me know how it was!
Notes
– Store leftover meatballs and gravy in an airtight container in the refrigerator for up to 3 days.
– The gravy will solidify as it cools in the fridge and will turn back into a liquid as it reheats. Warm leftover meatballs and gravy on the stove over low heat. Add a splash of beef broth or water if the gravy is too thick.
– Meatballs and gravy are freezer-friendly! Once fully cooled, transfer leftovers to a freezer bag, and freeze for up to 3 months. Thaw overnight in the refrigerator before reheating.
Nutrition
* Disclaimer: All nutrition information are estimates only. Read full nutrition disclosure.

Tried this recipe?
Make sure to leave a recipe review below!
Sharing of this recipe is encouraged and appreciated. Copying of full recipe to any social media is prohibited.
Stay connected and join Busy Cooks community:
FACEBOOK | PINTEREST | INSTAGRAM




Reader's Reviews
Pamela J Miller says
We love meatballs around here and I am stuck in a habit of making this in a patty form, but I am going to do this AND make the big batch, Thank You!
Lately, I have really been into cooking things ahead that are still good after freezing, not everything is, but meatballs are perfect to make ahead : )
Shinee says
Meatballs are fantastic for making ahead and don’t lose flavor/texture after freezing. Let us know if you give it a try, Pamela.