Preheat your oven to 350°F (175°C) and grease a 9x13-inch baking pan.
In a large mixing bowl, cream together the softened butter and granulated sugar until light and fluffy.
Add the eggs, one at a time, mixing well after each addition.
Beat in the sour cream and vanilla extract until fully combined.
In a separate bowl, whisk together the flour, baking powder, baking soda, and salt. Gradually add the dry ingredients to the wet mixture, stirring just until combined. Be careful not to overmix.
In another bowl, prepare the streusel topping by combining the flour, brown sugar, cinnamon, and melted butter. If using, stir in the chopped nuts until evenly distributed.
Pour half of the batter into the prepared baking pan, smoothing it out with a spatula. Sprinkle half of the streusel topping over the batter.
Pour the remaining batter over the streusel layer, then top with the rest of the streusel mixture.
Bake in the preheated oven for 30-35 minutes or until a toothpick inserted in the center comes out clean.
Allow the coffee cake to cool in the pan for about 10 minutes before transferring it to a wire rack to cool completely.
Notes
Serve warm or at room temperature. Dust with powdered sugar for a beautiful finish.