Position your oven rack to the middle position and preheat to 180°C (350°F). While the oven heats, line your baking tray with parchment paper—this prevents sticking and makes removal easier. Separate your eggs while they're still cool, placing the whites in one bowl and yolks in another; room temperature eggs emulsify better, so let them sit on the counter for about 10 minutes while you prep.
In a large mixing bowl, whisk together almond flour, shredded coconut, baking powder, baking soda, allspice, nutmeg, ginger, salt, and orange zest. This ensures the leavening agents and spices are evenly distributed throughout the cake. In a separate bowl, gently melt the butter over low heat or use softened butter at room temperature, then whisk in the egg yolks and almond milk until well combined. I like to add the orange zest to the dry ingredients first so it distributes evenly and infuses the whole cake with subtle citrus notes.
Pour the wet mixture from Step 2 into the dry ingredients, stirring until just combined—don't overmix, as this can develop gluten in the almond flour and make the cake dense. The batter should come together smoothly but still have a slightly rustic texture. Fold in the vanilla extract gently at the end.
Using clean, dry beaters (any trace of fat will prevent proper whipping), whip the 4 egg whites on medium-high speed until soft peaks form—they should be foamy and thick but still slightly glossy, about 2-3 minutes. This creates lift in the cake. Gently fold the whipped whites into the batter from Step 3 in two additions, using a rubber spatula and rotating the bowl as you fold to maintain the airiness. I find that folding in two batches rather than all at once prevents deflating the egg whites while ensuring they're evenly incorporated throughout the batter.
Pour the batter into your prepared tray, smoothing the top gently with an offset spatula or the back of a spoon. Bake for 40-50 minutes, until a toothpick inserted into the center comes out clean or with just a few moist crumbs. The cake should be golden brown and spring back when lightly touched. Every oven is different, so start checking at 40 minutes to avoid overbaking.
Remove the cake from the oven and let it cool in the pan for 5 minutes, then turn it out onto a wire cooling rack to cool completely. This prevents the bottom from becoming soggy. Once cooled, slice and serve at room temperature or slightly warm. The cake's warm spice notes and coconut flavor shine best when not ice-cold.