Preheat oven: Set your oven to 350°F (175°C). Grease an 8x8-inch pan or line with parchment paper.
Mix dry ingredients: In a large bowl, whisk flour, baking powder, baking soda, salt, and all spices.
Combine wet ingredients: In a separate bowl, whisk pumpkin purée, sugars, oil, eggs, and vanilla until smooth.
Blend together: Gently add dry ingredients to the wet mixture. Pour in milk or buttermilk and stir until just combined. Don’t overmix.
Make the streusel: In a small bowl, mix flour, brown sugar, and cinnamon. Cut in the butter with a fork or your hands until crumbly.
Assemble: Pour batter into the prepared pan and sprinkle the streusel evenly over the top.
Bake: Bake for 30–35 minutes, or until a toothpick inserted in the center comes out clean.
Cool & glaze: Allow to cool slightly. In a bowl, mix powdered sugar, milk, and vanilla, then drizzle over the warm cake.