Vegan Scalloped Potatoes Recipe
Scalloped potatoes were never a cheese dish, and the lemon juice most vegan versions use to fake one is the reason the slices come out of the oven still crunchy.
Jump To Recipe
The Christmas I Served Eleven People Crunchy Potatoes
I have made this dish badly more times than any other thing on this site. The worst was a Christmas where I had eleven people at the table and a tray of vegan scalloped potatoes that had been in the oven for an hour and forty minutes and were still, unmistakably, raw in the middle. I kept putting it back in. I blamed the oven, then the dish, then the potatoes.
It was none of those. I had followed a popular recipe that built its sauce around lemon juice and cider vinegar to get a cheesy tang, and acid is the one thing that will stop a potato softening no matter how long you cook it. I could have left that tray in overnight.
So this version is a bit of a reaction to that evening. It has no lemon, no vinegar and no mustard in it, and it does not pretend to be cheese. What it has instead is a proper white sauce and a stint on the stove before it ever sees the oven, which is the only way I have found to be genuinely sure the middle is cooked before the guests sit down. I have never had to apologize for it since.
The story
Scalloped Potatoes Were Never A Cheese Dish
The name has nothing to do with scallop shells. Food historians trace it to “collop”, an old English word for a slice, which also gives us the French escalope. A scalloped dish is one built out of thin slices, and the potatoes are the thing being named. Not a topping, not a sauce, not a crust. The cut.
That matters because it draws a line the modern internet has almost entirely rubbed out. Potatoes au gratin are a different dish, and the difference is not subtle: “au gratin” means “by grating”, and a gratin is defined by the browned crust of grated cheese or buttered breadcrumbs over the top. Traditional scalloped potatoes have neither. They are sliced potatoes, onion, cream or milk, salt and pepper, baked until the sauce sets around them.
Now search for a vegan version and count how many of the top results promise you something cheesy. Nearly all of them. They are making a vegan gratin and calling it scalloped potatoes, and in doing so they have handed themselves the single hardest problem in plant-based cooking. Convincing vegan cheese is genuinely difficult. A convincing white sauce is not difficult at all, and has not been for about a century.
The cost of chasing cheese is not just effort, it is acid. To get a savory tang that reads as cheese, those recipes reach for lemon juice, cider vinegar, sauerkraut brine or a heavy hand of Dijon, and often soaked cashews blended with all of the above. Acid in the sauce is the reason so many people report pulling a dish out after ninety minutes to find the potatoes still firm, which is a chemistry problem rather than a cooking one and is covered further down this page.
So this recipe goes back to what the dish actually is. Sliced potatoes, onion, a béchamel made with soy milk, and enough salt and savory depth to stand up without impersonating anything. Dropping the cheese requirement does not make it a lesser version of the vegan gratin. It makes it the dish the name refers to, and it removes the ingredient that was breaking it.
What to buy
Ingredient Notes
Yukon Gold potatoes
Waxy enough to hold a slice through a stovetop simmer and a 45 minute bake, starchy enough to shed the surface starch that thickens the sauce. Russets work and give a softer, more collapsed result where the layers blur into one another, which some people prefer; if you use them, cut the stovetop simmer to 7 minutes. Avoid small red or new potatoes, which stay so distinct that the dish never binds and you end up with sauce and coins rather than a slice you can lift.
Unsweetened soy milk
The best plant milk for a savory béchamel by a clear margin, because its protein content is close to dairy and gives the sauce body and a little browning on top. Read the carton twice: many milks labeled unsweetened still carry vanilla, which is unmistakable in a potato dish. Oat milk is the next best and thickens slightly more, so hold back a splash of it. Skip barista versions, which carry added oils and gums, and skip almond milk, which is too thin to make a sauce that coats.
Vegan butter, block style
Buy the kind sold in a wrapped block rather than a soft spread in a tub. Spreads run much higher in water, and a roux made with one seizes into a paste and then thins out instead of thickening. If all you have is a tub, use a neutral oil at the same volume instead, which behaves predictably even though you lose a little flavor.
White miso paste
This is doing the job the dairy used to do: salt, and the savory background that makes the sauce taste finished rather than beige. One tablespoon into three cups of sauce. Use white or shiro miso, not red, which is far stronger and turns the sauce a muddy tan. Whisk it in off the heat so it dissolves rather than sitting in grains. Miso is mildly acidic, but at this quantity it does not move the pH of the sauce anywhere near enough to affect the potatoes; a quarter cup of lemon juice does.
Nutritional yeast
Three tablespoons, and it is here for savoriness rather than to taste of cheese. On its own nutritional yeast tastes like nutritional yeast, and recipes that lean on it hard enough to fake cheddar end up tasting distinctly of the health food aisle. Used at this level alongside the miso, you notice its absence more than its presence.
Nutmeg
The traditional béchamel seasoning and worth grating fresh, because pre-ground nutmeg loses most of what makes it interesting within a few months of opening. A quarter teaspoon across the whole dish. You should not be able to identify it in the finished dish, only notice that the sauce tastes rounder.
What is deliberately not in here
No lemon juice, no vinegar, no Dijon mustard and no cashews. The first three are acids and acid keeps potato slices firm no matter how long they bake, which is explained in the troubleshooting section below. The cashews are simply unnecessary once the dish is not trying to be cheese, and leaving them out means no overnight soaking, no high-powered blender and a dish that is safe for a nut allergy.

