French onion potatoes bring everything people love about the classic soup into a pan of crispy, cheesy potatoes: caramelized onions, savory broth, melted Gruyere, and edges that stay golden under all that topping. The potatoes keep their bite instead of turning soft, and the onions cook down until they taste rich and sweet without needing hours on the stove. It’s the kind of side dish that disappears fast because it lands between comfort food and something that feels a little special.
What makes this version work is the separation of jobs. The potatoes roast first so they can actually brown, and the onions cook slowly in butter until they turn jammy before any broth goes in. That broth and Worcestershire mixture concentrates into the onions instead of watering them down, and the Gruyere melts into the crevices instead of sitting on top like a blanket. You get contrast in every bite: crisp, soft, sweet, salty, and just enough tang from the cheese.
Below, I’ve included the small timing details that keep the potatoes from steaming under the onions, plus a few smart swaps if you need to adjust for what’s in your kitchen. The final few minutes in the oven matter here, and they’re what pull the whole dish together.
The onions turned jammy and sweet, and the potatoes stayed crisp underneath instead of getting soggy. The Gruyere on top bubbled up exactly like I hoped.
Save these French onion potatoes for the nights when you want crispy roasted potatoes with jammy onions and melted Gruyere.
The Reason the Potatoes Stay Crisp Under All That Onion
The biggest mistake with dishes like this is piling everything together before the potatoes have enough heat on them. Once roasted potatoes sit under wet onions and melted cheese, any surface crispness disappears fast. Starting them in an oven-safe skillet at 425F gives the cut sides time to brown before the toppings go on, and that high heat is what keeps the finished dish from tasting soft and heavy.
The other thing that matters is moisture control in the onion mixture. The onions need to cook down until they’re deep gold and nearly spreadable before the broth goes in, because that broth is there to concentrate flavor, not to create extra liquid. If the onions still look wet when they hit the potatoes, the cheese melts into a puddle instead of forming that bubbling, savory top.
What Each Ingredient Is Doing in This French Onion Potatoes Skillet

- Baby potatoes — Their thin skins and small size give you crisp edges without extra prep. Cut them in half so the cut side can brown directly against the skillet.
- Olive oil — This coats the potatoes evenly and helps the surface roast instead of drying out. A neutral oil works in a pinch, but olive oil gives the best flavor with the onions and cheese.
- Butter — This is what makes the onions taste rich and round, and it’s worth using real butter here. Margarine won’t give the same depth or the same silky finish.
- Yellow onions — These are the backbone of the dish. They cook into sweetness and body; red onions or sweet onions will change the flavor, but yellow onions give the most classic French onion taste.
- Thyme, beef broth, and Worcestershire — Thyme gives the dish its French-inspired finish, while the broth and Worcestershire add savoriness and that dark, cooked-down edge. If you need a substitute for Worcestershire, use soy sauce plus a tiny splash of vinegar.
- Gruyere — This is the cheese that makes the whole skillet taste like French onion soup. It melts smoothly and adds nuttiness without turning greasy; Swiss cheese is the closest backup if you can’t find it.
Building the Layers So Nothing Turns Soggy
Roasting the potatoes first
Toss the halved potatoes with olive oil, salt, and pepper in an oven-safe skillet, then roast them until the cut sides are golden and the skins look a little wrinkled. That first roast does the heavy lifting for texture, and it’s the step people skip when they want to save time. If the potatoes are pale when you move on, they’ll never develop that crisp base under the onions.
Slow-cooking the onions until they collapse
Cook the onions in butter over medium-low heat and give them time to soften, then deepen, then turn jammy. Stir them often enough to keep them from catching, but not so often that they steam in their own liquid. If the pan looks dry before they’re browned, lower the heat and let them go longer; rushing this stage leaves you with sharp onion flavor instead of the sweet, savory layer this dish needs.
Reducing the broth before the cheese goes on
When the thyme, broth, and Worcestershire go into the onions, simmer until the liquid disappears into the onions instead of pooling in the pan. That brief reduction keeps the topping concentrated and prevents the potatoes from getting watered down. Spoon the mixture over the potatoes, add the Gruyere, and bake just until the cheese is melted and bubbling around the edges.
How to Adapt These French Onion Potatoes Without Losing the Point
Make it vegetarian
Swap the beef broth for a rich vegetable broth and add a small splash of soy sauce or tamari for depth. You’ll lose a little of the beefy background note, but the onions and Gruyere still carry the dish nicely.
Use Swiss instead of Gruyere
Swiss cheese melts well and gives you a similar nutty profile if Gruyere isn’t available. The flavor is a little milder, so the onions do more of the talking, but the texture still comes out right.
Make it dairy-free
Use a good dairy-free butter for the onions and skip the cheese or finish with a plant-based melting cheese. You won’t get the same classic French onion finish, but the roasted potatoes and jammy onions still work as a savory side.
Store and reheat for later
- Refrigerator: Keep leftovers covered for up to 4 days. The potatoes soften a bit, but the flavor holds up well.
- Freezer: This dish doesn’t freeze well once the cheese is melted and the potatoes are roasted; the texture turns grainy and soft.
- Reheating: Warm it in a 400F oven until the cheese loosens and the potatoes crisp back up at the edges. Microwaving makes the potatoes soggy and the onions loose their best texture.
Answers to the Questions Worth Asking

French Onion Potatoes
Ingredients
Equipment
Method
- Preheat the oven to 425F, then toss the baby potatoes with olive oil, salt, and black pepper in an oven-safe cast iron skillet for even coating.
- Roast at 425F for 30-35 minutes, until the potatoes are golden and crispy, then leave them in the skillet for the next step.
- In the same skillet, cook the yellow onions with butter over medium-low heat for 25 minutes until deep golden and jammy, stirring occasionally.
- Stir in fresh thyme leaves, beef broth, and Worcestershire sauce, then simmer until the liquid is absorbed and the onions look glossy.
- Spoon the jammy onions over the roasted potatoes, spreading them evenly so the topping covers the surface.
- Bake at 425F for 8-10 minutes, until the Gruyere is melted and bubbling, then serve right away.