Crockpot French Onion Meatballs with Cheesy Toasts
These crockpot French onion meatballs simmer in a deep, savory onion broth until tender, then get finished with crispy Gruyère toasts that soak up every bit of the rich liquid.

It’s the cozy dinner that fills the kitchen with that classic French onion soup smell, with almost no work.
Why I Keep Coming Back to These Meatballs
The meatballs end up so tender they almost fall apart, and the broth turns into this deep, sweet-savory onion jam-like liquid that coats everything.
A sheet pan of quick Gruyère toasts goes under the broiler at the end, and you scoop them right into the bowls to soak up all that juice.
It feels like a special Sunday supper, but the crockpot does the heavy lifting while you do something else.
Ingredients

- 3 large yellow onions (about 4 cups sliced thin): the base of the rich broth, they cook down to a jammy sweetness.
- 3 tbsp unsalted butter: for caramelizing the onions.
- 1 tsp granulated sugar: helps the onions brown without taking forever.
- 1 ½ tsp kosher salt, divided: ½ tsp for the onions, 1 tsp for the meatballs.
- ½ tsp black pepper: just enough to give the broth a little edge.
- 1 lb ground beef (80/20): the fat keeps the meatballs tender; leaner beef can dry out.
- ½ cup panko breadcrumbs: light and airy, so the meatballs don’t get heavy.
- 1 large egg: binds the meatball mixture.
- ¼ cup grated Parmesan cheese: adds a salty, nutty note right inside the meatballs.
- 2 garlic cloves, minced: use fresh for the best flavor.
- 1 tbsp Worcestershire sauce: deepens the beefiness.
- 2 tbsp olive oil: for browning the meatballs.
- ½ cup dry white wine: you can swap in extra beef broth if you don’t keep wine around.
- 2 cups beef broth: use a good one, it carries the whole dish.
- 2 sprigs fresh thyme (or ½ tsp dried): tuck them in whole and pull the stems out later.
- 1 bay leaf: just one, for a subtle earthy layer.
- 8 baguette slices (½ inch thick): the vehicle for all that melty cheese.
- 2 tbsp melted butter: brushed on the bread before broiling.
- 1 cup shredded Gruyère cheese: it melts into those classic nutty, stretchy puddles.
Variations / Substitutions
- Ground turkey or chicken: the meatballs will be leaner; add 1 tbsp of olive oil to the meat mix so they stay moist.
- Dairy-free: use a plant-based butter for the onions, skip the Parmesan in the meatballs (or use a dairy-free alternative), and top the toasts with your favorite meltable vegan cheese.
- Gluten-free: swap in gluten-free panko and serve with gluten-free bread or just ladle the meatballs and broth over roasted potatoes instead.
- Fresh herb swap: rosemary works in place of thyme, but use half the amount, it’s stronger.
- Red wine: you can use a dry red instead of white; the broth will have a bolder, deeper fruitiness.
For a quicker skillet version, try our French Onion Salisbury Steaks.
How To Make Crockpot French Onion Meatballs
Step 1: Caramelize the Onions

Set your crockpot to low so it’s warming up while you cook the onions. Melt 3 tbsp butter in a large skillet over medium heat, then add the sliced onions, 1 tsp sugar, and ½ tsp salt. Cook, stirring every few minutes, for 15 to 20 minutes until the onions turn a deep golden brown and shrink way down.
You’ll know they’re ready when they go from pale and crisp to soft, jammy, and sweet-smelling. Scrape them into the bottom of the crockpot.
Step 2: Form and Brown the Meatballs

In a large bowl, combine the 1 lb ground beef, ½ cup panko, 1 egg, ¼ cup grated Parmesan, 2 minced garlic cloves, 1 tbsp Worcestershire sauce, 1 tsp salt, and ½ tsp black pepper. Mix just until everything comes together, then shape into 16 meatballs, each about 1 ½ inches across.
Wipe out the skillet, add 2 tbsp olive oil, and heat over medium-high. Brown the meatballs in two batches, turning them every couple of minutes. You’re looking for a deep sear on two or three sides, about 4 minutes total per batch. They’ll release from the pan easily when a good crust has formed.
Step 3: Build the Broth and Slow Cook