Vegan Scalloped Potatoes
Creamy vegan scalloped potatoes with a soy milk béchamel, white miso and thyme. No cheese, no cashews and no acid, so the slices actually cook through.
Ingredients
Equipment
As an Amazon Associate I earn from qualifying purchases, at no extra cost to you.
Instructions
- 1
Heat the oven and butter the dish
Heat the oven to 375°F (190°C). Rub a 9x13 inch baking dish all over the base and sides with vegan butter, including the corners, where the sauce catches first.

- 2
Slice the potatoes evenly
Peel the potatoes and cut them into rounds a scant 1/8 inch (3 mm) thick. Even slices matter more than the exact number: a batch that runs from 2 mm to 6 mm gives you mush and crunch in the same spoonful. Do not rinse them, and do not hold them in water. The starch clinging to the cut faces is what binds the sauce later.

- 3
Soften the onion
Melt the vegan butter in a large pot over medium heat. Add the sliced onion and cook for about 5 minutes, stirring now and then, until it is soft and translucent with no color on it. Add the garlic and cook for 1 minute more, until it smells sweet rather than raw.

- 4
Cook out the flour
Scatter the flour over the onion and stir constantly for 2 minutes. It will clump around the onion and then loosen, and it should smell faintly of biscuits. This is what stops the finished sauce tasting of raw flour.

- 5
Whisk in the soy milk
Pour in the soy milk a splash at a time, whisking each addition smooth before the next one goes in. Once it is all in, bring it to a gentle simmer and cook for 3 to 4 minutes, whisking, until it thickens enough to coat the back of a spoon. Keep it at a lazy simmer and never a hard boil.

- 6
Season the sauce hard
Take the pot off the heat and whisk in the miso, nutritional yeast, thyme, nutmeg, salt and pepper until the miso has completely dissolved. Taste it. It should taste slightly too salty on its own, because three pounds of unsalted potato is about to dilute it. There is no lemon juice or vinegar here on purpose.

- 7
Simmer the potatoes in the sauce
Return the pot to medium-low heat, add the potato slices and fold them gently through the sauce with a spatula so they separate. Bring it back to a bare simmer and cook for 10 minutes, stirring gently two or three times, until the outer edge of a slice gives to a knife tip but the center still resists. The sauce will thicken noticeably as the potatoes shed starch.

- 8
Layer it into the dish
Tip the whole panful into the buttered dish and spread it level, then lift the top slices with a fork into overlapping rows so the surface is potato rather than sauce. Scrape every last bit of sauce from the pot over the top.

