Prepare a cupcake pan with cupcake liners and preheat the oven to 350°F (176°C).
Combine the flour and baking powder in a medium sized bowl and set aside.
Add the butter, sugar, oil and vanilla extract to a large bowl and cream together until light in color and fluffy, about 3 minutes. Do not skimp on the creaming time. You should be able to see a visible change in the color and texture of the mixture when it’s ready.
Add the egg (one at a time if making more portions), mixing until combined. Scrape down the sides of the bowl as needed to be sure all ingredients are well incorporated.
Add about a third of the dry ingredients to the batter and mix until mostly combined.
Add half of the milk and mix until well combined. (The batter might look a little curdled, but that’s ok).
Add another third of the dry ingredients and mix until well combined. Scrape down the sides of the bowl as needed to be sure all ingredients are well incorporated.
Add the other half of the milk and mix until well combined.
Add the remaining dry ingredients and mix until well combined. Scrape down the sides of the bowl as needed to be sure all ingredients are well incorporated. Do not over mix the batter. Set aside.
Add the sprinkles and gently fold together until well combined.
Fill the cupcake liners about 3/4 full and bake for 15-18 minutes or until a toothpick inserted into the center comes out clean.
Remove cupcakes from the oven and place on a cooling rack to cool.
To make the frosting, add the butter, powdered sugar, and milk to a bowl and beat until well combined and smooth.Add additional sugar or milk as needed to get the right consistency frosting. Spread the buttercream onto the cupcakes. Top with sprinkles.