Preheat oven to 350°F and line a 12 cup muffin tin and 6 cups of another muffin tin with cupcake liners.
In a medium bowl, mix flour, spices, baking powder and salt together then set aside.
In a large mixing bowl using a handheld or stand mixer, cream together the butter and sugar on medium high speed until smooth and creamy.
Add eggs, oil, and vanilla. Beat on medium high until well combined.
Add molasses and mix to combine.
With mixer on low speed, add dry ingredients, alternating half dry ingredients, buttermilk and remaining dry ingredients. Whisk until just combined. Do not over mix.
Pour batter into cupcake liners, filling 2/3 full to avoid overflow.
Bake for 20 - 22 minutes, until toothpick inserted in the center comes out clean.
Allow cupcakes to cool completely before frosting.
Beat butter on medium high speed until smooth and creamy.
Add half the powdered sugar and spices and beat on low until incorporated. Then add the remaining powdered sugar and beat on low speed until blended.
Add vanilla and heavy cream and mix on low until well incorporated, then mix on medium high until light and fluffy.
Frost cooled cupcakes then top with gingerbread cookies or sprinkles as desired.
Store any leftover gingerbread cupcakes in an airtight container for up to five days.Freeze the cupcakes before frosting them. Place cupcakes in an airtight container then when you’re ready to enjoy, let thaw on the counter until they come back to room temperature.Garnish with crumbled up gingerbread cookies, mini gingerbread men, iced gingerbread cookies, or holiday sprinkles.Pipe the frosting with a star tip in a piping bag for a pretty snowflake looking frosting.