French onion potatoes hit that sweet spot between cozy and polished: crisp-edged roasted potatoes under a layer of slow-cooked onions and bubbling Gruyere. You get the deep, savory flavor of French onion soup, but with enough body to serve as a side dish that people actually go back for twice.
The key is keeping the potatoes and onions on separate tracks until the very end. Roast the potatoes first so they get real color and stay firm under the toppings, then cook the onions low and slow until they turn jammy instead of sharp. A splash of beef broth and Worcestershire gives the onions that classic French onion depth without making the dish watery.
Below, I’ll walk through the one step that keeps the potatoes crisp, the ingredient swaps that still make sense, and a few ways to adapt this for different meals.
The onions turned jammy and the potatoes stayed crisp under the cheese, which never happens when I make layered sides. My husband kept sneaking forkfuls straight from the skillet.
Save these French onion potatoes for the nights when you want crispy potatoes, jammy onions, and melted Gruyere in one skillet.
The Trick to Keeping the Potatoes Crisp Under All Those Onions
The mistake with a dish like this is piling on the toppings before the potatoes have a chance to set their crust. Once the onions and cheese go on, steam gets trapped fast, and that’s how roasted potatoes turn soft underneath. The fix is simple: roast the potatoes until the cut sides are deeply golden and release easily from the pan before you add anything on top.
Using an oven-safe skillet helps because you can move from roasting to topping without losing heat. Don’t stir the potatoes too often in the oven either. Let them sit in contact with the hot pan so they brown instead of just warming through.
What Each Ingredient Is Doing in This Dish

- Baby potatoes — Their small size gives you plenty of browned surface area, and halving them creates flat sides that caramelize well. Yukon golds also work if you cut them into even chunks.
- Yellow onions — These are the backbone of the dish. They cook down into a sweet, savory layer that tastes close to French onion soup; don’t swap in red onions unless you want a sharper finish.
- Gruyere — This cheese melts smoothly and brings the nutty, classic French onion flavor. Swiss cheese can stand in, but it won’t be quite as rich or aromatic.
- Beef broth and Worcestershire — Together they deepen the onions without making the topping heavy. If you need a vegetarian version, use a good vegetable broth and a few drops of soy sauce in place of Worcestershire for similar depth.
- Fresh thyme — It lifts the whole skillet and keeps the dish from tasting one-note. Dried thyme works in a pinch, but use less because it reads more aggressively once heated.
- Butter and olive oil — The oil helps the potatoes roast, while the butter gives the onions their round, rich base. Don’t use only butter for the potatoes; it browns too fast before the potatoes fully crisp.
Building the Skillet in the Right Order
Roasting the Potatoes First
Toss the halved potatoes with oil, salt, and pepper, then spread them cut-side down in a hot oven-safe skillet. You want them to sizzle as they hit the pan. Roast until the bottoms are deeply golden and the edges look crisp, not pale and dry. If they’re still soft when you add the onions, the finished dish will go floppy under the cheese.
Cooking the Onions Down to Jam
Cook the sliced onions in butter over medium-low heat and give them time. They should go from sharp and stiff to soft, then glossy, then deeply golden and almost spreadable. If the heat is too high, they’ll brown on the outside before they collapse, and you’ll miss that slow-cooked sweetness that makes the whole recipe work.
Finishing with Cheese and Heat
Stir the thyme, broth, and Worcestershire into the onions and simmer until the liquid disappears into the pan. Spoon the onions over the potatoes, then scatter the Gruyere over the top and bake just until melted and bubbling. Pull it when the cheese is fully loose and the edges are starting to color; if it goes too far, the cheese can stiffen before you get it to the table.
How to Adapt These Potatoes for Different Tables
Make it vegetarian without losing depth
Use vegetable broth instead of beef broth and swap in a splash of soy sauce or tamari for the Worcestershire. You’ll lose a little of the classic French onion backbone, but the onions still taste rich and savory, especially once the Gruyere melts over the top.
Use Swiss or fontina instead of Gruyere
Swiss gives you a similar nutty melt, while fontina turns a little silkier and softer. Both work, but Gruyere is the most faithful to the French onion flavor, so expect a gentler, less aromatic finish if you swap it out.
Skip the skillet and make it dairy-light
Roast the potatoes on a sheet pan, cook the onions in olive oil instead of butter, and leave off the cheese for a lighter side. You won’t get the same rich finish, but the onions still carry the dish if you season them well and keep roasting until the potatoes are deeply crisp.
Turn it into a more substantial side
Add a handful of sautéed mushrooms with the onions or serve the finished potatoes under sliced steak, roast chicken, or pork chops. The sweet onions and Gruyere give you enough richness to hold their own, but the dish also works well as a base for something meaty.
Storage and Reheating
- Refrigerator: Store leftovers in an airtight container for up to 4 days. The potatoes soften a bit, but the flavor gets even deeper overnight.
- Freezer: Freezing isn’t ideal. The potatoes can turn mealy and the cheese changes texture once thawed, so this is best made fresh.
- Reheating: Warm leftovers in a 375F oven or air fryer until the potatoes are hot and the cheese loosens again. The mistake is microwaving too long, which steams the potatoes and turns the onions dull.
Questions I Get Asked About This Recipe

French Onion Potatoes
Ingredients
Equipment
Method
- Preheat the oven to 425°F, then toss the potatoes with olive oil, salt, and black pepper in an oven-safe cast iron skillet.
- Roast the potatoes for 30-35 minutes, until golden and crispy.
- Meanwhile, cook the onions in butter over medium-low heat for 25 minutes, stirring occasionally until deep golden and jammy.
- Stir in the fresh thyme leaves, beef broth, and Worcestershire sauce, then simmer until the liquid is absorbed.
- Spoon the jammy onions over the roasted potatoes.
- Top with the shredded Gruyere, then bake for 8-10 minutes at 425°F until the cheese is melted and bubbly.


