French Onion Potatoes hit the table with everything people love about a great side dish: crisp-edged potatoes, sweet onions cooked down until they’re soft and jammy, and a blanket of melted Gruyere that turns the whole pan into something people keep sneaking bites from before dinner starts. The potatoes stay sturdy underneath, so every forkful gives you crunch first, then that rich onion-and-cheese finish.
The trick here is treating the potatoes and onions like two separate jobs, not one rushed skillet situation. The potatoes need enough oven heat to brown properly, while the onions need patience on the stove so they turn deep gold instead of burning or steaming. A little broth and Worcestershire pull the onions into classic French onion territory without making the pan watery.
Below, I’ll show you how to keep the potatoes crisp under all that cheese, which onion step matters most, and the small swap that makes this dish easier to adapt for different dinners.
The onions went jammy instead of watery, and the Gruyere melted into that browned potato layer without making it soggy. I served it with roast chicken and there wasn’t a spoonful left.
Save these French Onion Potatoes for the nights when you want crispy potatoes, jammy onions, and bubbling Gruyere in one skillet.
The Trick to Keeping the Potatoes Crisp Under All Those Onions
The biggest risk with a dish like this is ending up with soft potatoes under a heavy onion topping. That happens when the potatoes don’t get enough space, enough heat, or enough time to dry out and brown before the onions go on. An oven-safe skillet helps because you build the whole dish in one pan, but the first roast still needs to do the real work.
Roast the potatoes until they’re golden on the cut sides and crisp at the edges. If they still look pale, they’ll soften once the onions and cheese get added. The onions should be fully cooked and most of their moisture driven off before they go over the potatoes, or the whole skillet turns damp.
What Each Ingredient Is Actually Doing in This Dish

- Baby potatoes — Their small size gives you more browned surface area, which is what holds up under the onions and cheese. Halving them is enough; cutting them smaller makes them too delicate for the final bake.
- Yellow onions — These are the backbone of the dish. They cook down sweet and soft, and no substitute gives quite the same jammy finish, though sweet onions will work if that’s what you have.
- Gruyere — This is the cheese that gives the dish its French onion feel. It melts smoothly and browns nicely; Swiss cheese can stand in, but the flavor will be milder.
- Beef broth and Worcestershire sauce — These deepen the onion mixture and give it that savory edge without making it soupy. If you need a vegetarian version, use vegetable broth and a small splash of soy sauce instead of Worcestershire.
- Fresh thyme — It keeps the onions tasting layered instead of one-note. Dried thyme works in a pinch, but use less because it’s more concentrated.
Building the Skillet So Nothing Turns Soggy
Roasting the Potatoes First
Toss the potatoes with olive oil, salt, and pepper, then spread them in the oven-safe skillet in a single layer. Crowding is what causes steaming, and steaming is the enemy here. You want the cut sides to take on color before anything else touches them. After 30 to 35 minutes, the edges should look deeply golden and the centers should be tender when pierced.
Cooking the Onions Until They Turn Jammy
Cook the onions slowly in butter over medium-low heat. If the heat is too high, they’ll brown unevenly on the outside before the inside softens, and you’ll miss that sweet, spreadable texture. After about 25 minutes, they should be deep gold and reduced enough that they sit in a thick mound instead of a wet pile. Stir in the thyme, broth, and Worcestershire, then keep cooking until the liquid is mostly absorbed.
Finishing with Cheese and Heat
Spoon the onions over the potatoes and scatter the Gruyere on top. Bake just until the cheese melts and bubbles, about 8 to 10 minutes. Don’t leave it in long enough to dry out the onions or overbake the potatoes. You’re looking for a hot skillet with bronzed cheese and onions that still look glossy.
How to Adapt These French Onion Potatoes for Different Dinners
Vegetarian version
Swap the beef broth for vegetable broth and replace the Worcestershire with a small splash of soy sauce or tamari. You’ll lose a little of the classic French onion depth, but the skillet still gets that savory, caramelized finish.
Dairy-free version
Use olive oil instead of butter and leave off the Gruyere, then finish with extra thyme and a pinch of flaky salt after baking. It won’t have the same French onion casserole feel, but the potatoes and onions still bring plenty of richness on their own.
Swap the Gruyere
Swiss, Emmental, or even a mild provolone will melt well if Gruyere isn’t in the fridge. The flavor gets a little softer and less nutty, so the onions carry more of the dish.
Storage and Reheating
- Refrigerator: Store leftovers in an airtight container for up to 4 days. The potatoes soften as they sit, but the flavor holds up well.
- Freezer: Freezing isn’t ideal. The onions and potatoes both change texture after thawing, and the cheese can turn a little grainy.
- Reheating: Warm in a 375F oven until hot, uncovered, so the potatoes can re-crisp instead of steaming. The microwave works in a pinch, but it softens the edges and dulls the texture.
Answers to the Questions Worth Asking

French Onion Potatoes
Ingredients
Equipment
Method
- Preheat the oven to 425°F and toss the baby potatoes with olive oil, salt, and black pepper in an oven-safe cast iron skillet.
- Roast for 30-35 minutes, until the potatoes are golden and crispy.
- In the same skillet, cook the yellow 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, spreading into an even layer.
- Top with shredded Gruyere and bake for 8-10 minutes, until the cheese is melted and bubbly.