Preheat your oven to 350°F (175°C) and line a baking sheet with parchment paper.
In a large mixing bowl, cream together the softened butter, granulated sugar, and brown sugar until light and fluffy.
Add the eggs one at a time, mixing well after each addition, then stir in the vanilla extract.
In a separate bowl, whisk together the flour, baking powder, baking soda, salt, and cinnamon.
Gradually add the dry ingredients to the wet ingredients, mixing until just combined.
To make the streusel topping, combine the flour, brown sugar, melted butter, and cinnamon in a small bowl. Mix until crumbly.
Using a cookie scoop or tablespoon, drop dough onto the prepared baking sheet, spacing them about 2 inches apart.
Sprinkle the streusel topping generously over each cookie.
Bake in the preheated oven for 10-12 minutes or until the edges are lightly golden.
Allow the cookies to cool on the baking sheet for 5 minutes before transferring them to a wire rack to cool completely.