
Salisbury meatballs with mashed potatoes is comfort food at its best because it brings together the richest flavors of a classic American dinner into one satisfying plate. You get juicy, flavorful meatballs swimming in a savory onion gravy all piled high over the creamiest homemade mashed potatoes. Perfect for an easy weeknight meal but special enough for company, this recipe never fails to deliver that old-fashioned cozy feeling I remember from my grandmother's kitchen.
I first made this for a Sunday supper and now it is the most requested comfort food in our house.
Ingredients
- Ground beef 80 percent lean: Brings rich flavor and moisture Look for beef with a bright cherry red color and minimal liquid in the package
- Breadcrumbs: Bind the meatballs and help keep them soft Go for fresh plain breadcrumbs if possible
- Egg: Helps the meatballs hold their shape Choose a fresh egg with a thick shell for best results
- Milk: Moistens the bread mixture for a tender bite Whole milk works for maximum richness
- Small onion finely chopped: Adds sweetness and texture to the meatballs Pick firm onions with papery skins and no soft spots
- Garlic powder: Boosts savory depth without overpowering Use fresh garlic powder for the best punch
- Worcestershire sauce: Adds umami and a touch of tang Look for brands with molasses for extra depth
- Salt and pepper: Just enough to highlight all the flavors Use kosher salt and freshly ground black pepper if you can
- Olive oil: For frying the meatballs Use light olive oil for a crisp sear without strong flavor
- Butter: For the gravy Adds creaminess Choose unsalted high quality butter
- All-purpose flour: Thickens the gravy Use unbleached flour for a mild nutty taste
- Beef broth: Makes the gravy base Choose low sodium beef broth so you control seasoning
- Dijon mustard: Adds tang and sharpness for a balanced sauce
- Small onion thinly sliced: For a sweet gravy Pick onions that feel heavy for their size
- Thyme optional: Lends herbal notes If fresh use just a pinch
- Russet potatoes: For the mashed potatoes Their starch content creates fluffiest results Pick large firm potatoes without any green spots
- Milk: For mashing the potatoes Adds creaminess and body
- Butter: For richness in mashed potatoes Use real butter for best flavor
- Sour cream optional: For extra creamy mashed potatoes Adds a slight tang making them special
- Salt and pepper: To season everything Taste and season gradually as you go
Step-by-Step Instructions
- Mix and Form the Meatballs:
- Combine the ground beef breadcrumbs egg milk finely chopped onion garlic powder Worcestershire sauce salt and pepper in a large mixing bowl Use your hands or a sturdy spatula to blend everything together just until you see a uniform mixture Avoid overmixing or the meatballs can get tough Shape the mixture into one inch meatballs rolling them gently between your palms Line them up on a tray so they are ready to cook
- Fry the Meatballs:
- Heat olive oil in a large skillet over medium heat Once the oil is shimmering add the meatballs in batches so you do not crowd the pan Brown them on each side rotating gently with tongs so they get even color This should take about seven to eight minutes per batch The goal is deep caramelized crust and fully cooked centers Remove and set aside on a plate
- Make the Gravy:
- Using the same skillet for extra flavor add the butter and let it melt over medium heat Toss in the thinly sliced onion Stir them until they become soft and golden brown which usually takes five minutes Sprinkle the flour over the onions and cook for one minute while stirring constantly to form a roux This step removes the taste of raw flour Add the beef broth slowly while whisking to avoid lumps Stir in Worcestershire sauce Dijon mustard and thyme if you have it Season with a bit of salt and pepper Let the mixture bubble gently for five to seven minutes This is when it becomes rich thick gravy with tender onions
- Simmer Meatballs in Gravy:
- Return the cooked meatballs to the skillet Tuck them partway into the gravy and turn to coat Heat another five minutes on medium low so the flavors mingle and the meatballs warm through
- Prepare the Mashed Potatoes:
- While the meatballs simmer bring a large pot of salted water to a boil Add the peeled and cubed russet potatoes Boil them uncovered until completely fork tender usually fifteen to twenty minutes Drain well Return potatoes to the hot pot to steam off any extra water Add butter milk sour cream if using salt and pepper right in the pot Use a potato masher or hand mixer to mash until smooth and super creamy Taste and adjust seasoning This step makes all the difference for perfect mashed potatoes
- Serve Everything:
- Spoon generous helpings of mashed potatoes onto each plate Top with plenty of Salisbury meatballs and ladle the rich onion gravy over everything Garnish with chopped parsley if desired and serve while hot Immediately enjoy the way the warm sauce seeps into the mash

I always look forward to the sweet golden onions in the gravy which remind me of how my mother would caramelize onions until they tasted almost buttery soft. The rich aroma of onion and beef simmering on the stove fills the house with memories and warmth.
Storage Tips
Leftovers keep beautifully in the fridge for three days Store the meatballs and gravy together in a sealed container and keep mashed potatoes separately for the best texture I like to reheat everything gently on the stovetop with a splash of extra broth or milk to keep things moist You can also freeze the gravy and meatballs in portions for up to three months Thaw in the fridge overnight then reheat
Ingredient Substitutions
If you do not have Worcestershire sauce soy sauce plus a teaspoon of brown sugar works as a backup Swap in ground turkey or pork for some or all of the beef to change things up You can use Yukon Gold potatoes for a buttery flavor or even cauliflower mash if you need a lighter side If you need breadcrumbs but want to go gluten free try crushed rice cakes or gluten free crackers
Serving Suggestions
This is classic diner food at heart so it pairs perfectly with steamed green beans roasted carrots or a tangy coleslaw A simple side salad with vinaigrette keeps things fresh For a Southern style twist serve with buttered corn or sauteed greens You can even scoop everything into a bowl for a cozy one dish supper

Learning to make this by watching family cooks always taught me that patience slow browned onions and tasting as you go are the secrets to homemade comfort food
Foire aux questions sur la recette
- → What type of ground beef works best?
Use 80% lean ground beef for moist, flavorful meatballs that hold together well and remain juicy.
- → How do I keep meatballs from falling apart?
Breadcrumbs and egg act as binders, ensuring the meatballs stay cohesive during cooking.
- → Can I make the mashed potatoes ahead?
Yes, prepare them in advance and reheat gently with a splash of milk to restore creaminess before serving.
- → What can I use instead of Worcestershire sauce?
Soy sauce or a splash of balsamic vinegar can provide similar savory notes in both the meatballs and gravy.
- → How to prevent lumpy mashed potatoes?
Mash potatoes while hot and use warm milk and butter to achieve a smooth, fluffy texture.
- → Is it possible to bake instead of fry meatballs?
Yes, arrange meatballs on a baking sheet and bake at 400°F until browned and cooked through, about 15-20 minutes.