You know that perfect French toast you get at brunch spots? The kind with crispy, caramelized edges and a custardy center that’s somehow still fluffy?
I spent years trying to recreate it at home and failing miserably.
Soggy centers. Burnt outsides. Bread that fell apart in the pan. I tried every recipe on the internet and nothing came close to that restaurant-quality magic.
Turns out, I was making three critical mistakes that most recipes don’t tell you about.
Once I figured those out, my French toast went from disappointing breakfast to something my friends literally text me about weeks later. True story.
The game-changer? It’s not just about the egg mixture. It’s about the bread, the technique, and one unexpected ingredient that makes everything taste richer without being heavy.
This recipe makes French toast that actually rivals your favorite brunch spot. Crispy outside, creamy inside, with that perfect hint of sweetness and vanilla.
Let me show you how it’s done.
What You’ll Need

For the French Toast:
- 8 slices thick-cut bread (brioche, challah, or Texas toast)
- 4 large eggs
- 1 cup whole milk
- 1/4 cup heavy cream
- 3 tablespoons granulated sugar
- 1 tablespoon vanilla extract
- 1 teaspoon ground cinnamon
- 1/4 teaspoon ground nutmeg
- 1/4 teaspoon salt
- 2-3 tablespoons unsalted butter (for cooking)
- Powdered sugar for dusting
- Pure maple syrup for serving
Optional Toppings:
- Fresh berries (strawberries, blueberries, raspberries)
- Sliced bananas
- Whipped cream
- Chopped pecans or walnuts
- Extra butter
Tools You’ll Need:
- Large shallow bowl or baking dish
- Whisk
- Large griddle or nonstick skillet
- Spatula
- Wire cooling rack
- Baking sheet (if keeping warm in oven)
- Measuring cups and spoons
Pro Tips
Use day-old bread. Fresh bread is your enemy here. It’s too soft and absorbs too much egg mixture, turning into a soggy mess. Day-old or slightly stale bread holds its shape better and creates that perfect texture contrast. If your bread is fresh, leave the slices out on the counter for 2-3 hours or toast them lightly in a 300°F oven for 5 minutes per side.
Don’t skimp on the soak time, but don’t overdo it either. Each slice needs about 20-30 seconds per side in the egg mixture. Too short and you get dry spots. Too long and it falls apart. You want the bread saturated but still holding together when you lift it.
Add heavy cream to your custard. This is the secret ingredient most home cooks skip. That little bit of cream makes the texture insanely rich and custardy. It’s the difference between good French toast and “where have you been all my life” French toast.
Cook low and slow. Medium-low heat is your friend. High heat burns the outside before the inside cooks through. You want about 3-4 minutes per side, giving the custard time to set properly while the outside gets golden and caramelized.
Keep finished pieces warm in the oven. Set your oven to 200°F and place a wire rack on a baking sheet inside. As you finish each batch, transfer them to the rack. This keeps them warm and crispy (no soggy bottoms from steam) while you cook the rest.
How to Make French Toast
Step 1: Choose and Prep Your Bread
This is where most people go wrong right out of the gate.
You need thick-cut bread. I’m talking at least 3/4-inch thick, preferably 1-inch. Those thin sandwich slices? They turn to mush.
My top picks are brioche (rich and buttery), challah (slightly sweet and eggy), or thick Texas toast. All three have enough structure to soak up the custard without disintegrating.
If your bread is fresh from the bakery, slice it and let it sit out uncovered for a few hours. Or pop it in a 300°F oven for about 10 minutes, flipping halfway through, until it’s slightly dried out but not toasted.
You want 8 slices for this recipe, which feeds about 4 people generously.
Step 2: Make the Custard Mixture
Grab a large shallow bowl or baking dish. Something wide enough to fit your bread slices flat.
Crack in 4 eggs and whisk them until they’re completely broken up. No stringy white bits.
Add the whole milk, heavy cream, sugar, vanilla extract, cinnamon, nutmeg, and salt.
Whisk everything together until it’s completely smooth and the sugar has dissolved. You should see tiny bubbles on the surface and the mixture should look pale yellow.
Taste it. Seriously. If it doesn’t taste good raw, it won’t taste good cooked. It should be sweet, vanilla-forward, with warm spice notes. Adjust if needed.
Step 3: Heat Your Pan
Set your griddle or large skillet over medium-low heat. Yes, medium-low. Not medium-high.
Let it warm up for a good 3-4 minutes. You want even, gentle heat.
Add about 1 tablespoon of butter. Let it melt completely and start to foam, but don’t let it brown. If it browns immediately, your heat is too high.
Swirl the butter around to coat the entire surface.
Step 4: Soak the Bread
Take your first slice of bread and lay it flat in the custard mixture.
Let it soak for 20-30 seconds. You’ll see the bread start to absorb the liquid.
Flip it over and soak the other side for another 20-30 seconds.
Lift it carefully with both hands. It should feel saturated but still hold together. If it’s falling apart, your soak time was too long or your bread was too fresh.
Let the excess custard drip back into the bowl. You don’t want it pooling in your pan.
Step 5: Cook the First Side
Place the soaked bread gently in your hot buttered pan.
Don’t touch it. Don’t press it. Don’t peek under it for at least 3 minutes.
You’ll hear it sizzle gently. That’s good. If it’s hissing loudly, turn your heat down a bit.
After 3 minutes, take a peek at the underside with your spatula. It should be deep golden brown with slightly darker edges. If it’s pale, give it another minute. If it’s dark brown or black, your heat is too high.
Step 6: Flip and Finish
Once the first side is perfect, slide your spatula under and flip it in one smooth motion.
Cook the second side for another 3-4 minutes.
This side usually cooks a bit faster since the pan is already at temperature and the bread is heated through.
You want the same deep golden color on both sides.
Step 7: Keep Warm and Repeat
Transfer the finished French toast to your wire rack in the warm oven.
Add a bit more butter to your pan and repeat the soaking and cooking process with the remaining slices.
You can usually fit 2-3 slices at a time depending on your pan size. Just make sure they’re not touching or they’ll steam instead of getting crispy.
Step 8: Serve
Once all your French toast is done, pile it on a serving platter.
Dust generously with powdered sugar. I use a fine mesh strainer for this and it looks gorgeous.
Serve immediately with warm maple syrup, fresh berries, or whatever toppings make your heart happy.

