Preheat your oven to 350°F. Grease 2- 8" round cake pans and line the bottoms with parchment paper, if desired. Set them aside.
In a large bowl, whisk together the flour, baking soda, baking powder, cinnamon, nutmeg, ginger, and salt.
In a separate bowl, whisk together the rest of the cake ingredients- this will be the pumpkin puree, granulated sugar, light brown sugar, vegetable oil, eggs, vanilla extract, and milk.
Pour the wet ingredients into the bowl wth the dry ingredeints. Whisk everything together just until the batter forms.
Pour batter evenly between the two prepared cake pans. Bake the cakes for 27-30 minutes. Allow the cakes to cool in the pans for 10 minutes, then transfer them to a cooling rack to finish cooling completely.
Making the Frosting
To make the cream cheese frosting, beat the softened butter and softened cream cheese on medium speen until smooth and fluffy; about 1-2 minutes. Then, add in the vanilla extract, cinnamon, and pinch of salt.
Mix in the powdered sugar about a few cups at a time. Once all added, beat the frosting again on medium speed for another 2 minutes until light and fluffy*.
Assembling the Cake
Cut and trim the tops of all three cake layers so they're flat. Place the first cake layer down on the cake plate. Spread about ¾-1 cup of cream cheese frosting into an even layer on top of the cake layer.
Place the second cake layer on top. Frost the outside and sides evenly with the remaining cream cheese frosting. Enjoy!
Notes
*If you want the frosting to be slightly thinner, you can add a splash of heavy cream. If you want it stiffer, add ¼ cup more powdered sugar at a time.