About this recipe
These Cheesy French Onion Meatballs are pure comfort food for a chilly Tuesday night. We are taking all those deep, savory flavors of a classic French onion soup and packing them right into a hearty skillet dinner. Slowly caramelizing the onions builds a rich, jammy base that makes this recipe completely work. It turns standard beef broth into an incredibly savory gravy that tastes like it cooked all day. Plus, everything finishes under a thick blanket of bubbly, melted Gruyere. Grab some crusty bread—you are going to need it to wipe the pan clean.
Why You'll Love This Recipe
It delivers all the rich, comforting flavors of a slow-cooked French onion soup in a practical skillet meal.
Ingredients
Meatballs
- 1 lb ground beef
- 1/3 cup breadcrumbs
- 1 large egg
- 2 cloves garlic (minced)
- 1 tsp Worcestershire sauce
- 1/2 tsp kosher salt
- 1/2 tsp black pepper
- 1 tbsp olive oil
French onion sauce
- 2 large yellow onions (thinly sliced)
- 2 tbsp butter
- 1 tbsp all-purpose flour
- 2 cups beef broth
- 1 tsp thyme
- 1 cup shredded gruyere or mozzarella
- 1 tbsp fresh parsley (optional)
Ingredient Notes
Beef broth
Since the broth forms the entire base of the gravy, grab a good quality one. It really makes a difference in the final taste.
Equipment
Large skillet
A heavy-bottomed or cast iron skillet works best for browning.
Mixing bowl
Tongs
Instructions
Make meatballs
Toss the ground beef, breadcrumbs, egg, garlic, Worcestershire sauce, salt, and pepper into a mixing bowl. Gently mix everything together with your hands until just combined—overmixing makes tough meatballs. Roll the mixture into roughly golf ball-sized portions.
Brown the beef
Heat your olive oil in a large skillet over medium-high heat. Drop the meatballs in and sear them until they develop a nice brown crust on all sides. They don't need to be fully cooked through yet. Pull them out, set them on a plate, and leave all those savory brown bits right there in the pan.
Caramelize the onions
Melt the butter in that same skillet. Toss in your thinly sliced yellow onions and drop the heat down to medium. Cook them for about 15 to 20 minutes, stirring occasionally. You want them completely soft, sticky, and deeply golden brown.
Make the gravy
Sprinkle the flour directly over the softened onions and stir for a minute to cook off the raw flour flavor. Slowly pour in the beef broth while stirring constantly, then mix in the thyme. Let the whole pan simmer until the liquid starts thickening into a glossy gravy.
Simmer together
Slide the meatballs back into the skillet, letting them soak up that rich onion sauce. Let it simmer gently until the meatballs are completely cooked through to a safe internal temperature of 160°F.
Melt the cheese
Sprinkle your shredded cheese in a heavy, even layer right over the top of the meatballs and gravy. Cover the skillet with a lid for about two minutes until the cheese is totally melted and bubbly. Finish with a scatter of fresh parsley if you like, and serve immediately.
Common Mistakes to Avoid
Rushing the onions
Don't crank the heat to cook the onions faster. Cooking them low and slow is what pulls out their natural sweetness and builds a proper flavor base.
Tips
- Don't skip the browning step! Searing the meatballs first leaves flavor on the bottom of the pan that seasons the entire gravy.
- Slice your onions relatively uniformly so they caramelize at the exact same rate.
Substitutions
- Cheese swaps: Swiss, provolone, mozzarella, or a sharp white cheddar all melt beautifully here.
- Meat swaps: Ground turkey or chicken works fine—just make sure they hit 165°F internally for food safety.
- Veggie additions: Toss a handful of sliced mushrooms in with the onions halfway through for an earthier gravy.
What to Serve With It
Serve this heavily ladled over mashed potatoes, egg noodles, or a big scoop of white rice.
Storage
**Refrigerator**
Store any leftovers in an airtight container in the fridge for up to 3 days.
**Reheating**
Warm them gently on the stovetop or in the microwave. The gravy thickens quite a bit when cold, so you will likely need to add a splash of beef broth or water to loosen it back up.
**Best Texture**
To get the cheese nicely gooey again without it turning rubbery, pop the skillet into the oven at 350°F until heated through.
Nutrition
- Serving Size
- 1 bowl
- Calories
- 540
- Protein
- 35g
- Carbohydrates
- 22g
- Fat
- 36g
- Fiber
- 3g
- Sugar
- 7g
- Sodium
- 1050mg
FAQ
Can I make Cheesy French Onion Meatballs ahead of time?
Yes, absolutely. You can make the meatballs and the gravy entirely ahead of time and keep them in the fridge. When you are ready to eat, just reheat everything on the stove until simmering, then add your cheese on top.
What should I serve with this skillet?
You want something that can soak up the rich gravy. Mashed potatoes, buttered egg noodles, rice, or heavily toasted thick-cut bread are all great choices.
How do I know the meatballs are cooked?
The most reliable way is using a meat thermometer. They should hit an internal temperature of 160°F and have zero pink left in the center.
Recipe Card
Cheesy French Onion Meatballs
Tender beef meatballs simmered in a rich, savory onion gravy and topped with gooey melted cheese.
- Prep
- 20 min
- Cook
- 35 min
- Total
- 55 min
- Servings
- 4
- Category
- Dinner Recipes
- Cuisine
- French Inspired
- Difficulty
- Easy
- Cost
- Budget-friendly
Ingredients
Meatballs
- 1 lb ground beef
- 1/3 cup breadcrumbs
- 1 large egg
- 2 cloves garlic (minced)
- 1 tsp Worcestershire sauce
- 1/2 tsp kosher salt
- 1/2 tsp black pepper
- 1 tbsp olive oil
French onion sauce
- 2 large yellow onions (thinly sliced)
- 2 tbsp butter
- 1 tbsp all-purpose flour
- 2 cups beef broth
- 1 tsp thyme
- 1 cup shredded gruyere or mozzarella
- 1 tbsp fresh parsley (optional)
Instructions
- Make meatballs: Toss the ground beef, breadcrumbs, egg, garlic, Worcestershire sauce, salt, and pepper into a mixing bowl. Gently mix everything together with your hands until just combined—overmixing makes tough meatballs. Roll the mixture into roughly golf ball-sized portions.
- Brown the beef: Heat your olive oil in a large skillet over medium-high heat. Drop the meatballs in and sear them until they develop a nice brown crust on all sides. They don't need to be fully cooked through yet. Pull them out, set them on a plate, and leave all those savory brown bits right there in the pan.
- Caramelize the onions: Melt the butter in that same skillet. Toss in your thinly sliced yellow onions and drop the heat down to medium. Cook them for about 15 to 20 minutes, stirring occasionally. You want them completely soft, sticky, and deeply golden brown.
- Make the gravy: Sprinkle the flour directly over the softened onions and stir for a minute to cook off the raw flour flavor. Slowly pour in the beef broth while stirring constantly, then mix in the thyme. Let the whole pan simmer until the liquid starts thickening into a glossy gravy.
- Simmer together: Slide the meatballs back into the skillet, letting them soak up that rich onion sauce. Let it simmer gently until the meatballs are completely cooked through to a safe internal temperature of 160°F.
- Melt the cheese: Sprinkle your shredded cheese in a heavy, even layer right over the top of the meatballs and gravy. Cover the skillet with a lid for about two minutes until the cheese is totally melted and bubbly. Finish with a scatter of fresh parsley if you like, and serve immediately.
Reviews
Have you tried this recipe? Be the first to leave a review.



