Whisk sugar, cocoa powder, cornstarch and salt in a medium saucepan until combined. Gradually whisk in milk until smooth.
Place saucepan on stove over medium heat and bring to a boil, whisking constantly. Boil for one minute.
Remove saucepan from heat (mixture will still be thin, pudding sets as it cools). Stir butter and vanilla extract into pudding mixture.
Immediately divide hot pudding mixture between six ½-cup capacity serving dishes. Cover with food-safe, heat-safe plastic wrap on surface to keep a skin from forming, if desired. Chill for several hours, until thickened and cooled, before serving.
Notes
Ingredient notes
Milk: I highly recommend using whole milk for the creamiest, perfectly set pudding. 2% is fine to use if you’re OK with a less rich taste. I do not recommend using skim milk, as the pudding tends to come out tasting watery.
Cornstarch: Please use cornstarch, not flour. Flour doesn’t act the same as cornstarch in this recipe, so they are not interchangeable.
Cocoa powder: I used unsweetened cocoa powder. If you only have sweetened hot cocoa mix on hand, reduce the amount of sugar added by 2-4 tablespoons (depending how sweet your mix is) and increase the hot cocoa mix by 2 tablespoons, or more to taste.
Salt: Salt is not mandatory, but it does nicely enhance the flavor of the pudding.
Recipe tips
Make sure to thoroughly combine the dry ingredients before adding the milk. It really does help with the mixture coming together more evenly.
Only use medium heat to bring your pudding to a boil. The mixture burns and scorches easily on the bottom if you use a higher temperature. You’ll need a few more minutes of patience, but it’s worth it.
Once the pudding is cooked, you need to stir in the butter/vanilla immediately. And then, you need to immediately transfer it to serving dishes – otherwise, a skin starts forming very quickly on the surface of the pudding.
To keep the skin from forming on the pudding in the serving dishes, you can cover it with (food grade, heat safe!) plastic wrap directly on the pudding’s surface. This will completely keep a skin from forming, but only if you do it immediately after transferring the pudding to the serving dishes, and then leave it on until the pudding has cooled completely. I do not usually bother with this for us, but will do it if I’m serving the pudding to company.