Here is my favorite coconut cake recipe, topped with a smooth cream cheese frosting that’s just the right amount of sweet. The cake layers are light and moist, filled with real coconut flavor that comes from both coconut milk and shredded coconut.
This coconut cake has become my go-to dessert for special occasions and family gatherings. I often get asked to bring it to potlucks, and there’s never a crumb left on the plate. If you’re a coconut lover like me, this one’s going to become your new favorite!

Why You’ll Love This Coconut Cake
- Rich coconut flavor – With real coconut, coconut oil, and coconut flavoring layered throughout both the cake and frosting, you’ll get that perfect tropical taste in every bite.
- Super moist texture – The combination of butter, coconut oil, and buttermilk creates an incredibly tender cake that stays fresh for days.
- Make-ahead friendly – This cake actually tastes better the next day, making it perfect for preparing in advance for special occasions or weekend gatherings.
- Show-stopping appearance – The cream cheese frosting and toasted coconut coating make this cake look like it came from a professional bakery, even though it’s made right in your kitchen.
- Crowd-pleasing dessert – The classic combination of coconut and cream cheese frosting makes this cake a hit at parties, holidays, or any special gathering.
What Kind of Coconut Should I Use?
For this cake recipe, you’ll want to use sweetened shredded coconut, which is the most common type you’ll find in the baking aisle of your grocery store. The sweetened variety works better than unsweetened here because it’s more moist and adds just the right amount of sweetness to complement the cake layers. When toasting the coconut for this recipe, spread it on a baking sheet and keep a close eye on it – coconut can go from perfectly golden to burnt in a matter of seconds. If you can only find unsweetened coconut, that’s okay too, but you might want to add an extra tablespoon or two of sugar to the recipe to make up for the difference in sweetness.

Options for Substitutions
This coconut cake recipe has some room for adjustments if you need them. Here are some helpful swaps:
- Buttermilk: No buttermilk? Mix 1 cup of regular milk with 1 tablespoon of lemon juice or white vinegar, let it sit for 5 minutes before using.
- Coconut oil: You can use any neutral vegetable oil or even melted butter as a replacement. The coconut flavor will be slightly less intense, but the cake will still be moist.
- Cream of tartar: If you’re out, use 1/2 teaspoon of lemon juice or white vinegar instead – it helps stabilize the egg whites just the same.
- Coconut flavoring: While it adds nice flavor, you can skip it and use extra vanilla extract instead. The shredded coconut will still give plenty of coconut taste.
- Sweetened shredded coconut: Unsweetened coconut works too – just know your cake will be a bit less sweet. You might want to add an extra 2-3 tablespoons of sugar to compensate.
- Cream cheese frosting: If you’re not a fan of cream cheese frosting, try a regular buttercream instead – just beat the butter and powdered sugar with a splash of vanilla and coconut extract.
Watch Out for These Mistakes While Baking
The biggest challenge when making coconut cake is working with ingredients at different temperatures – using cold eggs, butter, or buttermilk can lead to a lumpy, uneven batter that won’t rise properly, so make sure everything is at room temperature before you start mixing. When separating your eggs, even a tiny bit of yolk in the whites can prevent them from whipping up properly, so separate each egg into a small bowl first before adding it to your mixing bowl. Another common mistake is undermixing the butter and sugar – cream them together for at least 3-4 minutes until very light and fluffy, as this creates tiny air pockets that help the cake rise. For the frosting, avoid using cream cheese straight from the fridge as it will create lumps – let it soften naturally on the counter for about 2 hours, and beat it alone before adding other ingredients for the smoothest results.