Substitutions and Variations
Bread options: Can’t find brioche or challah? Use thick-cut sourdough, French bread, or even croissants (slice them in half horizontally). Avoid whole wheat or multigrain unless you like dense, heavy French toast.
Dairy-free version: Swap the milk for oat milk or coconut milk (full-fat). Use coconut cream instead of heavy cream. Replace butter with coconut oil or vegan butter.
Sugar alternatives: Use maple syrup, honey, or coconut sugar instead of granulated sugar in the custard. Start with 2 tablespoons and taste.
Spice variations: Try cardamom instead of nutmeg. Add a pinch of allspice. Go wild with pumpkin pie spice in the fall.
Stuffed French toast: Make a sandwich with cream cheese and berries, or Nutella and sliced bananas, then dip and cook as directed. You’ll need to cook it a bit longer.
Savory French toast: Skip the sugar, vanilla, and spices. Add 1/4 cup grated Parmesan, some black pepper, and fresh herbs. Top with bacon and maple syrup for a sweet-savory combo.
Make-Ahead Tips
Prep the custard: Mix up your egg mixture the night before and store it covered in the fridge. Give it a good whisk before using.
Slice and dry the bread: Cut your bread and let it dry out overnight on the counter. In the morning, you’re ready to go.
Freeze cooked French toast: Make a double batch and freeze the extras. Let them cool completely, then freeze in a single layer on a baking sheet. Once frozen, transfer to a freezer bag. They’ll keep for up to 2 months. Reheat in the toaster or oven straight from frozen.
Make a casserole version: Layer bread cubes in a baking dish, pour the custard over top, cover, and refrigerate overnight. Bake at 350°F for 45 minutes in the morning. This is perfect for feeding a crowd.
Leftovers and Storage
Store leftover French toast in an airtight container in the fridge for up to 3 days.
Don’t stack them directly on top of each other or they’ll stick. Put a piece of parchment paper between layers.
Best reheating methods:
Toaster or toaster oven at medium heat until crispy and hot (my favorite method).
Oven at 375°F for 5-7 minutes on a wire rack.
Skillet over medium heat with a little butter for 2 minutes per side.
Skip the microwave unless you like soggy French toast. It steams the bread and makes it rubbery.
Leftover ideas:
Cut into strips for French toast sticks (kids love these).
Cube it up and make a French toast bread pudding.
Use it as the base for a breakfast sandwich with eggs and bacon.
Turn it into ice cream sandwiches with vanilla ice cream.
Nutritional Information
Per serving (2 slices with no toppings):
- Calories: 385
- Protein: 14g
- Carbohydrates: 48g
- Fat: 15g
- Fiber: 2g
- Sugar: 18g
- Sodium: 420mg
- Cholesterol: 215mg
Keep in mind this doesn’t include toppings like syrup, butter, or fruit. But French toast is a weekend treat, not a Tuesday morning rush meal, so enjoy it.
Pairing Suggestions
French toast is already pretty rich, so I like to balance it with some freshness.
Serve alongside crispy bacon or breakfast sausage for a sweet-savory combo.
Add a big bowl of mixed berries tossed with a squeeze of lemon juice.
Pour yourself a strong cup of coffee. The bitterness cuts through all that sweetness perfectly.
Fresh-squeezed orange juice is classic for a reason.
If you’re feeling fancy, make a quick berry compote: simmer frozen berries with a splash of water and a spoonful of sugar until thick.
FAQ
Why is my French toast soggy in the middle?
Either your heat is too high (cooking the outside before the inside sets) or you soaked the bread too long. Lower your heat and reduce soak time to 20-30 seconds per side.
Can I use skim milk?
You can, but it won’t be as rich and creamy. The fat content in whole milk and heavy cream is what makes the texture so good. If you must use skim, add an extra egg yolk.
Do I have to use vanilla extract?
No, but it adds so much flavor. If you skip it, the French toast will taste more eggy and less sweet. You could use almond extract instead, just use half the amount.
How do I prevent the custard from scrambling?
Don’t use high heat. The gentle, medium-low temperature lets the eggs cook slowly without curdling. If you see little egg bits forming in your pan, your heat is definitely too high.
Can I make this with gluten-free bread?
Yes, but choose a sturdy gluten-free bread. The soft, crumbly types fall apart. Brands that make sandwich bread or Texas toast styles work best.
What if I don’t have heavy cream?
Use all whole milk (increase to 1 1/4 cups total) or add 1 tablespoon of melted butter to the custard. It won’t be quite as rich, but still delicious.
Should the custard be warm or cold?
Room temperature is ideal. If it’s too cold, it won’t soak in as well. If it’s too warm, it might start cooking the eggs prematurely.
Can I add alcohol?
Sure. A tablespoon of rum, bourbon, or Grand Marnier in the custard adds amazing flavor. Just reduce the vanilla slightly.
Wrapping Up
This French toast recipe is the one I come back to every single weekend.
It’s foolproof once you understand the three key things: use day-old thick bread, add heavy cream to the custard, and cook on medium-low heat. Get those right and you’ll have French toast that rivals any brunch spot.
The best part? You probably have everything you need already sitting in your kitchen. No special equipment, no weird ingredients, just simple techniques that make all the difference.
Make this on Sunday morning. Take your time. Pour yourself a coffee. Enjoy the process.
Then come back here and tell me how it turned out. Did you try any fun toppings? Make any tweaks? I love hearing what works for you.