- 9
Bake it covered
Cover the dish tightly with aluminum foil, sealing it around the rim, and bake for 25 minutes. The trapped steam is what carries the heat into the middle of the layers.

- 10
Brown it uncovered
Take the foil off and bake for another 20 to 25 minutes, until the top is browned in patches, the exposed potato edges have curled and darkened, and the sauce is bubbling slowly around the sides. A knife should slide through the whole depth with no resistance.

- 11
Rest it before serving
Let it sit for 15 minutes before you cut into it. Straight from the oven the sauce pours; after 15 minutes it sets enough to hold a square. Scatter the chives over the top, if using.

Notes
Slice thickness matters less than slice consistency. Aim for 1/8 inch and, above all, keep them the same.
Do not rinse the sliced potatoes or hold them in water. The surface starch is what thickens the sauce and binds the layers.
Season the sauce until it tastes slightly too salty on its own. Potatoes absorb an enormous amount of salt.
The 15 minute rest is part of the recipe, not a suggestion. Cut it early and the sauce runs across the plate.
Nutrition Facts
8 servings · 295 g per serving
- Calories
- 250 kcal
- Total Fat
- 7.7 g10%
- Saturated Fat
- 1.5 g8%
- Sodium
- 772 mg34%
- Total Carbohydrate
- 38.1 g14%
- Dietary Fiber
- 5.6 g20%
- Sugars
- 2.5 g—
- Protein
- 8.5 g17%
Recipe from veggierecipes.blog
When it goes wrong
Troubleshooting
The potatoes are still hard after an hour in the oven
Almost always acid in the sauce. Lemon juice, vinegar and mustard inhibit the enzymes that break down pectin in the potato cell wall and encourage the pectin to gel in place instead, so the slices are chemically braced against softening. Food scientists exploit this deliberately: soaking potato slices in lemon juice is a published technique for keeping them firm through cooking. It is a great trick for potato salad and a disaster here, and no amount of extra oven time will undo it. The other two causes are slices cut too thick and skipping the stovetop simmer in step 7, which is the step that guarantees the middle is cooked.
The sauce curdled into grains
Soy protein coagulates when it meets acid or when it is boiled hard, and either will turn a smooth béchamel grainy. This recipe removes the acid, so the usual culprit is heat: keep the sauce at a lazy simmer with the odd bubble breaking the surface, never a rolling boil, both when you thicken it and when the potatoes are in it. The other cause is dumping the milk into the roux all at once, which leaves flour lumps that read as curdling. Add it in splashes and whisk each one smooth.
It came out soupy and ran across the plate
You cut it too early. The sauce carries on setting as it cools and 15 minutes of resting is the difference between a spoonful and a puddle. If it is still loose after a proper rest, the likely cause is that you rinsed the potato slices or held them in water, which washes away the surface starch the sauce needs, or that the uncovered bake was cut short before enough water had evaporated.
The top browned nicely but the middle is watery and undercooked
The oven was too hot, or the dish went in uncovered. Foil for the first 25 minutes is not about protecting the top, it is about trapping steam so the heat reaches the middle layers before the surface sets into a lid. If your oven runs hot, drop it to 350°F (175°C) and add 10 minutes to the covered stage.
Some slices are mush and others are still crunchy
Uneven slicing, and it is the most common failure with a knife. A slice at 6 mm needs roughly twice as long as one at 3 mm, so a mixed tray cannot possibly cook evenly. Take the extra four minutes to cut carefully, or use a mandoline if you own one. If the top layer specifically is leathery rather than crunchy, that is different: those slices sat above the sauce line and dried out, so press them down into the sauce before the foil goes on.
It tastes flat and starchy
Under-seasoned, and by more than you would think. Potatoes absorb salt at a rate that surprises people, and three pounds of them will swallow a sauce seasoned to taste pleasant on a spoon. The sauce should taste slightly too salty before the potatoes go in. If the dish is already baked and tastes flat, a flaky salt scattered over each portion at the table recovers most of it.
Before you serve
Serving & Storage
This is an oven dish that shares its oven, which is most of the reason it earns a place on a holiday table: it wants 375°F, the same as a great many roasts, and it is perfectly happy to sit on a lower shelf while something else takes the top. It goes with a nut roast or a lentil loaf, with braised greens or roasted brussels sprouts to cut the richness, and with anything that produces gravy. Outside December it is a very good Sunday dinner side, and a tray of it with a sharp green salad is a legitimate supper for four.
Making it ahead
Assemble it completely through step 8, let it cool, cover it and refrigerate for up to 24 hours. Bake it straight from the fridge and add 15 minutes to the covered stage. This works well and the resting time in the fridge arguably improves it, because the starch and sauce settle into each other. You can also bake it fully a day ahead and reheat, covered, at 350°F (175°C) for 25 minutes with a splash of soy milk poured over first.
What does not work is slicing the potatoes ahead and holding them in water to stop them browning. It washes off the surface starch the sauce depends on, and waterlogs the slices so they dilute the sauce in the oven. If you need to break up the work, do the sauce ahead instead. It keeps for two days in the fridge and reheats gently with a whisk.
Storing leftovers
Four days in the fridge, covered. Reheat portions covered in a 350°F (175°C) oven for 15 to 20 minutes with a tablespoon of soy milk spooned over, which loosens a sauce that has set firm. A microwave works but softens the browned top completely. Leftover scalloped potatoes fried in a hot pan until the cut faces crisp are better than the original, and that is not a consolation prize, it is a reason to make the full tray.
Do not freeze it. Potato cell walls rupture when the water inside them freezes, so the slices thaw grainy and collapsed, and the starch-thickened sauce separates into liquid and paste at the same time. This is one of the few make-ahead questions where the honest answer is simply no.
If you want the gratin after all
Nothing here is an argument against cheese, only against calling the result scalloped potatoes. If a browned crust is what you are after, toss a cup of coarse breadcrumbs with two tablespoons of olive oil and two of nutritional yeast and scatter it over before the uncovered stage, or lay a good melting vegan cheese over the top for the last 15 minutes. Both are genuinely worth doing. You have just made potatoes au gratin, and it will be better than most of them, because the potatoes underneath were cooked properly first.
Still wondering
Frequently Asked Questions
Can I halve this for a smaller dish?
Yes. Halve every ingredient and use a 9x9 inch pan, which gives you roughly the same depth of potato and therefore roughly the same cooking behavior. Keep the stovetop simmer at the full 10 minutes, because that is governed by slice thickness rather than quantity, then bake covered for 20 minutes and uncovered for 15 to 20. It serves four as a side.
Is this gluten free?
Not as written, because the roux is built on wheat flour. The cleanest swap is sweet rice flour, also sold as glutinous rice flour, which behaves almost identically in a roux at the same quarter cup and does not go gritty. A certified gluten-free all-purpose blend also works but needs an extra tablespoon. Cornstarch is the one to avoid here: it has roughly twice the thickening power so you would need only two tablespoons, it cannot be cooked as a roux and has to go in as a slurry at the end, and a cornstarch-thickened sauce turns gluey when the leftovers are reheated. Also check your miso, which is often made with barley.
Do I have to peel the potatoes?
For this dish, yes. Skins that stay on separate from the slices during the stovetop simmer and then float through the layers as loose curls, which looks like a mistake and catches unpleasantly between the teeth. This is different from a roast potato or a mash, where leaving the skins on is a real choice. Peel them.
How many people does a 9x13 tray actually serve?
Eight generously as a side dish on its own. On a holiday table competing with six other things it stretches to twelve without anyone feeling short-changed, and if you are serving it as the center of a meal with a salad it feeds five. The one thing to know is that it does not scale up within the same dish: doubling the quantity into a deeper pan changes the cooking time unpredictably and usually gives you a raw band through the middle. Use two 9x13 trays instead.
More Sides For The Holiday Table
Made this?