What to Serve With Coconut Cake?
This rich coconut cake pairs wonderfully with a hot cup of coffee or tea, especially something like Earl Grey or a smooth medium roast coffee that won’t overpower the cake’s delicate coconut flavor. If you’re serving this for dessert after dinner, try adding a scoop of vanilla ice cream or some fresh berries on the side – strawberries and raspberries work particularly well with the coconut and cream cheese flavors. For a tropical twist, serve it with some fresh mango slices or a passion fruit coulis, which adds a nice tangy contrast to the sweet, creamy frosting.
Storage Instructions
Counter Storage: Your coconut cake will stay fresh at room temperature for up to 2 days when stored under a cake dome or in an airtight container. If your kitchen is warm, it’s better to pop it in the fridge since the cream cheese frosting can get soft.
Refrigerate: This cake keeps really well in the fridge for up to 5 days. Just make sure it’s in an airtight container to prevent it from absorbing any fridge smells. I like to let it sit at room temperature for about 30 minutes before serving so the frosting can soften up a bit.
Freeze: You can freeze unfrosted cake layers wrapped tightly in plastic wrap and aluminum foil for up to 3 months. For a frosted cake, freeze it uncovered until firm (about 4 hours), then wrap well. When ready to eat, thaw overnight in the fridge.
Make Ahead: Want to prep in advance? You can bake the cake layers up to 2 days ahead and store them wrapped in plastic wrap at room temperature. The cream cheese frosting can be made 1 day ahead and stored in the fridge – just let it come to room temperature and give it a quick whip before frosting.
| Preparation Time | 30-45 minutes |
| Cooking Time | 30-40 minutes |
| Total Time | 60-85 minutes |
| Level of Difficulty | Medium |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 9000-9500
- Protein: 60-70 g
- Fat: 450-470 g
- Carbohydrates: 1000-1050 g
Ingredients
For the cake layers:
- 4 large egg whites (at room temperature)
- 4 large egg yolks
- 1/2 tsp baking soda
- 8 fl oz buttermilk (at room temperature)
- 4 oz unsalted butter (softened)
- 4 oz coconut oil (melted and cooled)
- 1 tsp vanilla extract (I use McCormick’s)
- 1 tsp baking powder
- 1/4 tsp cream of tartar
- 2 tsp coconut flavoring
- 1/2 tsp salt
- 2 cups white sugar
- 11 oz all-purpose flour
For the coconut filling and topping:
- 6 oz sweetened shredded coconut (lightly toasted)
- 1 oz sweetened shredded coconut
For the cream cheese frosting:
- 8 oz unsalted butter (softened)
- 1 tsp coconut flavoring
- 16 oz cream cheese (softened, I prefer Philadelphia)
- 36 oz powdered sugar (sifted to remove lumps)
- 1/2 tsp salt
Step 1: Prepare the Oven and Toast the Coconut
First, adjust an oven rack to the middle position and preheat to 350ºF/176ºC.
Prepare three 6-inch round cake pans with cake goop, parchment paper, or your preferred pan release, ensuring the bottom and sides are well-coated.
Next, spread your coconut flakes evenly on a cookie sheet pan.
Broil the coconut flakes on high for 2-3 minutes, stirring afterwards to ensure even toasting.
Continue broiling for an additional 1-2 minutes or until the flakes are lightly golden.
Watch carefully to prevent burning.
Remove from the oven and allow to cool.
Step 2: Mix Dry and Wet Ingredients
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt.
Set this dry mixture aside.
Heat coconut oil in the microwave until very soft but not hot.
In the meantime, add coconut extract and vanilla extract to room-temperature buttermilk and set aside.
Step 3: Combine Ingredients to Form Cake Batter
In a stand mixer with a paddle attachment, combine the butter and coconut oil.
Beat on medium-high speed until smooth and shiny, about 30 seconds.
Gradually add sugar and continue beating until the mixture is light and fluffy, around 3-5 minutes.
Add egg yolks one at a time, ensuring each is combined before adding the next.
With the mixer on low, alternate adding the flour mixture and buttermilk in thirds, mixing until just blended.
Gently fold in the toasted coconut until well combined.
Step 4: Prepare and Fold in Egg Whites
In a separate mixing bowl with a whip attachment, beat egg whites on medium-high speed until foamy.
Add cream of tartar and continue whipping until semi-stiff peaks form.
Carefully fold the whipped egg whites into the cake batter, ensuring not to deflate the volume too much.
Divide the batter evenly among the prepared cake pans.
Step 5: Bake the Cakes
Bake in the preheated oven for 30-35 minutes, or until a skewer inserted into the center comes out clean.
Transfer the cake pans to a wire rack and let them cool for 10 minutes before inverting the cakes onto the rack to cool completely.
For immediate use, flash freeze cakes for 30 minutes, or wrap in plastic wrap and freeze overnight for future use.
Step 6: Prepare the Cream Cheese Frosting
Ensure butter and cream cheese are at room temperature for smooth blending.
In a stand mixer with a whisk attachment, beat softened butter on low until smooth.
Add softened cream cheese in small chunks and blend on low until smooth.
Gradually add sifted powdered sugar, one cup at a time, mixing to combine.
Add vanilla extract and salt, mixing until well incorporated.
Cover frosting with plastic wrap and refrigerate until ready to use.
Step 7: Assemble and Decorate the Cake
Trim the tops of the cake layers to ensure they are flat.
Place the first layer on a cake board and spread an even layer of cream cheese frosting on top.
Repeat with remaining layers.
Apply a thin crumb coat of frosting around the entire cake and refrigerate for 15 minutes.
Once set, apply a final, thicker layer of frosting.
If desired, press shredded coconut flakes onto the cake’s sides.
Finish by using a star piping tip to pipe swirls of frosting around the top edge.
To store, wrap the cake in plastic and refrigerate.
Cream cheese frosting can sit at room temperature for up to 4 hours.