Mexican Chocoflan (The Impossible Cake): Chocolate Cake and Flan in One Pan
If you’ve never seen a chocoflan unmolded, it’s a pure kitchen trick. A layer of dark, moist chocolate cake and a smooth vanilla flan begin baking in the same pan, and somewhere along the way they swap places. The cake rises to the top, the flan sinks to the bottom, and a slick of amber caramel blankets the whole thing.

This version is the one I come back to because the flan stays silky without being heavy, and the cake has a deep cocoa flavor that balances the sweetness. It’s the dessert I bring when I want to see eyes go wide.
What Makes This Chocoflan So Good
The layers don’t just coexist; the caramel seeps into the spongy cake right where they meet, creating a sticky edge that’s the best bite in the pan. The flan has a gentle custard wobble and a clean vanilla taste that never fights the chocolate.
It’s rich without weighing you down, and the whole thing looks like it took twice the effort it actually does. That alone keeps it on my table.
Ingredients

- 3/4 cup granulated sugar: for the caramel; don’t stir once the sugar begins to melt
- 4 large eggs, at room temperature: the foundation of the flan
- 1 can (12 oz) evaporated milk: gives the flan its silky body
- 1 can (14 oz) sweetened condensed milk: sweetens and enriches the custard
- 1 tablespoon vanilla extract: use pure, not imitation
- 4 oz cream cheese, softened: makes the flan extra smooth; full-fat works best
- 1 1/2 cups all-purpose flour
- 3/4 cup granulated sugar
- 1/3 cup unsweetened cocoa powder: Dutch-processed for a deeper, darker color
- 1 teaspoon baking soda
- 1/2 teaspoon salt
- 1/2 cup buttermilk, at room temperature: adds tenderness to the cake crumb
- 1/3 cup vegetable oil: keeps the cake moist
- 1 large egg
- 1 teaspoon vanilla extract
Variations and Substitutions
- Cajeta caramel: Use store-bought goat’s milk caramel instead of making your own. It adds a deeper, slightly nutty flavor and cuts 10 minutes off the prep.
- Espresso kick: Stir 1 teaspoon instant espresso powder into the cake batter to amp up the chocolate taste without tasting like coffee.
- Dairy-free: Replace evaporated and condensed milk with full-fat canned coconut versions. The flan will be a little softer but still sets cleanly. Many home cooks also love the similar impossible flan.
How to Make Mexican Chocoflan
Step 1: Make the Caramel

Set a small saucepan over medium heat and pour in the 3/4 cup sugar. Let it melt without stirring, just swirl the pan occasionally so the sugar browns evenly. After about 6 to 8 minutes, it will turn a deep amber color.
The smell will shift from sweet to a faint caramel smoke. That’s your cue to pour it right into the bottom of a 10-cup Bundt pan, tilting to coat the base.
Don’t worry if it hardens into a brittle sheet within seconds. That’s normal, and the oven’s heat will melt it back into a luscious sauce later.
Step 2: Blend the Flan

Add the 4 eggs, both cans of milk, 1 tablespoon vanilla, and the softened cream cheese to a blender. Blend on medium for about 30 seconds until the mixture is completely smooth, with no visible cream cheese flecks.
It will look like a thin, pale yellow batter and pour easily. Let it sit while you make the cake so any surface bubbles can pop.
A few extra seconds in the blender here mean a velvety flan later. Rushing can leave tiny lumps that won’t dissolve during baking.
Step 3: Mix the Chocolate Cake Batter

In a large bowl, whisk together the 1 1/2 cups flour, 3/4 cup sugar, 1/3 cup cocoa powder, 1 teaspoon baking soda, and 1/2 teaspoon salt. In a separate smaller bowl, combine the 1/2 cup buttermilk, 1/3 cup oil, 1 egg, and 1 teaspoon vanilla.
Pour the wet ingredients into the dry and stir with a spatula just until no streaks of flour remain. The batter will be glossy and pourable, thicker than the flan mixture but still loose.
Stop as soon as it comes together. Overmixing develops gluten, and that can turn the cake layer tough instead of tender.
Step 4: Assemble the Layers

Preheat your oven to 350°F (175°C) and set a kettle of water to boil. Spoon the chocolate batter over the hardened caramel in the pan and spread it gently to the edges.
Now, hold a large spoon upside down over the batter and slowly pour the flan mixture over the back of the spoon. The flan will sink through the cake a little, creating a marbled look right at the seam.
That’s exactly what you want. Don’t overthink it; the oven will sort out the layers. The spoon trick keeps the pour gentle so the two batters don’t violently mix.
Step 5: Bake in a Water Bath

