Preheat your oven to 350°F (175°C) and line a 12-cup muffin tin with paper liners or spray with non-stick cooking spray.
Prepare the streusel topping (if using) by combining flour, sugar, and cinnamon in a small bowl. Cut in the cold butter using a pastry cutter or your fingers until the mixture resembles coarse crumbs. Set aside in the refrigerator while you make the batter.
Whisk together the dry ingredients in a medium bowl: flour, baking soda, cinnamon, nutmeg, cloves, ginger, and salt. This ensures even distribution of spices and leavening agents.
In a large bowl, combine the melted butter and both sugars, whisking until smooth and no sugar lumps remain. The mixture should look like wet sand.
Add the pumpkin puree, eggs, and vanilla to the butter-sugar mixture and whisk until completely incorporated. The batter will look slightly curdled, which is normal.
Gently fold the dry ingredients into the wet ingredients using a rubber spatula, mixing just until combined. Be careful not to overmix—a few small flour streaks are preferable to tough muffins.
Divide the batter evenly among the muffin cups, filling each about ¾ full. This ensures proper rising and even baking.
Sprinkle the streusel topping (if using) over each muffin, gently pressing it into the batter slightly so it adheres during baking.
Bake for 22-25 minutes or until a toothpick inserted in the center comes out clean or with just a few moist crumbs. The muffin tops should spring back when lightly touched.
Allow the muffins to cool in the pan for 5 minutes before transferring to a wire rack to cool completely. This prevents them from becoming soggy from condensation.