Preheat your oven to 350°F (175°C) and line a muffin tin with paper liners or grease it lightly.
In a large mixing bowl, whisk together the flour, granulated sugar, baking powder, baking soda, cinnamon, nutmeg, and salt until well combined.
In another bowl, mix the pumpkin puree, vegetable oil, eggs, and vanilla extract until smooth.
Pour the wet ingredients into the dry ingredients and stir until just combined. Be careful not to overmix; a few lumps are okay.
In a small bowl, prepare the streusel topping by combining the flour, brown sugar, cinnamon, and softened butter. Use a fork or your fingers to mix until crumbly.
Scoop the muffin batter into the prepared muffin tin, filling each cup about two-thirds full. Sprinkle the streusel topping evenly over each muffin.
Bake in the preheated oven for 18-20 minutes, or until a toothpick inserted into the center comes out clean.
Allow the muffins to cool in the pan for 5 minutes before transferring them to a wire rack to cool completely.