Melt the Chocolate (if using). Melt the milk chocolate in a large heat-safe mixing bowl, if using. Heat in 30 second intervals, stirring between each until a few lumps remain - stir until the residual heat melts them completely. If not using the melted chocolate, begin in the next step without it.
12 ounces milk chocolate, optional
Make the Frosting. Beat the softened butter in a large mixing bowl (into the melted chocolate, if using) until nice and creamy, 30-60 seconds or so. Add the powdered sugar in two additions, mixing well between each. Start with 4 cups, and add more to taste if desired. Use a splash of milk as needed to help it come together. Add all remaining ingredients except the cream cheese. Beat until combined, then mix in the cubed cream cheese last, until no lumps remain. If your frosting seems weepy or too soft at any point, pop the bowl in the fridge or freezer for 10-20 minutes to stiffen things back up. 1 and 1/2 cups salted butter, 4 cups to 5 cups powdered sugar, 1 tbsp milk, 3/4 cup + 1 tbsp cocoa powder, 1 tbsp vanilla extract , pinch of salt, 12 ounces cream cheese, cold & cubed
Serve & Store: Use the frosting on any cooled cake, cupcakes, brownies, or cookies as desired. Frosting can also be stored in an airtight container in the fridge for 2-3 days before using, or frozen for up to 2 months. Thaw in the fridge overnight if using from frozen, and in both cases, allow frosting to sit at room temperature for 10-20 minutes and give it a mix with the mixer to bring it back to spreadable consistency.
Yield: This amount of frosting yields enough to frost a three layer cake including the sides, or enough to generously frost a batch of 24 cupcakes (by generously, I mean with tall swirls on top - see photos in blog post above). If you prefer less frosting on your cupcakes, you can use 2/3 of a batch or even 1/2 of a batch.