Preheat your oven to 350°F (175°C). Grease and flour two 9-inch round cake pans.
Mix the Dry Ingredients
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt. Set aside.
Cream the Butter and Sugar
In a large mixing bowl, cream together the softened butter and granulated sugar until light and fluffy, about 3-4 minutes.
Add the Eggs and Vanilla
Beat in the eggs one at a time, then mix in the vanilla extract until fully incorporated.
Combine Wet and Dry Ingredients
Gradually add the dry ingredient mixture to the butter mixture, alternating with the buttermilk. Start and end with the dry ingredients, mixing until just combined.
Pour and Bake
Divide the batter evenly between the prepared cake pans. Bake in the preheated oven for 25-30 minutes, or until a toothpick inserted in the center comes out clean.
Cool the Cakes
Allow the cakes to cool in the pans for 10 minutes before transferring them to wire racks to cool completely.
Make the Caramel Frosting
In a mixing bowl, beat the softened butter until creamy. Gradually add the powdered sugar and beat until smooth. Mix in the caramel sauce, vanilla extract, and salt until well combined.
Assemble the Cake
Place one cake layer on a serving plate. Spread a generous layer of caramel frosting on top. Add the second layer and frost the top and sides of the entire cake.
Garnish and Serve
Drizzle additional caramel sauce over the top and sprinkle with chopped nuts if desired. Slice and serve!