Preheat oven to 350 F. Line a 12 cup muffin pan with cupcake liners. In a large bowl, whisk together flour, sugar, cocoa powder, salt, and baking powder.
Add in eggs, milk, vegetable oil, and vanilla extract, whisk until smooth. Evenly divide cupcake batter between the lined cupcake pan. Bake for 18-22 minutes. Let cool completely.
In a large bowl, beat softened butter with powdered sugar, cocoa powder, milk, and vanilla extract. Beat until creamy. Pipe frosting onto cupcakes.