In a medium bowl, mix butter, sugar and vanilla extract for about 1 minute. Add eggs and continue mixing until eggs are well incorporated. Add butter milk and continue mixing for a little bit more. Then add flour and backing powder and mix until you get a consistent batter without lumps. The batter should not be too thick, similar to pancake batter. Start with 200 g flour first and then add more, one tablespoon at a time, if needed.
Divide the batter into two equal parts. Add cocoa powder to one half and mix.
Line a 12-cup standard size muffin pan with baking paper cups. In each cup, first pour 1-2 tablespoons cocoa batter, followed by 1-2 tablespoons regular batter, then 1-2 tablespoons cocoa batter, and finished by 1-2 tablespoons regular batter. Feel free to change the sequence if you want to. Make sure the cups are filled to about 2/3 of the way as they will rise during baking
Preheat the oven to 355F (180C)
Bake for 25-30 minutes. Do not over-bake as they will lose their moistness. Pull out of the oven and let cool on a cooling rack
In the meantime, prepare the glaze. In a medium sauce pan, mix milk, butter, sugar and cocoa. Chocolate is optional but I strongly recommend adding it. I find that addition of good quality chocolate make the glaze much more flavorful and decadent. Slowly bring the mix to boil and boil for 1 minute. Set aside and let cool slightly.
Brush the glaze on the cooled down muffins and let the glaze set for about 10 minutes before serving