Preheat your oven to 350°F (175°C). Grease two 9-inch round cake pans with butter and dust with cocoa powder to prevent sticking. This ensures your cake releases perfectly!
In a large bowl, whisk together the flour, sugar, cocoa powder, baking soda, baking powder, and salt until well combined and no lumps remain.
Add the eggs, buttermilk, vegetable oil, and vanilla extract to the dry ingredients. Beat with an electric mixer on medium speed for about 2 minutes until smooth and creamy.
Gently fold in half of your Nutella into the batter — this adds incredible moisture and that signature hazelnut-chocolate flavor throughout the cake. Stir in the hot water last; the batter will be thin, but that's perfect!
Divide the batter evenly between your prepared pans. Bake for 30-35 minutes, or until a toothpick inserted in the center comes out clean. Let the cakes cool in pans for 10 minutes, then turn out onto wire racks to cool completely.
Beat the softened butter until fluffy, then add the remaining Nutella and mix well. Gradually add powdered sugar and heavy cream, alternating between them, until you reach a smooth, spreadable consistency.
Place one cake layer on your serving plate. Spread a generous layer of Nutella frosting on top. Add the second layer and cover the entire cake with the remaining frosting, smoothing the sides and top.
For extra indulgence, drizzle some warmed Nutella over the top and let it drip down the sides. Add chopped hazelnuts around the edge if you like. Let the cake set for 15 minutes before slicing and serving!