This homemade hot chocolate is creamy, thick, and flavorful, made with both melted chocolate and cocoa powder. It’s a perfect cozy treat for a cold day!

This hot chocolate recipe is so much better than a powdered mix! Made with two types of chocolate—a chopped bar and cocoa powder—it’s deliciously rich, creamy, and just the right amount of sweet. It’s super easy to make too—it comes together with 5 simple ingredients in under 10 minutes.
We’ve already made this homemade hot chocolate a few times this December, and I have a feeling that it’ll stay on repeat all month long. It’s the perfect warming treat for a cold winter night, especially if you have a kid (like ours) who loves cozying up under the Christmas tree with a mug to sip.
Enjoy it plain, or top it with whipped cream, marshmallows, and/or shaved chocolate. I hope you love this hot chocolate recipe as much as we do!

Homemade Hot Chocolate Ingredients
Here’s what you’ll need to make this recipe:
- Milk – Any kind! Whole milk will create the thickest, richest texture, though I’ve also had great results using a plant-based milk like almond milk or oat milk.
- Chopped dark chocolate – The key ingredient that sets this recipe apart from a hot cocoa mix! It makes this hot chocolate thick, creamy, and intensely chocolatey. I typically use a 70% dark chocolate bar, but feel free to use whatever level you like best. The lower the percentage, the sweeter the hot chocolate will be.
- Cocoa powder – It deepens the chocolate flavor without adding extra sugar.
- Granulated sugar – For sweetness. If you’d like to sweeten it naturally, replace the sugar with 2 tablespoons maple syrup.
- And vanilla extract – For warm depth of flavor.
Find the complete recipe with measurements below.

How to Make Hot Chocolate
This recipe is super easy to make!
- First, dissolve the sugar and the cocoa powder in the milk. Combine all three in a medium saucepan. Cook, stirring occasionally, over medium heat until smooth and heated through, 3 to 4 minutes.
- Then, add the chopped chocolate. Reduce the heat to low and whisk until the chocolate melts and the mixture is smooth.
- Pour in the vanilla and season to taste. Stir in a little more sugar if you’d like it to be sweeter, or add a tiny pinch of salt to balance the flavors.
That’s it!
Recipe Tips
- Don’t let it come to a boil. My #1 tip for making hot chocolate from scratch! If it comes to a boil at any time, the chocolate can separate, giving it a grainy texture.
- Variations are fair game. Try adding a drop of peppermint extract instead of vanilla, or stir in a little cinnamon (or cayenne!) along with the cocoa powder. You could even add a shot of espresso for a richer flavor!

Ways to Serve Hot Chocolate
You don’t need to serve this cozy drink with anything extra—it’s decadent and delicious on its own.
But toppings are really fun here, especially around the holidays or if you’re making this with kids. Here are some of our favorites:
- Whipped cream
- Marshmallows or mini marshmallows
- Mini chocolate chips or chocolate shavings (just peel the edge of a chocolate bar with a vegetable peeler!)
- Candy canes
- Cinnamon sticks
How do you like to serve homemade hot chocolate? Let me know in the comments!

More Cozy Drinks
If you love this recipe, try one of these cozy drinks next:

Homemade Hot Chocolate Recipe
Serves 4
Skip the store-bought packet—this homemade hot chocolate is easy to make from scratch! Using a combination of cocoa powder and chopped dark chocolate gives it a rich, creamy texture and deep chocolate flavor. Enjoy plain or top with marshmallows, whipped cream, and/or chocolate shavings!
Serving Options
- Whipped cream or marshmallows
- Chocolate shavings
Prevent your screen from going dark
-
In a medium saucepan, whisk together the milk, cocoa powder, and sugar. Place over medium heat and cook, stirring occasionally, for 3 to 4 minutes, or until smooth and heated through. Be careful not to let the mixture come to a boil.
-
Reduce the heat to low and add the dark chocolate. Whisk until the chocolate melts and the mixture is smooth, then add the vanilla and whisk to combine.
-
Pour into mugs and serve topped with whipped cream and chocolate shavings, if desired.
