German Chocolate Poke Cake
This German Chocolate Poke Cake is my take on everything I love about German chocolate cake, but made even more moist with a chocolate condensed milk soak. It has a soft chocolate cake, a rich coconut pecan topping, and an extra layer of toasted coconut on top.
I especially like this one after it has had time to chill. The soak settles into the cake, the topping thickens, and the flavors come together even more by the next day.

Why You’ll Love This Recipe
- The chocolate cake is very moist even before adding the soak.
- The chocolate milk soak adds richness without making the cake soggy.
- Toasting both the coconut and pecans gives the topping much more flavor.
- It’s an excellent make-ahead cake and is even better the next day.
- Everything is baked and assembled in one 9×13-inch pan, so it’s easy to serve for gatherings and holidays.
I’ve been making a lot of sheet cakes lately, including my Cookies and Cream Sheet Cake, but this is the first one in what I hope becomes a whole series of poke cakes.
This post may contain affiliate links. I earn a commission from qualified purchases. Please read our Privacy policy here.
If you already love the coconut-and-chocolate combination, you should also try my German Chocolate Cake. I use those same classic flavors in my German Chocolate Brownies and German Chocolate Cookies too.
Key Ingredients & How I Use Them
Cocoa powder: I use natural unsweetened cocoa powder in both the cake and the chocolate soak. The soak only needs a few tablespoons, but it reinforces the chocolate flavor all the way through the cake.
Coffee: Hot coffee intensifies the cocoa without making the finished cake taste like coffee. If you don’t want to use coffee, hot water will work instead.
Buttermilk and sour cream: I use both because I want this cake to be very moist but still have enough structure to hold up once it’s soaked.
Sweetened condensed milk: One can is divided between two parts of the recipe. I use ½ cup in the chocolate milk soak, then add everything remaining in the can to the coconut pecan topping.
Coconut: There is a lot of coconut in this cake, intentionally. I toast 2 cups for the cooked topping and another 1½ cups separately for the top of the finished cake.
Pecans: Toasting the pecans before stirring them into the topping makes them more fragrant and gives them a better texture. I don’t skip this step.
Evaporated milk and egg yolks: These form the base of the coconut pecan topping. The egg yolks thicken the mixture as it cooks, while the evaporated milk keeps it creamy.

How to Make German Chocolate Poke Cake
The full printable recipe is below, but here’s how I make it step by step. Let’s start with the chocolate cake.
1. Mix the dry ingredients
I start by whisking the flour, sugar, cocoa powder, baking powder, baking soda, salt, and espresso powder together.

Mix the wet ingredients
In a separate bowl, whisk the eggs, oil, buttermilk, sour cream, and vanilla.

Pour wet into dry
Pour the wet ingredients over the dry ingredients. Whisk until almost completely combined. Avoid overmixing to prevent the cake from being dry. We will still have to mix more once the coffee has been added.

Add the coffee
Slowly add the coffee and mix gently to combine. The batter will be super thin. That’s totally normal.

Bake the cake
Bake the cake in a greased 9×13-inch pan at 350ºF until a toothpick inserted in the center comes out clean or with a few moist crumbs, usually about 30 to 36 minutes.
Let the cake cool for at least 30 minutes before poking the holes.

Make the chocolate milk soak
Lightly warm the milk first. It doesn’t need to be hot; warming it simply makes it easier to whisk the cocoa powder in smoothly.
Whisk in the cocoa powder until there are no dry pockets, then add ½ cup of sweetened condensed milk. Save the rest of the can because we’ll use it in the coconut pecan topping.

Soak the cake
Poke holes all over the cake with a fork, skewer, or the handle of a wooden spoon.
This cake is very moist, so sometimes a little cake sticks to the fork while you’re making the holes. If that happens, I place the cake in the refrigerator for about 10 minutes and then continue.
Slowly pour the chocolate soak over the cake, moving around the entire surface so it absorbs evenly rather than collecting in one spot.
Refrigerate the cake for at least one hour before adding the topping. You can also cover it tightly with plastic wrap and let it sit in the fridge overnight, and make the topping the next day.

