- Prep
- 5 min
- Cook
- 10 min
- Total
- 15 min
- Serves
- 2
Ingredients
What you’ll need — tap to tick off as you go
- 480 ml
- 85 g
- 2 tbsp
- 2 tbsp
- 1 pinch
- ½ tsp
- 60 ml
Process
Timers built in · swap anything · ask as you cook
Chop the dark chocolate into small, even pieces and set aside so it melts quickly and smoothly.
In a small bowl, whisk the unsweetened cocoa powder with 2 tbsp of the whole milk and the granulated sugar until it forms a smooth, lump-free paste.
Pour the remaining whole milk into a medium saucepan and warm over medium heat until steam rises and small bubbles appear around the edge, about 3 to 4 minutes. Do not let it come to a rolling boil.
Whisk the cocoa paste into the warm milk and cook for 1 minute, whisking constantly, until fully dissolved and slightly thickened.
Reduce the heat to low, add the chopped dark chocolate and the pinch of fine salt, and whisk gently for 2 to 3 minutes until the chocolate is completely melted and the drink is glossy.
Remove the saucepan from the heat and stir in the vanilla extract, if using.
Pour into two warmed mugs and top with whipped cream and marshmallows, if desired. Serve immediately.

Kitchen notes
Kitchen notes
- The most common mistake is adding chocolate to milk that is too hot or boiling; this can cause the cocoa butter to separate and leave a greasy film. Keep the milk at a gentle steam and melt the chocolate over low heat.
- Whisking the cocoa powder into a paste with a little cold milk before adding it to the saucepan prevents dry lumps that are almost impossible to break up later.
- The hot chocolate is ready when it coats the back of a spoon and looks glossy, not chalky. If it tastes thin, simmer 1 more minute; if too thick, whisk in a splash more milk.
- For an extra-thick, European-style drink, replace 2 tbsp of the milk with 2 tbsp of cornstarch slurry, but whisk it in during step 4 and cook for 2 minutes.
Substitutions
- whole milk→oat milk or almond milk for a dairy-free version
- dark chocolate→semi-sweet chocolate chips, chopped
- granulated sugar→maple syrup or honey, added to taste
- whipped cream→coconut whipped cream for dairy-free
Storage & reheating
Store leftover hot chocolate in a sealed jar or airtight container in the refrigerator for up to 3 days. It will thicken when cold. Reheat gently in a saucepan over low heat, whisking constantly, or in the microwave in 30-second bursts, stirring between each, until steaming but not boiling. Do not freeze; the dairy and chocolate will separate and turn grainy.
FAQ
The questions we get asked most
Why did my hot chocolate turn out grainy or lumpy?
Graininess usually comes from adding cocoa powder directly to hot liquid or from chocolate that was heated too quickly. Always whisk the cocoa powder with a little cold milk first to make a paste, and melt the chopped chocolate over low heat, stirring constantly. If lumps have already formed, pour the drink through a fine-mesh strainer and reheat gently.
Can I make this hot chocolate ahead of time for a party?
Yes. Make it up to 3 days ahead and store it in a sealed container in the fridge. Reheat it gently on the stovetop over low heat, whisking often, or in a slow cooker on the warm setting. Do not let it boil, or the chocolate may separate. Add the vanilla and toppings just before serving.
Can I use milk chocolate or white chocolate instead of dark chocolate?
You can, but the drink will be much sweeter and less intense. If using milk chocolate, reduce the sugar to 1 tbsp and add an extra 1 tbsp of cocoa powder to deepen the flavor. White chocolate has no cocoa solids, so add 1 tbsp of cocoa powder and a pinch more salt to keep it from tasting flat.
How do I make this hot chocolate dairy-free?
Replace the whole milk with oat milk or canned coconut milk for the creamiest result. Use a dairy-free dark chocolate that does not contain milk fat or milk solids, and skip the whipped cream or use coconut whipped cream. Oat milk is the best match for texture because it does not curdle when heated.
Why is my hot chocolate not thick enough?
The thickness comes from the cocoa butter in real chocolate and from the cocoa powder. If yours is thin, you may have used too little chocolate or a low-cocoa-percentage bar. Whisk in 15 g more chopped dark chocolate and simmer for 1 minute, or add 1 tsp of cornstarch slurry and cook for 2 minutes until it coats a spoon.
Can I use hot chocolate powder instead of cocoa powder and chocolate?
You can, but the result will be much sweeter and less rich. Use 3 tbsp of hot chocolate powder and omit the sugar, then add 30 g of chopped dark chocolate for body. The drink will not be as thick or glossy as the version made with real chocolate and cocoa powder.
How do I know when the hot chocolate is done?
It is ready when it is steaming gently, looks glossy, and coats the back of a spoon without dripping off immediately. The chocolate should be fully melted with no visible specks. If you see a greasy sheen on the surface, it has overheated; whisk in a splash of cold milk to bring it back together.
Ask KitchenMind about this recipe
Tell it what’s different tonight — it works within the actual recipe.


