This post may contain affiliate links. See my disclosure policy.
My homemade meatballs and gravy make the most comforting weeknight dinner ever! Juicy ground beef meatballs are pan-fried and then simmered in an easy beef gravy. These are a family favorite.
Love cozy beefy dinners? Try my beef tips and gravy, homemade Salisbury steak, boneless beef short ribs, and cube steak next.
Beef and gravy is such a fabulous combination, and my meatballs and gravy are a weekly request in my household.
I tested this recipe MANY times to ensure the gravy complimented the meatballs perfectly, and friends, we have a winner. The gravy is outstanding (and super simple!), and the ground beef meatballs are to die for. My mouth is drooling now!
Table of Contents
Why I love this recipe
- Mouthwatering comfort food. This is my go-to recipe for cozy winter nights.
- Simple ingredients. A handful of spices and classic meatball ingredients are all you’ll need.
- Multiple cooking methods. The meatballs are easy to make in the oven or air fryer, so I’ve tested those methods too.
- Easy to make ahead. This is one of my favorite dinners to make because I can prepare it days in advance. All I have to do before serving is reheat the meatballs and gravy, then everyone can dig in!
Ingredients needed
- Ground beef. Do yourself a favor and make the meatballs with ground beef that has some fat in it, like 90/10 or 85/15. Extra-lean ground beef is a no-go; it leaves the meatballs dry and bland, and that’s not what we want for comforting dinners!
- Egg. To bind the meatballs together.
- Breadcrumbs. My secret to extra tasty meatballs is panko breadcrumbs. While standard breadcrumbs also work, the larger flakes from the panko variety are just that much more sturdy (we don’t want this breaking apart in the gravy!).
- Olive oil. The beef is juicy as-is, but I like to make the meatballs with a little bit of oil for extra moisture.
- Herbs and seasonings. For this base, I’m using a mix of fresh parsley, salt, pepper, paprika, and an Italian seasoning blend.
- Butter. For pan-frying.
- Onions. Sauteed onions are the savory secret in the homemade gravy. Feel free to use shallots as a substitute.
- Flour. To thicken the gravy. You can use any kind of flour you like, such as all-purpose, whole wheat, or gluten-free flour.
- Beef broth. My favorite broth to use in homemade gravy recipes. Choose a brand that has the least number of ingredients and no added sugar. I like the McCormick’s or the Whole Foods brand.
- Cream. The gravy wouldn’t be nearly as smooth and luscious without a splash of cream! Whole milk or full-fat coconut milk will work, but you’ll need to mix it VERY well to prevent any curdling.
- Dijon mustard. You can use yellow mustard if that’s all you have at home but it won’t add as much depth as Dijon.
- Worcestershire sauce. A beef recipe’s best friend! It takes the beefy and savory flavors to new heights.
- Salt and pepper. To taste.
How to make meatballs and gravy
I’ve included step-by-step photos below to make this recipe easy to follow at home. For the full printable recipe instructions and ingredient quantities, scroll to the recipe card at the bottom of this post.
Step 1- Make the meatballs. Gently stir the meatball ingredients together in a large bowl until just combined. Shape scoops of the meatball mixture into round meatballs.
Step 2- Fry the meatballs. Melt the butter in a large skillet, then add the meatballs. Brown on all sides, then set aside on a plate.
Step 3- Make the gravy. Saute the onion in the now-empty pan. Stir in the butter and flour and cook for 2 minutes. Afterward, whisk in the rest of the ingredients.
Step 4- Simmer in gravy. Reduce the heat and add the meatballs back into the pan. Simmer until the meatballs are cooked through.
Alternative cooking methods
Technically, any meatballs can be used for this recipe as the gravy is the star (or rather, the pairing is!). If you don’t want to cook the meatballs in the skillet, I’ve tested this recipe both in the oven and air fryer, so you have no excuses!
Oven method: After rolling, place the meatballs in a parchment-lined baking pan. Bake in a 400ºF oven for 12 to 15 minutes. Finish them under the broiler for about 5 minutes or until they’re browned and crisp.
Air fryer method: Follow the exact process of my air fryer meatballs or air fryer turkey meatballs, then toss them through the gravy.
Arman’s recipe tips
- Don’t overmix the meatballs. It’s my #1 rule for homemade meatballs! If you overwork the meat mixture, your meatballs will be tough, gummy, or dry.
- Wet your hands. Rinse your hands with water before rolling the meatballs to keep the beef from sticking.
- You’ll know the meatballs are fully cooked once they reach an internal temperature of 165F. Use a meat thermometer to check.
Variations
- Use other ground meat (or pre-made meatballs!). Ground pork and ground turkey are both fantastic options. Pre-made meatballs work, too, so try this recipe with my ground chicken meatballs, pork meatballs, or vegetarian-friendly eggplant meatballs!
- Make them cheesy. When I want to jazz up homemade meatballs, I’ll stir shredded mozzarella or cheddar cheese into the mix.
- Make this vegan-friendly. This recipe would be just as tasty without the meat! Try it with my vegan meatballs and a vegan-friendly gravy instead.
Storage instructions
To store: Once cool, store the leftovers in an airtight container in the refrigerator for 3 to 4 days.
To freeze: They also freeze well for up to 3 months. Let them thaw in the fridge overnight before reheating.
To reheat: You can reheat the meatballs and gravy in a skillet over medium heat until warmed through. To help loosen the gravy, add a splash of beef broth or water to the skillet.
Frequently asked questions
The best way to serve meatballs and gravy is over a bed of creamy mashed potatoes, cauliflower mashed potatoes, cooked rice, or egg noodles. From there, pair them with a vegetable side dish, like roasted brussels sprouts or air fryer broccoli.
Yes! You can roll the raw meatballs and leave them in the fridge up to 1 day ahead of cooking or freeze them for up to 3 months.
The gravy is also easy to make ahead. Prepare it without the meatballs, then store it in an airtight container in the fridge for up to 4 days or in the freezer for 3 months.
You don’t have to, but I do recommend it! The golden, crispy crust that forms around the outside of the seared meatballs prevents them from falling apart and seals in their amazing flavors.
More mouthwatering meatball recipes
Meatballs And Gravy
Ingredients
- 1 1/2 pounds ground beef
- 1 large egg
- 1/2 cup breadcrumbs
- 2 tablespoons olive oil
- 1 tablespoon fresh parsley chopped
- 1 tablespoon salt
- 1 teaspoon black pepper
- 1 teaspoon paprika
- 1 teaspoon Italian seasoning
- 4 tablespoons butter divided
- 2 small onions sliced
- 2 tablespoons all-purpose flour
- 1 cup beef broth
- 1/2 cup heavy cream
- 1 tablespoon Dijon mustard
- 1 tablespoon Worcestershire sauce
Instructions
- Combine the ground beef, egg, breadcrumbs, olive oil, parsley, salt, black pepper, paprika and Italian seasoning in a bowl. Mix everything with your hands until combined.
- Roll out 15 meatballs, around 2 ounces each.
- Add 3 tablespoons of butter into a large skillet over medium-high heat. Once melted, brown the meatballs on all sides. Once browned, remove from the skillet.
- Add the onion and cook until translucent. Add the remaining butter, then the flour. Saute until the flour heats through, then add in the beef broth, heavy cream, mustard, and Worcestershire sauce.
- Mix everything together and cook until the mixture starts boiling. Reduce the heat, return the meatballs to the pan, and cook for another 15 minutes, or until the meatballs are cooked through.
Looking forward to making these tonight. Is it really 1 tablespoon of salt and not 1 teaspoon; seems like a lot.
It is, but feel free to start with 1 teaspoon and adjust as needed 🙂
Please also suggest substitutes for dairy ingredients in your meat and chicken dishes.
Thank you very much
Tastes Delicious and so easy to make!