Chocoflan (The Impossible Cake Recipe)

chocoflan the impossible cake with chocolate cake on bottom and caramel flan on top on a plate

Chocoflan — The Impossible Cake

Chocoflan, also called “the impossible cake” or “pastel imposible,” is a legendary Mexican dessert where two batters — chocolate cake and creamy flan — are poured into the same pan but magically swap positions during baking. You end up with a rich chocolate cake on the bottom, silky caramel flan on top, and a layer of dulce de leche-like caramel sauce dripping down the sides. It looks (and tastes) impossible, but it’s actually quite simple to make.

Why This Recipe Is Legendary

  • Two desserts in one — chocolate cake + flan in the same pan
  • The layers swap during baking — the “impossible” magic
  • Stunning presentation — a showstopper at any gathering
  • Easier than it looks — straightforward steps, impressive result

Ingredients

Caramel layer:

  • 1 cup (200g) granulated sugar
  • ¼ cup water

Flan layer:

  • 1 can (12 oz) evaporated milk
  • 1 can (14 oz) sweetened condensed milk
  • 4 oz cream cheese, softened
  • 4 large eggs
  • 1 tsp vanilla extract

Chocolate cake layer:

  • 1 box chocolate cake mix + ingredients listed on box (eggs, oil, water)
  • OR from scratch: 1½ cups flour, ½ cup cocoa, 1 tsp baking soda, ¾ cup sugar, ½ cup oil, 1 cup buttermilk, 2 eggs, 1 tsp vanilla

How to Make Chocoflan

Step 1 — Caramel. Heat sugar and water in a saucepan over medium heat. Don’t stir — swirl the pan gently. Cook until deep amber (about 8 minutes). Pour immediately into a greased Bundt pan. Tilt to coat the bottom.

Step 2 — Flan. Blend evaporated milk, condensed milk, cream cheese, eggs, and vanilla until completely smooth. Set aside.

Step 3 — Cake. Prepare chocolate cake batter (box mix or from scratch). Pour cake batter over the caramel in the Bundt pan.

Step 4 — The impossible part. Slowly pour the flan mixture over the cake batter. It will sink to the bottom — that’s exactly right. During baking, the heavier flan sinks and the lighter cake rises, creating the swap.

Step 5 — Bake in a water bath. Place the Bundt pan inside a larger roasting pan. Add hot water to the roasting pan until it comes halfway up the sides. Bake at 350°F (175°C) for 55–65 minutes until the cake is set.

Step 6 — Cool and flip. Cool in the pan 15 minutes, then refrigerate at least 4 hours (overnight is best). Run a knife around the edges, place a plate on top, and flip in one confident motion. The caramel sauce will cascade down.

Frequently Asked Questions

Why didn’t my layers swap?

The flan mixture wasn’t poured slowly enough over the cake batter. Pour in a thin, slow stream. Also, the water bath must be used — it controls the temperature for proper layer separation.

Can I use a regular cake pan instead of Bundt?

A 9-inch round cake pan works. A Bundt pan gives the most dramatic presentation when flipped.

Do I need a water bath?

Yes — the water bath is essential. It ensures gentle, even cooking that allows the layers to separate properly. Without it, the flan may curdle and the layers won’t swap.

How far ahead can I make chocoflan?

Make it 1–2 days ahead. It must be refrigerated at least 4 hours anyway, and the flavors deepen overnight. Flip just before serving.

Can I use a different cake flavor?

Red velvet, vanilla, or tres leches cake batter all work. Chocolate is traditional and the flavor contrast with flan is unbeatable.

Why is my caramel crystallized/grainy?

You stirred it while cooking. Swirl the pan gently — don’t use a spoon. Use clean sugar and water only.

Can I freeze chocoflan?

Not recommended — the flan texture changes when frozen. It keeps beautifully for 4–5 days refrigerated.

What occasions is chocoflan for?

Birthdays, quinceañeras, Día de los Muertos, Christmas, or any Mexican celebration. It’s one of Mexico’s most beloved desserts.

You Might Also Like

Chocoflan

Chocoflan

Recipe by Author

Chocoflan is a delightful Mexican dessert that combines a rich chocolate cake layer with a creamy flan layer, creating a stunning fusion of flavors and textures. This dessert is perfect for any occasion and is sure to impress your guests with its visually appealing layers.

Course: Dessert Cuisine: Mexican Difficulty: medium
4.5 from 120 votes
🍽️
Servings
8
⏱️
Prep time
30
minutes
🔥
Cooking time
0
minutes
📊
Calories
320
kcal
Cook Mode
Keep the screen of your device on

Ingredients

  • 1 cup all-purpose flour
  • 1/2 cup unsweetened cocoa powder
  • 1 teaspoon baking powder
  • 1/4 teaspoon salt
  • 1 cup granulated sugar
  • 4 eggs
  • 1 teaspoon vanilla extract
  • 1 cup milk
  • 1 can (14 ounces) sweetened condensed milk
  • 1 can (12 ounces) evaporated milk
  • 4 ounces cream cheese (optional)
  • 1 can (400ml) coconut milk (for dairy-free option)
  • 1/2 cup maple syrup (as natural sweetener)

Directions

  1. In a bowl, combine all-purpose flour, cocoa powder, baking powder, and salt. In another bowl, whisk together sugar, eggs, vanilla extract, and milk. Gradually mix the dry ingredients into the wet ingredients.
  2. In a blender, blend sweetened condensed milk, evaporated milk, eggs, vanilla extract, and cream cheese (if using) until smooth.
  3. Grease a Bundt pan and pour the chocolate cake batter into the bottom. Carefully pour the flan mixture on top to create distinct layers.
  4. Cover the pan with foil, place it in a larger pan with hot water, and bake until a toothpick inserted comes out clean.
  5. Cool the Chocoflan completely, refrigerate for a few hours, then unmold onto a serving plate.
  6. Serve slices with whipped cream or ice cream, and garnish with chocolate shavings or caramel sauce.

Nutrition Facts

Calories: 320
Fat: 14
Carbohydrates: 43
Protein: 7
Sodium: 180
Fiber: 2
Sugar: 32

Cookies preferences

Others

Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.

Necessary

Necessary
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.

Advertisement

Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.

Analytics

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.

Functional

Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.

Performance

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.