Preheat the oven to 180C/350F and spray a 12 hole muffin tin with cooking spray.
Make the streusel topping: Place butter, sugar, flour and oats into a medium sized bowl and rub between your fingers until the butter coats everything and you have a coarse breadcrumb texture. If you have some lumps that are bigger, that's great too! Leave to one side.
Place flour, baking powder, baking soda, salt, spices and sugars into a large bowl and stir briefly to combine. Add the eggs, melted butter and pumpkin, then mix until you have a smooth, well combined mixture with no lumps of flour. Don't beat the mixture too much as you'll end up with rubbery muffins.
Divide the batter between your prepared pan; I use a heaping 2tbsp cookie scoop to fill each hole.
Sprinkle around 1tbsp of streusel topping onto the top of each muffin and just press the streusel topping ever so slightly into the batter.
Place into the oven for 14-18 minutes, until risen, golden and an inserted skewer into the centre comes out clean.
Leave to cool in the pan for at least 15 mins, before transferring to a wire rack to cool completely.
Pumpkin Streusel Muffins will keep in an airtight container, at room temperature for 4 days. The streusel topping will get softer on the second day. You can either serve them at room temperature or warm them in the microwave for 30 seconds and slather in butter!