Preheat oven: Preheat your oven to 375 °F (190 °C). Line a 12-cup muffin tin with paper liners or grease lightly.
Mix dry ingredients: In a large bowl, whisk together flour, granulated sugar, brown sugar, baking powder, baking soda, salt, and cinnamon.
Mix wet ingredients: In a separate bowl, whisk buttermilk (or sour cream), melted butter, egg, and vanilla extract until well combined.
Combine wet and dry: Pour the wet ingredients into the dry ingredients. Stir with a spatula until just combined; the batter will be lumpy. Do not overmix.
Fold in peaches: Gently fold diced peaches into the batter, distributing evenly.
Portion batter: Divide the batter among the muffin cups, filling each about 3/4 full. Tap the pan lightly on the counter to settle the batter.
Make streusel: In a small bowl, combine flour, brown sugar, granulated sugar, and cinnamon for the streusel. Cut in cold butter using a fork or pastry cutter until the mixture resembles coarse crumbs.
Add topping: Sprinkle the streusel generously over each muffin, pressing lightly to adhere.
Bake: Bake for 18–22 minutes, or until a toothpick inserted into the center comes out clean (a few moist crumbs are okay).
Cool: Cool in the pan for 5 minutes, then transfer to a wire rack to cool completely or serve warm.