Soften the butter properly: Press a finger into it—your finger should leave an indent without sliding through.
Melt the chocolate gently: Microwave in 20-second bursts, stirring in between, or use a double boiler. Cool until just slightly warm to the touch.
Sift powdered sugar and cocoa: This prevents lumps and creates the smoothest texture.
Beat the butter: In a large bowl, beat softened butter on medium-high for 2–3 minutes until pale and fluffy. You want air for lift.
Add cocoa and salt: Mix on low until combined, then increase speed to fully incorporate and darken the butter.
Stream in melted chocolate: With the mixer on low, pour in the cooled melted chocolate. Scrape the bowl and beat again until glossy.
Sweeten and thicken: Add powdered sugar in 2–3 additions, mixing on low after each. The frosting will look thick and stiff—perfect.
Loosen to desired texture: Add 3 tablespoons cream and the vanilla (plus espresso powder if using). Beat on medium-high for 1–2 minutes until silky. Add more cream 1 teaspoon at a time for a softer spread, or a bit more powdered sugar for a firmer pipe.
Final whip: Beat another 30–60 seconds to smooth out air bubbles. The frosting should hold peaks and spread without tearing.
Temperature matters: Cold butter makes grainy frosting; hot chocolate melts it. Keep ingredients near room temp.
Adjust texture last: Decide your use (brownies, layer cake, piping) and tweak with cream or sugar at the end.
Scrape often: Chocolate can cling to the bowl. Scrape sides and bottom for even mixing.
Test spreadability: Swipe a small amount on parchment. If it drags, add a splash of cream; if it slumps, add a spoon of sugar.