French Onion Chicken Meatballs Recipe
The first time I tried to make French Onion Chicken Meatballs Recipe, I was trying to impress my in-laws. I thought caramelizing onions was just cooking them fast on high heat. Let’s just say I served them what looked like burnt little meatballs in a bitter, blackened sauce. My father-in-law, god bless him, chewed for what felt like five minutes on one bite and said, “It’s… very unique.” I was so embarrassed, but it made me determined to get it right. Now it’s our go-to comfort food, and I’ve made every mistake so you don’t have to.
Recipe Card
| Recipe Title | French Onion Chicken Meatballs Recipe |
|---|---|
| Servings | 4 |
| Prep Time | 25 minutes |
| Cooking Time | 50 minutes |
| Calories | Approx. 420 |
Ingredients
- 2 large yellow onions, thinly sliced
- 1 lb ground chicken
- 1/2 cup panko breadcrumbs
- 1/3 cup grated parmesan cheese
- 1 large egg
- 2 cloves garlic, minced
- 1 tsp Worcestershire sauce
- 2 tbsp olive oil
- 2 tbsp butter
- 1 tsp fresh thyme leaves
- 1 cup beef broth
- 1/2 cup dry white wine (like Sauvignon Blanc)
- 1 cup shredded Gruyere cheese
- Salt and black pepper to taste
I once used pre-shredded Gruyere from a bag and it just didn’t melt right, it got kinda clumpy. I learned the hard way that you gotta shred it yourself from a block for that super smooth, melty goodness. And for the love of all that is holy, do not skip the white wine. I tried it with just broth once and it was so flat, it totally lacked that deep flavor punch.
Directions
- First, caramelize your onions. In a large, oven-safe skillet, melt the butter and olive oil over medium-low heat.
- Add the sliced onions and a big pinch of salt. Cook, stirring every few minutes, for about 30-35 minutes until they’re deeply golden brown and sweet.
- While the onions cook, make the meatball mixture. In a large bowl, combine the ground chicken, panko, parmesan, egg, minced garlic, Worcestershire sauce, and a good pinch of salt and pepper.
- Use your hands to mix it all together until just combined. Don’t overmix or your meatballs will be tough.
- Shape the mixture into about 16-18 small meatballs, roughly 1.5 inches in size.
- Once the onions are caramelized, push them to the sides of the skillet and increase the heat to medium.
- Add the meatballs to the center of the skillet and brown them on all sides, about 6-8 minutes total. They don’t need to be cooked through yet.
- Pour in the white wine to deglaze the pan, scraping up all the browned bits from the bottom. Let it simmer for 2 minutes.
- Add the beef broth and thyme leaves, stirring everything together gently.
- Let it all simmer together for about 5 minutes so the flavors can meld.
- Preheat your oven’s broiler on high.
- Turn off the stove heat and sprinkle the shredded Gruyere cheese evenly over the top of the meatballs and sauce.
- Transfer the whole skillet to the oven and broil for 2-4 minutes, watching closely, until the cheese is bubbly and golden brown.
- Carefully remove from the oven (the handle will be HOT!), let it sit for 5 minutes, then serve.
The step I mess up the most is browning the meatballs. I get impatient and try to move them too soon, and then they tear and stick to the pan. You gotta let them get a good crust before you try to turn them, it makes all the difference. And that oven handle? I’ve burned my hand more times than I can count. I finally just started leaving an oven mitt on it as a reminder.
This dish is my ultimate comfort food, especially on a rainy Sunday. It feels fancy but it’s really just meatballs and onions, you know? The biggest mistake I see people make is rushing the onions. That 30 minutes is non-negotiable for getting that sweet, deep French onion soup flavor. I love that it’s mostly a one-pot meal, which means less cleanup for me. And the leftovers are somehow even better the next day, the flavors just get more cozy.
My kids used to turn their noses up at the “slimy onions,” but now they fight over who gets the last meatball. I serve it over egg noodles or with a big chunk of crusty bread to soak up all that amazing sauce. It’s not the healthiest thing in the world, but it’s a family favorite that feels like a hug. I wouldn’t change much, but sometimes I add a splash of heavy cream at the end for an extra rich sauce.
For meal prep, I’ll make a double batch of the meatballs and freeze them before the broiling step. Then on a busy night, I can just thaw them, pop them in a skillet with a little broth, top with cheese, and broil. It saves my sanity on weeknights. It’s one of those easy dinner recipes that looks like you put in way more effort than you actually did.
Nutrition Info (per serving)
| Calories | Carbs | Fat | Protein |
|---|---|---|---|
| 420 | 12g | 28g | 30g |
Honestly, the nutrition isn’t as bad as you’d think for such a cozy dish. Using chicken instead of beef helps a lot with the fat content. I’ve tried a healthier swap with ground turkey, but it can be a bit dry. If you’re watching carbs, serving it over zucchini noodles or just on its own is fantastic. It’s pretty balanced as is, so I don’t stress about it too much.
Ingredient Swaps
| Ingredient | Substitution |
|---|---|
| Gruyere Cheese | Swiss, Provolone, or Mozzarella |
| White Wine | Additional Beef Broth |
| Ground Chicken | Ground Turkey or lean Ground Beef |
| Panko Breadcrumbs | Regular breadcrumbs or crushed crackers |
I’ve tried almost all of these swaps. The cheese ones work fine, though you lose a little of that nutty Gruyere flavor. Ground turkey works, but you gotta be careful not to overcook it. The one swap that really failed was using almond flour instead of panko to make it low-carb. The meatballs just fell apart in the sauce and it was a soupy mess. Stick with the breadcrumbs for structure.
Tips
- Use a mix of butter and oil for the onions. The oil prevents the butter from burning during the long cook time.
- Don’t crowd the meatballs when browning them. Cook them in two batches if your skillet is small.
- Let the meatball mixture sit in the fridge for 15 minutes before shaping. It makes them so much easier to roll.
- Get a good, dark fond (the browned bits) on the bottom of the pan before deglazing. That’s pure flavor.
The tip about not crowding the pan was a lesson I learned the hard way. I was in a rush one night and shoved all the meatballs in at once. They steamed instead of browned and just fell apart into a chicken-onion mush. It was so sad. I had to start completely over. Now I’m patient, and it’s worth it for that perfect sear.
FAQ
Can I make these ahead of time?
Oh totally. You can assemble the meatballs and keep them in the fridge for a day, or freeze them raw for up to 3 months. The caramelized onions can also be made a day or two ahead. Just assemble and broil when you’re ready to eat.
My sauce is too thin, what did I do wrong?
This happens to me if I’m impatient and don’t let the sauce reduce enough after adding the broth. Just let it simmer for a few extra minutes with the meatballs in it, and it’ll thicken up nicely. You can also mix a teaspoon of cornstarch with a tablespoon of cold water and stir it in to help it along.
What should I serve with this?
My absolute favorite is over a big pile of mashed potatoes. It’s so good. But egg noodles, rice, or just a big piece of crusty bread to dunk in the sauce are all winners. A simple green salad on the side helps cut through the richness.
That’s everything I know about making French Onion Chicken Meatballs Recipe! Hope you give it a try, and if you mess it up, you’re in good company—I do it all the time. Let me know how it turns out!
French Onion Chicken Meatballs
Tender chicken meatballs smothered in deeply caramelized onions and rich Gruyere cheese, creating the ultimate comfort food that tastes like French onion soup in meatball form.
Ingredients
- 2 large yellow onions, thinly sliced
- 1 lb ground chicken
- 1/2 cup panko breadcrumbs
- 1/3 cup grated parmesan cheese
- 1 large egg
- 2 cloves garlic, minced
- 1 tsp Worcestershire sauce
- 2 tbsp olive oil
- 2 tbsp butter
- 1 tsp fresh thyme leaves
- 1 cup beef broth
- 1/2 cup dry white wine (like Sauvignon Blanc)
- 1 cup shredded Gruyere cheese
- 1 tsp salt
- 1/2 tsp black pepper
Instructions
-
Caramelize onions: In large oven-safe skillet, melt butter and olive oil over medium-low heat. Add sliced onions and salt. Cook 30-35 minutes, stirring occasionally, until deeply golden brown.
-
Prepare meatball mixture: While onions cook, combine ground chicken, panko, parmesan, egg, garlic, Worcestershire sauce, salt and pepper in large bowl. Mix gently with hands until just combined.
-
Shape meatballs: Form mixture into 16-18 meatballs, about 1.5 inches each. Refrigerate 15 minutes for easier handling.
-
Brown meatballs: When onions are caramelized, push to sides of skillet. Increase heat to medium. Add meatballs to center and brown on all sides, 6-8 minutes total (not cooked through).
-
Deglaze pan: Pour in white wine, scraping up browned bits from bottom. Simmer 2 minutes.
-
Add liquids: Pour in beef broth and add thyme leaves. Stir everything together gently. Simmer 5 minutes to meld flavors.
-
Preheat broiler: Set oven broiler to high.
-
Add cheese: Turn off stove heat. Sprinkle shredded Gruyere evenly over meatballs and sauce.
-
Broil: Transfer skillet to oven. Broil 2-4 minutes until cheese is bubbly and golden brown (watch closely).
-
Rest and serve: Carefully remove from oven (handle will be hot!). Let rest 5 minutes before serving over egg noodles, mashed potatoes, or with crusty bread.
Nutrition (Per Serving)



