Chocoflan
Chocoflanย Impossible Cakeย – Mexican Chocoflan Cake is a dense, rich chocolate cake stacked with creamy vanilla flan, dripping with a delicate layer of cajeta caramel sauce!

Why You’ll Love Mexican Chocoflan Cake
Have you always wanted to try Impossible Cake, but never had the nerve? This easy Chocoflan Recipe, aka “Pastel Imposible” is a winner! Mexicanย Chocoflan Impossible Cakeย is a dense, rich chocolate cake stacked with creamy vanilla flan, dripping with a delicate layer of cajeta caramel sauce! A Mexican caramel sauce made with goat milk.
This amazing Chocoflan will make you do a double-take. It is a beautiful double-layered cake covered with Cajeta caramel sauce. It is like no other cake I have ever made or enjoyed. Impossible Cake has the look of a cake you slaved over all day.
Contrary to appearances, it is surprisingly fun and easy to make. However, there are specific steps you must attend to, in order to achieve the desired magic, but there is nothing too hard about that. This Chocoflan Cake is such a perfect combination of textures and flavors. The moist cake, silky flan, and creamy caramel are not your everyday cake, but you will want it to be. It is impossibly addicting, impossibly easy, and very possibly your new favorite dessert!
What is Impossible Cake?
Chocoflan is often referred to in media as an “Impossible Cake” because it defies culinary logic by inverting its layers during the baking process.
The pan goes into the oven layered with caramel, then chocolate cake, then flan. Then later comes out of the oven with the chocolate and flan layers reversed. When you take the cake out of the pan, the chocolate cake layer will be on the bottom, even though you cooked it in the middle layer!
Apparently, this happens because of science. The flan layer is more dense than the cake layer and will drop down and cook in the bottom of the pan while in the oven.
One bite of our Chocoflan Recipe will leave you believing in the Impossible!
Chocoflan Recipe Ingredients
For the Flan Layer:
- Sweetened condensed milk – don’t mix it up with evaporated milk
- Evaporated milk – adds a creamy texture
- Cream cheeseย – softened
- Large eggs – helps bind and adds a firm, creamy texture
- Vanilla extract – Mexican vanilla, if possible
For the Chocolate Cake Batter Layer:
- Unsalted butterย – unsoftened
- Granulated sugar – adds sweetness
- Large egg – used to bind and adds structure
- All-purpose flour – provides structure and stability
- Unsweetenedย cocoa powderย – adds deep chocolate flavor
- Ground cinnamon – adds warm flavor
- Baking powder – helps the cake rise
- Baking soda – works with the buttermilk to create additional lift
- Buttermilk – or use a combination of lemon juice or vinegar and milk (use this homemade buttermilk recipe)
For the Pan:
- Softened butter – for greasing
- Cajeta – caramel sauce
Pro Tip: Cajeta is easy to find in most grocery stores. Check the Mexican food section or Mexican market. You can also find it online. If you canโt find it you may substitute Dulce de Leche or another type of caramel sauce.
How To Make Chocoflan
- You will need a 12-cup bundt pan and a roasting pan large enough to put the bundt pan inside of and have plenty of room for water. You are creating a Bain Marie or hot water bath to cook the flan layer.
- Set one oven rack in the middle of the oven. Preheat oven to 350 degrees F. Coat the bundt pan with butter and drizzle the bottom of the pan with cajeta.
- Boil about 2 quarts of water for the Bain Marie.
- For the Chocolate Cake Layer: With an electric stand mixer or any electric mixer, cream the butter and sugar together on medium speed until light and fluffy, 3-5 minutes. Beat in the egg. Sift all dry ingredients together in a separate bowl. Then mix the dry ingredients into the wet mixture, 1/3 at a time, alternating with buttermilk until all ingredients are incorporated.
- For the Flan Layer: Place all the flan ingredients together in a blender and blend on high until smooth, about 30 seconds.
- Set the bundt pan inside the large roasting pan. Scoop cake mix batter into the bundt pan on top of the cajeta, smooth it out. Then gently pour the flan mixture over the back of a large spoon into the bundt pan so that it lays on top of the cake batter.
- Lightly butter a piece of foil and cover the bundt cake pan tightly, butter side down against the cake. Pour boiling water in the roasting pan about two inches high. Gently slide the pan onto the middle oven rack. Bake for 1 hour without opening the oven door. (You need to keep all of the steam inside the oven to do its job.)
- Remove the foil and test the cake. It should be firm to the touch, and an inserted toothpick should come out clean. (If not, place back in the oven for another 10-20 minutes.) Remove the cake from the water bath and cool completely to room temperature. When cool, shake the pan from side to side to loosen, place a large serving platter inverted over the cake, hold tightly, and quickly flip over. After you invert the cake, the caramel and flan layer will be on the top. With a rubber spatula scrape the remaining cajeta onto the surface of the cake.
- Serve at room temperature, or chill and serve cold. Both are super delicious! Garnish with more cajeta if desired.
Get the Full (Printable) Chocoflan Impossible Cake Recipe Below. Enjoy!
Recipe Tips & Tricks
- Use the right size bundt pan! This recipe requires a minimum 12-cup capacity pan. If you use a smaller one, it might come over the edge of the pan!
- Grease the bundt pan well! The cake came out of the pan much better when I buttered it, instead of spraying it with baking spray. Butter is better! Be sure to get into all the nooks and crannies!
- Don’t skip the water bath! The water bath is critical to making this impossible chocoflan come out perfectly. It will help the flan layer to cook properly and the layers to reverse while cooking.
Storage Suggestions
- To store, place the leftover chocoflan in an airtight container in the fridge for up to 4 days!
- To freeze the chocoflan, tightly wrap the cooled cake in at least two layers of plastic wrap. Freeze for up to 3 months! To serve, thaw in the refrigerator overnight and serve the next day.
Frequently Asked Questions
It can be a tiny bit wobbly when you take it out of the oven, but not a big wobble, or it might collapse.
Yes, you can make this recipe several days in advance. Cover and chill, in the pan, until the day you plan to serve it. Then set it out at room temperature for 1-2 hours before flipping it out of the pan.
Looking for More Delicious Cake Recipes? Be Sure to Try:
- Strawberry Bundt Cake
- Blueberry Muffin Bundt Cake
- Lemon Olive Oil Cake
- Chocolate Pudding Cake
- Strawberry Crunch Cake
- Easy Magic Custard Cake
- Homemade Strawberry Cake From Scratch
- Best Buttermilk Lemon Cake
- Best Cream Cheese Pound Cake
- Japanese Castella Cake (Wagashi Sponge Cake)
- Better Than Sex Cake (Retro Recipe)
Get the Full (Printable) Chocoflan Impossible Cake Recipe Below. Enjoy!
Chocoflan Impossible Cake
Video
Ingredients
For the Flan Layer:
- 14 ounces sweetened condensed milk
- 12 ounces evaporated milk
- 4 ounces cream cheese, softened
- 3 large eggs
- 4 teaspoons vanilla extract, Mexican if possible
For the Chocolate Cake Layer:
- 10 tablespoons unsalted butter, softened
- 1 cup granulated sugar
- 1 large egg
- 1 3/4 cups all-purpose flour
- 1/2 cup cocoa powder, unsweetened
- 1 tablespoon ground cinnamon
- 1 teaspoon baking powder
- 3/4 teaspoon baking soda
- 1 1/4 cup buttermilk
For the Pan:
- 2 tablespoons softened butter for greasing
- 1/4 cup cajeta (caramel sauce)
Instructions
- You will need a 12-cup bundt pan and a roasting pan large enough to put the bundt pan inside of and have plenty of room for water. You are creating a Bain Marie or water bath to cook the flan layer.
- Set one oven rack in middle of the oven. Preheat oven to 350 degrees F. Coat the bundt pan with butter and drizzle the bottom of the pan with cajeta.
- Boil about 2 quarts of water for the Bain Marie.
- For the Chocolate Cake Layer: With an electric stand mixer, cream the butter and sugar together until light and fluffy, 3-5 minutes. Beat in the egg. Sift all dry ingredients together in a separate bowl. Then mix the dry ingredients into the wet mixture, 1/3 at a time, alternating with buttermilk until all ingredients are incorporated.
- For the Flan Layer: Place all the flan ingredients together in a blender and blend on high until smooth, about 30 seconds.
- Set the bundt pan inside the roasting pan. Scoop cake batter into the bundt pan on top of the cajeta, smooth it out. Then gently pour the flan mixture over the back of a large spoon into the bundt pan so that it lays on top of the cake batter.
- Lightly butter a piece of foil and cover the bundt pan tightly, butter side down against the cake. Pour boiling water in the roasting pan about two inches high. Gently slide the pan onto the middle oven rack. Bake for 1 hour without opening the oven door. (You need to keep all of the steam inside the oven to do its job.)
- Remove the foil and test the cake. It should be firm to the touch, and an inserted toothpick should come out clean.ย (If not, place back in the oven for another 10-20 minutes.) Remove the cake from the water bath and cool completely to room temperature.ย When cool, shake the pan from side to side to loosen, place a large platter inverted over the cake, hold tightly and quickly flip over. With a rubber spatula scrape the remaining cajeta onto the cake.
- Serve at room temperature, or chill and serve cold. Both are !Muy Delicioso! Garnish with more cajeta if desired.
Have you ever tried to make this recipe Gluten Free by substituting a GF flour blend?? If so, what GF flour and how did it turn out?
I followed the recipe with the exception of the cajeta. ย I couldnโt find it so I had to make a basic caramel. ย
The cake turned out beautifully. ย
Forgot to rate in my comments but 10/10 would recommend โญ๏ธย
Iโve made this 3 times now and turns out the same every single time, just delicious!!ย
I love that the chocolate cake is so moist! Iโm not a fan of fluffy cake haha I like dense moist chocolatey cake and this is just that.ย
I do add more cajeta than the recipe haha just because I like my flan dripping in saucy cajeta (caramel)ย
Perfect choco-flan!ย
Look no further people ๐ฎ
I made this cake for a potluck dinner with a Mexican food menu. It was a huge hit with everyone. The blend of the chocolate cake with the flan is unique and delicious. This recipe is going into our files for future repeats.
I wanted to try this recipe but did not have a bunt pan plus it is just me and my wife. So I cut the recipe in half (online options) and used a 1.5 quart glass baking dish instead. Getting .88 cups of flour was a challenge as was the one half egg and yet the end result was a delicious as described. Love this recipe.
I baked this for my husbands birthday and it was perfect. It was a big cake for just three people, because we ended up being isolated, this was during covid pandemi, so I put it in a container and froze it. No problem to eat it later on. (^.^)
Thank you so much for your delicious recipe! It came out perfect and my family loved it ๐ย
This recipe is a new favorite for me. It was such a big hit. The cake batter is so velvety and the cinnamon flavor is delicious.ย
This recipe is really amazing am really like it. You made my day. Thanks for sharing.
I do not have access to evaporated milk, what can I use instead?
Hi Lisa!
You can use scalded whole milk. Set it on the stovetop just long enough to simmer around the edges of the pan, but not fully boil. Remove from heat and cool before using.
I made this cake as written except I reduced the cinnamon in half as I don’t like things too cinnamon-y. I used the caramelized sugar (no cajeta). It baked exactly the one hour. Was really easy to unmold after complete cooling (then I placed in refrigerator for 30 minutes). I did make sure I buttered the cake pan well. Recipe a keeper, it was delicious and not too sweet!. I hate an overly sweet dessert. It looks impressive with relatively little work. I also may try the full amount of cinnamon next time as it was not too much for my taste at the 1/2 level.