If you like soaked cakes, my Coconut Poke Cake is another one to try. That one is much more coconut-forward, while this recipe keeps the chocolate cake and German chocolate topping at the center.
Now I will show you how to make the filling.

Toast the coconut
I toast the coconut first in a dry skillet over medium-low heat, stirring frequently.
Stay close to the pan here. Coconut takes a little while to begin coloring, and then it can go from golden to burnt very quickly.
Once it’s lightly golden, immediately transfer it to a bowl or plate.

Toast the pecans
Then I use the same skillet to toast the chopped pecans for a few minutes, just until they become fragrant.
Toasting these separately is important because the coconut browns much faster than the pecans.

Cook the topping
In a medium saucepan, whisk together the brown sugar, evaporated milk, egg yolks, butter, the remaining sweetened condensed milk, and salt.
Cook the mixture over medium-low to medium heat while stirring constantly.
Keep scraping across the bottom and around the edges of the saucepan so the eggs cook evenly and nothing scorches.
After about 10 to 14 minutes, the mixture should be noticeably thicker and coat the back of a spoon.

Add the nuts and coconut
Remove the pan from the heat, stir in the vanilla, then fold in the toasted coconut and pecans.
Let the topping cool until it’s thick enough to spread without running off the cake.

Assemble and decorate the cake
Once the topping cools down, spread on top of the soaked and slightly chilled cake.
Top with more toasted coconut.

German Chocolate Poke Cake vs. Chocolate Tres Leches Cake
If you’ve made my Chocolate Tres Leches Cake, these may seem similar because both start with chocolate cake and involve adding a milk mixture after baking, but they’re quite different.
First, the cake batters are different. This German Chocolate Poke Cake is designed to be moist but sturdy enough to support the heavy coconut pecan topping.
The soak is different too. Instead of a tres leches mixture, I use whole milk, cocoa powder, and sweetened condensed milk. It moistens the cake and fills the holes without saturating it as heavily as a traditional tres leches cake.
The biggest difference is the topping. Chocolate tres leches is finished with a lighter creamy topping, while this cake gets a cooked coconut pecan mixture made with egg yolks, evaporated milk, butter, brown sugar, and condensed milk, followed by another layer of toasted coconut.
So even though both are very moist chocolate cakes, the textures and flavors are completely different.

Tips for the Best German Chocolate Poke Cake
- Let the cake cool before poking it. A very hot cake is more fragile and will pull apart more easily.
- Pour the soak slowly. I like giving each section of the cake a few seconds to absorb the liquid before adding more.
- Chill before topping. The one-hour refrigeration time gives the cake time to absorb the chocolate soak and makes it easier to spread the topping.
- Toast the coconut over medium-low heat. Higher heat makes it much easier to burn before it toasts evenly.
- Remove toasted coconut from the skillet immediately. The pan stays hot and can continue browning it even after you turn off the heat.
- Stir the coconut pecan topping constantly. This keeps the egg yolks smooth and prevents the bottom from scorching.
- Don’t judge the topping only by how thick it looks in the saucepan. It will continue to thicken as it cools.
- Make it ahead if you can. I actually prefer this cake after it has spent some time in the refrigerator because the soak has a chance to settle throughout the cake.

Yes, and I recommend it.
You can make the entire cake the day before serving, cover it, and refrigerate it overnight. The texture gets even better as the chocolate soak has more time to distribute throughout the cake.
If you want the toasted coconut on top to stay especially crisp, you can assemble the cake with the coconut pecan topping the day before and add the final toasted coconut closer to serving.
You can substitute chopped walnuts if necessary.
Pecans are my preference because their buttery flavor is part of what makes German chocolate cake taste the way I expect it to, but the method will remain the same with walnuts.
No. You can replace the hot brewed coffee with the same amount of hot water.
I prefer coffee because it gives cocoa a deeper flavor, but the cake won’t taste strongly like coffee.
Yes. I use sweetened shredded coconut in the coconut pecan topping, but unsweetened shredded coconut for the toasted layer on top. You can use either type in both places, but I like unsweetened coconut for the finish because it’s less moist and toasts up a little crunchier.

