Meatballs and mashed potatoes with gravy is the ultimate comfort food that brings me right back to Sunday dinners at my grandmother’s table! This simple, hearty recipe uses everyday ingredients to create tender, flavorful meatballs paired with creamy mashed potatoes, all smothered in rich brown gravy.
Love More Meatballs Recipes? Try My Ground Turkey Meatballs or this Best Italian Meatballs next.

Why You’ll Love This Recipe
Tender, cozy, and full of hearty flavor, this Meatballs and Mashed Potatoes dish is the ultimate comfort meal. The meatballs turn out incredibly moist thanks to a simple breadcrumb-and-milk mixture, while the mashed potatoes are irresistibly buttery and smooth.
Finished with a rich, savory gravy, every bite feels warm and satisfying. Ready in just 25 minutes and made with pantry staples, it’s an easy, budget-friendly dinner that brings comfort to the table any night of the week.
Print
Meatballs and Mashed Potatoes
- Total Time: 25 minutes
- Yield: 4 servings
Description
This easy meatballs and mashed potatoes recipe is the ultimate comfort food dinner! Tender, juicy meatballs made with ground beef and a secret breadcrumb mixture are browned to perfection, then served over creamy, buttery mashed potatoes with rich brown gravy. Everything comes together in just 25 minutes using simple pantry ingredients. Perfect for busy weeknights or Sunday dinners when you’re craving something warm and satisfying!
Ingredients
For the Meatballs:
- 1 pound (454 g) ground beef (preferably chuck with 15% fat content)
- 3 tablespoons (30 g) breadcrumbs
- 3 tablespoons (45 g) milk
For the Mashed Potatoes:
- 4 medium potatoes, cubed (russet potatoes recommended)
- 2 tablespoons (28 g) butter
- 1/2 cup (122 g) milk
- 1/2 teaspoon (3 g) salt
For the Gravy:
- 1 cup (237 ml) water
- 1 packet brown gravy mix
Substitution Notes:
- Ground beef can be swapped with ground turkey or a beef-pork blend
- Use gluten-free breadcrumbs for a gluten-free option
- Dairy-free? Try plant-based butter and milk alternatives
- Yukon Gold potatoes work beautifully too!
Instructions
Fill a large pot halfway with water and add your cubed potatoes. Bring to a gentle boil and cook until fork-tender, about 15 minutes. You’ll know they’re ready when a fork slides through easily with no resistance.
While the potatoes are cooking, add the breadcrumbs and milk to a bowl. Let them soak together for about 2-3 minutes until it forms a paste-like consistency. This is your secret weapon for tender meatballs!
Add the ground beef to the breadcrumb mixture and gently mix with your hands until just combined. Here’s the key: don’t overwork it! Mix until you can’t see any more breadcrumb paste, then stop. Form evenly sized meatballs about 1¼ inches in diameter, rolling them firmly to keep them together.
Heat your large skillet over medium-high heat. Add the meatballs, making sure not to crowd the pan – give them space to breathe! Brown them on all sides by rotating and flipping every 2-3 minutes. This takes about 10 minutes total. You want a beautiful golden-brown crust all over.
Once your potatoes are tender, drain them completely. Return them to the pot and mash with a potato masher or hand mixer until smooth. Add the butter, milk, and salt, then stir until creamy and fluffy. Taste and adjust seasoning if needed!
Remove the cooked meatballs from the skillet and set aside. Add the water to the pan (it’ll sizzle and pick up all those delicious browned bits!) and whisk in the brown gravy mix. Let it simmer for 2-3 minutes until slightly thickened, whisking occasionally.
Plate your creamy mashed potatoes, top with meatballs, and pour that gorgeous gravy over everything. Dinner is served!
Notes
- Don’t overcrowd the pan! If needed, cook your meatballs in two batches. Overcrowding creates steam instead of a nice brown crust.
- Room temperature matters: Let your ground beef sit out for 10 minutes before forming meatballs – it’s easier to work with and mixes more evenly.
- Save time: Use pre-formed frozen meatballs if you’re really in a pinch! Just brown and heat through.
- Common mistake: Overworking the meat mixture makes tough, dense meatballs. Mix gently and only until combined!
- Prep Time: 10 minutes
- Cook Time: 15 minutes
- Category: Main Dish
- Method: Stovetop
- Cuisine: American
Ingredient List
For the Meatballs:
- 1 pound (454 g) ground beef (preferably chuck with 15% fat content)
- 3 tablespoons (30 g) breadcrumbs
- 3 tablespoons (45 g) milk
For the Mashed Potatoes:
- 4 medium potatoes, cubed (russet potatoes recommended)
- 2 tablespoons (28 g) butter
- 1/2 cup (122 g) milk
- 1/2 teaspoon (3 g) salt
For the Gravy:
- 1 cup (237 ml) water
- 1 packet brown gravy mix
Substitution Notes:
- Ground beef can be swapped with ground turkey or a beef-pork blend
- Use gluten-free breadcrumbs for a gluten-free option
- Dairy-free? Try plant-based butter and milk alternatives
- Yukon Gold potatoes work beautifully too!
Why These Ingredients Work
The breadcrumb and milk mixture is the secret to incredibly tender meatballs – it’s called a panade, and it keeps the meat moist while adding structure. The 15% fat content in chuck beef gives you the perfect balance of flavor and juiciness without being greasy. Russet potatoes have a high starch content that makes them fluffy and perfect for mashing. The butter and milk in the potatoes create that creamy, dreamy texture we all crave. And using the pan drippings for the gravy means you’re capturing all that delicious browned flavor from the meatballs!
Essential Tools and Equipment
- Large pot for boiling potatoes
- Large skillet for browning meatballs
- Potato masher or hand mixer
- Mixing bowls
- Whisk (for gravy)
- Measuring cups and spoons
How To Make Meatballs and Mashed Potatoes
Step 1: Start the Potatoes
Fill a large pot halfway with water and add your cubed potatoes. Bring to a gentle boil and cook until fork-tender, about 15 minutes. You’ll know they’re ready when a fork slides through easily with no resistance.
Step 2: Make the Meatball Mixture
While the potatoes are cooking, add the breadcrumbs and milk to a bowl. Let them soak together for about 2-3 minutes until it forms a paste-like consistency. This is your secret weapon for tender meatballs!
Step 3: Form the Meatballs
Add the ground beef to the breadcrumb mixture and gently mix with your hands until just combined. Here’s the key: don’t overwork it! Mix until you can’t see any more breadcrumb paste, then stop. Form evenly sized meatballs about 1¼ inches in diameter, rolling them firmly to keep them together.
Step 4: Brown the Meatballs
Heat your large skillet over medium-high heat. Add the meatballs, making sure not to crowd the pan – give them space to breathe! Brown them on all sides by rotating and flipping every 2-3 minutes. This takes about 10 minutes total. You want a beautiful golden-brown crust all over.
Step 5: Mash the Potatoes
Once your potatoes are tender, drain them completely. Return them to the pot and mash with a potato masher or hand mixer until smooth. Add the butter, milk, and salt, then stir until creamy and fluffy. Taste and adjust seasoning if needed!
Step 6: Make the Gravy
Remove the cooked meatballs from the skillet and set aside. Add the water to the pan (it’ll sizzle and pick up all those delicious browned bits!) and whisk in the brown gravy mix. Let it simmer for 2-3 minutes until slightly thickened, whisking occasionally.
Step 7: Serve
Plate your creamy mashed potatoes, top with meatballs, and pour that gorgeous gravy over everything. Dinner is served!

