Whisk together the flour, cocoa powder, granulated sugar, baking powder, baking soda, and ¼ teaspoon salt.
Beat ½ cup of butter into the dry ingredients until a sandy mixture forms.
Combine the eggs, 2 teaspoons vanilla extract, milk, and red food coloring in a separate bowl.
Slowly add the wet mixture to the dry mixture, stirring until well combined.
Line a muffin pan with cupcake liners. Fill the cupcake liners with batter until they're ⅔ full.
Bake the cupcakes for 15 to 20 minutes, or until a toothpick inserted comes out clean. Once the cupcakes are finished baking, allow them to cool completely on a wire rack.
Beat the remaining butter together with the cream cheese. Add the remaining vanilla extract along with ¼ teaspoon salt to the butter mixture, beating until smooth.
Stir in the powdered sugar 1 cup at a time until the desired consistency is reached (you may not need all of the sugar).
Spread the cream cheese frosting on the cupcakes. Decorate with sprinkles if desired.