I hope you love this German Chocolate Poke Cake as much as I do. It’s rich, incredibly moist, and has so much texture from the toasted coconut and pecans, especially once it’s had time to chill and everything settles together.
If you make it, leave a comment below and let me know how it turned out. And if you share it on social media, tag me so I can see your cake!

German Chocolate Poke Cake
Ingredients
Chocolate Cake
- 2 cups all-purpose flour 255g
- 1¾ cups granulated sugar 350g
- â…“ cup unsweetened cocoa powder 34g
- 1 tsp baking powder
- 2 tsp baking soda
- ½ tsp salt
- ½ tsp espresso powder optional
- 2 large eggs room temperature
- ½ cup vegetable oil 120ml
- â…” cup buttermilk 158ml
- â…“ cup sour cream 75g
- 2 tsp vanilla extract
- 1 cup hot brewed coffee 240ml
Chocolate Milk Soak
- 3 tbsp unsweetened cocoa powder
- ½ cup whole milk lightly warmed (120ml)
- ½ cup sweetened condensed milk 150g
Coconut Pecan Topping
- 2 cups sweetened shredded coconut
- 1¾ cups chopped pecans
- ¾ cup brown sugar 165g
- 1 can evaporated milk 12 oz / 354ml
- 4 large egg yolks
- ½ cup unsalted butter 113g
- About â…š cup sweetened condensed milk about 245g; leftover from the can used for the soak
- 1 tsp vanilla extract
- ¼ tsp salt
For Topping the Cake
- 1½ cups sweetened shredded coconut
Instructions
Make the Cake
- Preheat the oven to 350ºF. Grease a 9×13-inch baking pan and line with parchment paper if it’s not non-stick.
- In a large bowl, whisk together the flour, sugar, cocoa powder, baking powder, baking soda, salt, and espresso powder.
- In a separate bowl, whisk together the eggs, oil, buttermilk, sour cream, and vanilla extract.
- Pour the wet ingredients into the dry ingredients and mix until mostly combined.
- Slowly pour in the hot coffee while whisking until the batter is smooth and evenly combined. The batter will be thin.
- Pour the batter into the prepared pan and bake for 30 to 36 minutes, or until a toothpick inserted into the center comes out clean or with a few moist crumbs.
- Let the cake cool for at least thirty minutes.
Make the Chocolate Milk Soak
- Add the cocoa powder to the lightly warmed milk and whisk until smooth and dissolved.
- Whisk in ½ cup of the sweetened condensed milk until well combined. Reserve the remaining sweetened condensed milk for the topping.
- Poke holes all over the surface with a fork, a skewer or the handle of a wooden spoon. The cake is moist, so crumbs may attach to the fork when you poke it. In that case, you can place the cake in the fridge for 10 minutes or so.
- Slowly pour the chocolate milk soak evenly over the cake, allowing it to absorb into the holes and surface.
- Place it in the fridge for at least 1 hour before adding the topping.
Make the Coconut Pecan Topping
- Place the coconut in a large dry skillet over medium-low heat. Toast, stirring frequently, until lightly golden and fragrant. Transfer to a plate or bowl and set aside.
- Add the chopped pecans to the same skillet and toast for a few minutes, stirring frequently, until fragrant. Remove from the heat and set aside with the coconut.
- In a medium saucepan, whisk together the brown sugar, evaporated milk, egg yolks, butter, remaining sweetened condensed milk from the can, and salt.
- Cook over medium-low to medium heat, stirring constantly, until the mixture thickens considerably and coats the back of a spoon, about 10 to 14 minutes.
- Remove from the heat and stir in the vanilla extract.
- Fold in the toasted coconut and pecans until evenly combined.
- Let the topping cool until thickened but still spreadable, then spread evenly over the cooled cake.
Toasted Coconut
- Place the coconut in a large dry skillet over medium-low heat. Cook, stirring frequently, until the coconut is evenly golden and fragrant. Watch it closely, as coconut can brown quickly once it starts to toast.
- Immediately transfer the toasted coconut to a plate or bowl to stop the cooking and let it cool completely.
- After spreading the coconut pecan topping over the cooled cake, sprinkle the toasted coconut evenly over the top.

