Preheat the oven to 350°F (175°C). Line a muffin tin with muffin liners or grease with non-stick spray.
In a mixing bowl, combine the flour, baking powder, baking soda, salt, cinnamon, and nutmeg. Whisk together and set aside.
In another large bowl, whisk together the granulated sugar, brown sugar, vegetable oil, and eggs until smooth.
Stir in the grated zucchini and vanilla extract, mixing well.
Gradually fold the dry ingredients into the wet ingredients until just combined. If desired, fold in chopped walnuts or pecans.
In a small bowl, prepare the streusel topping by mixing together flour, granulated sugar, brown sugar, and cinnamon. Add the cold butter and mix until crumbly.
Fill each muffin cup about two-thirds full with batter. Sprinkle the streusel topping evenly over each muffin.
Bake in the preheated oven for 20-25 minutes, or until a toothpick inserted in the center comes out clean.
Allow the muffins to cool in the tin for 5 minutes, then transfer to a cooling rack to cool completely.