Nestle all the browned meatballs on top of the onions in the crockpot. Pour the ½ cup white wine and 2 cups beef broth into the hot skillet, scraping up every browned bit from the bottom. Add the thyme sprigs and bay leaf, then pour that liquid right over the meatballs.
Cover and cook on low for 4 to 5 hours, or on high for 2 to 3 hours. The meatballs should be cooked through and the onions should be nearly melted into the broth. Your kitchen will smell like a French bistro about an hour before it’s done.
Step 4: Broil the Gruyère Toasts

When the meatballs are almost ready, preheat your broiler and line a sheet pan with foil. Brush both sides of the 8 baguette slices with the 2 tbsp melted butter and arrange them in a single layer. Pile the shredded Gruyère evenly on top of each slice.
Broil for 2 to 3 minutes, watching the whole time. Pull the pan the second the cheese is bubbling and the edges of the bread turn deep golden. They go from perfect to burnt in seconds, so don’t walk away.
Step 5: Ladle and Serve

Ladle the meatballs and a generous scoop of the onion broth into shallow bowls. Float a cheese toast or two right on top, or serve them on the side for dunking.
The toasts will start soaking up that savory broth, and the cheese gets all stretchy and rich. Serve right away while everything is hot.
Tips for the Best Crockpot Meatballs
- Grate your own Gruyère instead of using pre-shredded. The pre-shredded stuff has anti-caking agents that keep it from melting into those smooth, lacy edges.
- Don’t skip browning the meatballs. It builds a layer of roasty flavor in the broth that you can’t get any other way, and it helps them hold their shape during the long cook.
- If you like a thicker, more gravy-like broth, whisk 1 tbsp cornstarch with 2 tbsp cold water and stir it into the crockpot during the last 15 minutes of cooking on high.
- The toasts stay crisp for about five minutes once they hit the broth, so broil them right when you’re ready to eat. If you have leftover toasts, store them separately or they’ll turn soggy.
Cook times by your slow cooker setting:
| Setting | Time |
|---|---|
| Low | 4 to 5 hours |
| High | 2 to 3 hours |
Storing Leftovers
- Refrigerate: The meatballs and broth keep well in an airtight container for up to 3 days. The onions actually taste even better the next day.
- Reheating: Reheat gently on the stovetop over medium-low, or in the microwave in 1-minute bursts. The meatballs will stay tender as long as you don’t boil the broth.
- Make fresh toasts: The cheesy toasts are best made right before serving, so I don’t recommend storing them. Just keep a few baguette slices and extra Gruyère on hand for the next meal.
What To Serve With Crockpot French Onion Meatballs
A simple green salad with a sharp, lemony vinaigrette cuts through the richness of the broth and cheese. If you want something heartier, roasted asparagus or steamed green beans work because their slight bitterness balances the sweet onions. For a true bistro feel, add a pile of thick-cut oven fries on the side to drag through every last drop of broth.
Frequently Asked Questions
Can I use frozen meatballs instead of making them from scratch?
Yes. Add about 20 to 24 frozen homestyle meatballs straight from the freezer right after the onions, pour the broth over, and cook on low for 5 to 6 hours or high for 3 to 4 hours. They won’t have the same fresh, tender texture but the dish still works.
Can I make this ahead for a party?
The meatballs and broth can be made a day ahead, chilled, and reheated gently on the stovetop or in the crockpot on low. I’d wait to make the cheese toasts right before serving so they’re crisp and bubbly.
What’s a good wine to use for the broth?
A dry white like Sauvignon Blanc or Pinot Grigio keeps the broth bright without taking over. If you only have red, a dry Cabernet or Merlot will work; just be ready for a deeper, slightly more rustic flavor.

Crockpot French Onion Meatballs Recipe
Ingredients
Method
- In a skillet, melt the butter, add onions, sugar, and ½ tsp salt; cook 15-20 minutes until deep golden. Transfer to the crockpot.
- Mix beef, panko, egg, Parmesan, garlic, Worcestershire, 1 tsp salt, and pepper. Shape into 16 meatballs. Heat oil in the skillet and brown meatballs in batches, about 4 minutes per batch. Place them on top of the onions.
- Deglaze the skillet with wine and beef broth, scraping up bits; pour over meatballs. Add thyme and bay leaf. Cook on low 4-5 hours or on high 2-3 hours.
- Near the end of cook time, preheat broiler. Brush baguette slices with melted butter, top with Gruyère, and broil 2-3 minutes until bubbly and edges are crisp.
- Ladle meatballs and broth into bowls and top with cheese toasts. Serve right away.