You Must Know
Your meatballs MUST be the same size so they cook evenly – I use a small ice cream scoop to portion them perfectly every time. Also, resist the urge to press down on the meatballs while they’re cooking! Let them brown naturally for the best texture.
Personal Secret: I always let my breadcrumb mixture sit for a full 3 minutes before adding the beef. This ensures maximum moisture absorption, which means extra-tender meatballs every single time!
Pro Tips & Cooking Hacks
- Don’t overcrowd the pan! If needed, cook your meatballs in two batches. Overcrowding creates steam instead of a nice brown crust.
- Room temperature matters: Let your ground beef sit out for 10 minutes before forming meatballs – it’s easier to work with and mixes more evenly.
- Save time: Use pre-formed frozen meatballs if you’re really in a pinch! Just brown and heat through.
- Flavor boost: Add a pinch of garlic powder and onion powder to your meatball mixture for extra depth.
- Common mistake: Overworking the meat mixture makes tough, dense meatballs. Mix gently and only until combined!
Flavor Variations / Suggestions
- Italian Style: Add 1/4 cup grated Parmesan, 1 teaspoon Italian seasoning, and minced garlic to the meatball mixture
- Swedish-Inspired: Use half beef, half pork, and add a pinch of nutmeg and allspice
- Loaded Mashed Potatoes: Stir in shredded cheddar cheese, sour cream, and chopped chives
- Garlic Mashed Potatoes: Add 2-3 cloves of roasted garlic to your potatoes
- Homemade Gravy: Skip the packet and make gravy from scratch using the pan drippings, flour, and beef broth
Make-Ahead Options
This recipe is fantastic for meal prep! Here’s how:
- Meatballs: Form the raw meatballs and refrigerate on a parchment-lined tray for up to 2 days before cooking. You can also cook them completely and refrigerate for 3 days or freeze for up to 3 months.
- Mashed Potatoes: Make the mashed potatoes up to 2 days ahead and store in an airtight container in the fridge. Reheat gently on the stovetop with a splash of milk.
- Full Meal: Cook everything, portion into containers, and refrigerate for up to 3 days. Perfect for grab-and-go lunches!
Recipe Notes & Baker’s Tips
- The 15% fat content in ground chuck is ideal – leaner meat will give you drier meatballs, while fattier meat can be greasy.
- If your mashed potatoes seem dry, add milk a tablespoon at a time until you reach your desired consistency.
- Don’t skip draining the potatoes completely – excess water makes for gummy, gluey mashed potatoes.
- For extra-smooth mashed potatoes, use a ricer instead of a masher.
- The meatballs are done when they reach an internal temperature of 160°F.
Serving Suggestions
This meal is complete on its own, but here are some delicious pairings:
- Serve with steamed green beans, roasted carrots, or a fresh garden salad
- Add a slice of crusty bread to soak up every bit of that gravy
- For a special touch, garnish with fresh parsley or chives
- Perfect alongside roasted Brussels sprouts or glazed carrots
- Make it a full Sunday dinner with dinner rolls and a vegetable medley
How to Store Your Meatballs and Mashed Potatoes
Refrigerator: Store meatballs, potatoes, and gravy in separate airtight containers for up to 3-4 days in the refrigerator.
Freezer: Cooked meatballs freeze beautifully for up to 3 months. Freeze in a single layer on a baking sheet, then transfer to a freezer bag. Mashed potatoes can be frozen for up to 1 month, though the texture may change slightly.
Reheating:
- Meatballs: Reheat in a skillet with a splash of water or broth, covered, until warmed through (about 5-7 minutes)
- Mashed Potatoes: Reheat in the microwave with a splash of milk, or on the stovetop over low heat, stirring frequently
- Gravy: Reheat gently on the stovetop, whisking in a little water if it’s too thick
Allergy Information
Common Allergens: This recipe contains dairy (milk, butter) and gluten (breadcrumbs, gravy mix).
Substitutions:
- Dairy-Free: Use plant-based milk (oat or soy work best) and vegan butter
- Gluten-Free: Use gluten-free breadcrumbs and gluten-free gravy mix
- Egg-Free: This recipe is naturally egg-free!
Questions I Get Asked A Lot
Why are my meatballs falling apart in the pan?
This usually happens when the mixture is too wet or the meatballs aren’t compacted firmly enough when forming. Make sure you’re squeezing them together well, and if the mixture seems too loose, add another tablespoon of breadcrumbs. Also, don’t flip them too early – let them develop a good crust first!
My mashed potatoes turned out gluey, what happened?
This happens from over-mixing! When you overwork potatoes, you break down too much starch and they become gummy. Use a light hand when mashing and mix just until smooth. A ricer or food mill helps prevent this issue.
Can I make homemade gravy instead of using a packet?
Definitely! After removing the meatballs, add 2 tablespoons of flour to the pan drippings and whisk for 1 minute. Slowly add 1 cup of beef broth, whisking constantly. Season with salt, pepper, and a splash of Worcestershire sauce. Simmer until thickened!
💬 Tried this recipe? Leave a comment and rating below! I’d love to hear how it turned out for you and what variations you tried!