Place the Bundt pan inside a larger roasting pan or deep baking dish. Pull out the middle oven rack slightly, set the pans on it, then pour the boiling water into the outer pan until it reaches about halfway up the sides of the Bundt pan.
Carefully slide the rack back and bake for 70 to 75 minutes. The chocoflan is ready when a toothpick inserted into the cake layer comes out clean and the flan still jiggles softly in the center.
The water bath insulates the flan so it cooks gently. If you skip it, the custard can curdle or turn rubbery. Check early if your oven runs hot, because overbaking is the fastest way to a tough flan.
Step 6: Unmold and Slice the Chocoflan

Take the pan out of the water bath and set it on a cooling rack. Let it rest for about an hour, then cover and refrigerate at least 4 hours, but overnight is even better.
When you’re ready, run a thin knife around the edge to loosen any stuck caramel. Place a large serving plate over the pan, hold both tight, and flip. Lift the pan straight up, and the whole cake will release with the caramel dripping down the sides.
Slice into thick wedges and serve cold. The layers will be distinct, the caramel glossy, and every piece will hold its shape on the plate. If any caramel stays behind in the pan, just spoon it over the top.
Tips Before You Start
- Use a Bundt pan with simple lines, not intricate crevices. The flan releases cleaner, and greasing the inside lightly with nonstick spray helps even more.
- After blending the flan, let it rest for 5 minutes. Any air bubbles will rise to the top, giving you a smoother surface after baking.
- If you don’t have buttermilk, pour 1 1/2 teaspoons lemon juice or vinegar into 1/2 cup whole milk, stir, and let it sit for 5 minutes. It works the same way.
- The water bath is not optional here; it’s the whole reason the flan stays silky instead of turning into a dense scramble.
Bake times shift a little with the pan. Use these ranges as a guide, and always check for doneness with a toothpick.
| Pan Type | Size | Approx Bake Time |
|---|---|---|
| Bundt pan (simple design) | 10-cup | 70-75 mins |
| Round cake pan (tall sides) | 9-inch, 3-inch tall | 75-80 mins |
| Round cake pan (tall sides) | 8-inch, 3-inch tall | 80-90 mins |
Keeping Chocoflan Fresh
Refrigerate the unmolded cake or the whole pan in the fridge for up to 4 days. It slices cleanest straight from the cold, but 15 minutes at room temperature softens the caramel a bit.
Freezing is not a great plan. The flan can weep water as it thaws and ruin the silky texture. If you need to make it ahead, baking a day in advance and chilling overnight gives the best result.
Frequently Asked Questions
Can I use a different pan?
Yes, as long as it holds about 10 cups and fits inside a larger pan for the water bath. A 9×3-inch round cake pan with tall sides is a reliable swap.
Why did my flan turn rubbery?
That almost always means it baked too long or the water bath didn’t come high enough on the sides. Pull the chocoflan when the flan still has a small jiggle in the middle; carryover cooking will finish it.
Do I have to refrigerate before unmolding?
Yes. At least 4 hours of chill time sets the flan completely so it doesn’t slump when you flip it. Overnight is even safer.
Can I make it a day ahead?
Absolutely, and many cooks prefer it that way. The caramel softens and the flavor deepens, and you get all the work out of the way before guests arrive.
What if the caramel hardened and won’t melt again?
That hard disc is normal. During baking, the hot water bath melts the sugar back into a liquid caramel sauce that coats the flan. You’re right on track.

Mexican Chocoflan Recipe
Ingredients
Method
- Make the caramel by melting the sugar in a saucepan over medium heat without stirring until deep amber. Pour into a 10-cup Bundt pan and tilt to coat.
- Blend the flan ingredients (4 eggs, both milks, 1 tablespoon vanilla, cream cheese) until smooth. Let rest.
- Whisk dry cake ingredients in one bowl. Whisk buttermilk, oil, 1 egg, and 1 teaspoon vanilla in another. Combine until just mixed.
- Preheat the oven to 350°F (175°C). Pour the cake batter over the hardened caramel, then slowly pour the flan mixture over the back of a spoon on top.
- Set the pan in a larger roasting pan, surround with boiling water halfway up the sides, and bake 70-75 minutes until a toothpick in the cake comes out clean and the flan jiggles softly.
- Cool in the pan 1 hour, then refrigerate at least 4 hours. Run a knife around the edge, invert onto a plate, lift off the pan, and slice.
