The Best Hot Chocolate Recipe

This rich and creamy hot chocolate recipe is made with real bittersweet chocolate, cocoa powder, and warm milk for the smoothest, most flavorful cup. Ready in 10–15 minutes, this homemade hot chocolate is the perfect cozy drink for winter and holidays.
4.78 from 9 votes
5
Comments
Jump to Recipe
Jump to Video
hot chocolate in a mug with marshmallows on top and around the bottom of the cup.

5 stars

This is delicious! You must try it! ~Donna Neal

It’s official – I’ve done it. I’ve created the very best cup of hot chocolate! After testing more than a dozen versions with different chocolate ratios, milks, and techniques, I refined this recipe to achieve the perfect balance of richness, sweetness, and creaminess.

I’ve had my family and friends test several variations and vote on each one. (Not that I had to convince anyone to taste test homemade hot chocolate.) After the first few rounds, we immediately discarded ones made with just cocoa powder and ones made with higher ratio of chocolate to milk.

Using just cocoa powder just did not give the drink any body or richness, and it always tasted a little bit grainy. The cups that featured more chocolate than milk were way too thick! I felt like I was sipping on chocolate syrup.

So after testing out all the recipes, the best results came from a combination of chopped chocolate and cocoa powder. Both provide a little something to make the drink pleasant with just the right thickness. Bittersweet chocolate was the best tasting chocolate to use. 

After trying a few different milks and a combination of milk and cream, 2% milk and whole milk without any cream yielded the best flavor and texture. The result is a little lighter with 2% milk and chocolate comes through strong and smooth. Whole milk makes a more creamy hot chocolate and fuller body. 

labeled ingredients for hot chocolate on a wood surface.

Key Ingredients and Substitutions

Milk – as I mentioned, through rigorous testing, we found that 2% milk actually works the best but if you want to have a riches and creamier hot chocolate, go with whole milk.

Chocolate – for a well balanced cup of hot cocoa that is rich in chocolate flavor, I recommend using bittersweet chocolate or darker chocolate if you prefer. If you’re really not into darker chocolate and feel strongly against it, use milk chocolate.

Difference in cocoa powder:

  • Dutch-processed cocoa powder is treated with an alkaline solution to neutralize its natural acidity. This gives it a darker color, milder flavor, and makes it smoother and less bitter. It doesn’t react with baking soda because it’s not acidic. Great for hot chocolate!
  • Natural (regular) cocoa powder is untreated, so it’s lighter in color, sharper and more intense in flavor, and naturally acidic. This acidity can affect reactions in baking, but for hot chocolate it mainly impacts flavor—natural cocoa tastes brighter and more robust, while Dutch tastes deeper and smoother.
sifting the coco powder into a pot of milk.

How to Make Hot Chocolate

Combine the milk and cocoa powder. Set the stove heat to medium (or a little below if you stove runs hot) and heat up milk in a sauce pot until hot but not simmering. Heat until steam rises and small bubbles start to form around the edges—not a full simmer. Lower the heat to medium low! Use a fine strainer or a mesh sugar shaker to sift in the cocoa powder to ensure that there are no clumps.

adding chopped chocolate to the pot.

Add chocolate. Make sure you chop the chocolate before starting to make the cocoa and chop it into small pieces! The smaller the pieces, the faster it will melt. Whisk the chopped chocolate bar into the hot milk until smooth.

adding vanilla to the pot that is sitting on a wood surface.

Add final ingredients. Mix in the vanilla extract and sugar. Vanilla is best to add at the end in recipes like hot chocolate, pudding, and custards to preserve the delicate flavor and make sure it doesn’t evaporate with higher heat.

Stir and cook. Continue to cook over the lower heat for just a few minutes. Remember to slowly stir from time to time.

pouring the hot chocolate from a pot into a mug.

Tips for the Best Hot Chocolate

Never boil milk! Make sure to cook your hot cocoa over medium to medium-low heat, not higher. Don’t let the milk boil or it will curdle. 

Don’t try to speed up the process. Give you milk about 10-15 minutes to cook on medium-low heat after you’ve added all ingredients. This will help cocoa powder incorporate best for a smooth hot chocolate.

Don’t be scared of milk skin (lactoderm). It forms on top of milk when the liquids evaporate and proteins coagulate. Most people find it unpleasant in texture, but it’s harmless and you can simply stir it back into the drink. To prevent milk skin from forming, make sure to slowly stir the hot chocolate as it cooks, and often. Stir it often as it cools as well. 

Milk alternatives – you can easily use lactose free milk if you need to or dairy free milk. To use dairy free milk alternative, I recommend using oat milk.

Recipe FAQs

What is the difference between natural and Dutch processed cocoa powder?

Essentially, cocoa powder is cocoa beans that are dried, fermented, roasted, and ground into the powder. Natural cocoa powder is lighter in color, has a higher acidity level and has a noticeably more bitter, rich chocolate flavor. It’s great for baking chocolate cakes, brownies, cookies, and many other baked recipes.

Dutch cocoa powder is darker and deeper in color and has lower acidity because it’s alkalized with the Dutching process. The key difference comes in during baking, because you will need to know which leavener to use. Since we are making hot chocolate and not baking, it won’t matter much which one you use.

How to keep hot chocolate warm?

Transfer the cooked cocoa into a Crockpot and keep it warm on the warm setting during the party/gathering. Remember, add the toppings to each cup when serving – don’t just toss them into the Crockpot. If you see a darker coating on the surface of hot chocolate, don’t worry. Just give it a good stir to mix it in. It’s actually best to give the cocoa a good stir before getting each serving out.

two mugs of hot chocolate on a wood cutting board.

Storing and Reheating Hot Chocolate

You can store leftover hot chocolate in a glass jar with a lid or any airtight food storage container. Make sure to keep it refrigerated. Properly stored, it should be good for 2-3 days.

To reheat hot chocolate, transfer it into a small sauce pot and heat through just until hot. Make sure to reheat it slowly over medium-low heat.

two mugs of hot chocolate with marshmallows in on top and sliced chocolate and marshmallows aground the bottom.

More Hot Chocolate Recipes

If you love this classic version, you’ll enjoy exploring some of my other hot chocolate favorites. For a festive twist, try my Peppermint White Hot Chocolate or the cozy, warming flavor of Caramel Spicy Hot Chocolate. If you’re craving something extra indulgent, Slow Cooker Butterscotch Hot Chocolate is always crowd-pleasers. Adults can also enjoy a richer, more decadent mug with options like Red Wine Hot Chocolate, Spiked Nutella Hot Chocolate, or classic Spiked Hot Chocolate. Each recipe offers its own spin on a winter favorite, so you can pick the perfect cup for any mood or occasion.

PIN THIS RECIPE FOR LATER

DID YOU MAKE THIS RECIPE? PLEASE leave a 🌟 star rating! Let me know how you liked it by leaving the 📝 comment below or share and tag me on social media @willcookforsmiles. DON’T FORGET to subscribe to my newsletter!

The Best Homemade Hot Chocolate Recipe

This rich and creamy hot chocolate recipe is made with real bittersweet chocolate, cocoa powder, and warm milk for the smoothest, most flavorful cup. Ready in 10–15 minutes, this homemade hot chocolate is the perfect cozy drink for winter and holidays.
4.78 from 9 votes
Print Pin Video Rate
Course: Drinks
Cuisine: American
Diet: Gluten Free
Prep Time: 5 minutes
Cook Time: 10 minutes
Total Time: 15 minutes
Servings: 4
Calories: 287kcal
Author: Lyuba Brooke

Ingredients

  • 3 cups 2% milk (may also use whole milk)
  • 4 oz bittersweet baking chocolate bar chopped
  • 2 tbsp unsweetened cocoa powder
  • 1/4 cup white granulated sugar
  • 1 tsp vanilla extract

Instructions

  • Chop the chocolate bar into small pieces ( the smaller the pieces, that easier to melt).
  • Heat the milk in a saucepan over medium heat until it’s steaming and tiny bubbles start to form around the edges (about 3–4 minutes). Do not boil — boiling can cause curdling.
  • Use a fine strainer or a mesh sugar shaker to sift in the cocoa powder to ensure that there are no clumps.
  • Whisk in the cocoa powder and make sure to break up any tiny clumps if they form. Add chocolate and sugar. Slowly continue whisking as chocolate is melts and incorporates into milk.
  • Lower the heat to medium low.
  • Continue to cook for a few minutes. Make sure to slowly stir from time to time. It should look velvety and coat the back of a spoon. Add vanilla extract before taking off heat.
  • Take off heat and serve.

Video

Notes

  • Milk alternatives – you can easily use lactose free milk if you need to or dairy free milk. To use dairy free milk alternative, I recommend using oat milk
  • Chocolate Percentage: Bittersweet chocolate between 60–70% cocoa melts smoothly and creates the richest flavor. If using semisweet (50–60%), reduce the added sugar slightly. For very dark chocolate (70%+), add 1–2 teaspoons more sugar to balance bitterness.
  • Never boil milk! Make sure to cook your hot chocolate over medium to medium-low heat, not higher. Don’t let the milk boil or it will curdle. 
  • Don’t try to speed up the process. Give you milk about 10-15 minutes to cook on medium-low heat after you’ve added all ingredients. This will help cocoa powder incorporate best for a smooth hot chocolate.
  • Don’t be scared of milk skin (lactoderm). It forms on top of milk when the liquids evaporate and proteins coagulate. Most people find it unpleasant in texture, but it’s harmless and you can simply stir it back into the hot chocolate. To prevent milk skin from forming, make sure to slowly stir the hot chocolate as it cooks, and often. Stir it often as it cools as well. 
  • Easy to double: This hot chocolate recipe serves 4, but you can easily adjust it to as much as you need. You can double or triple this recipe, especially if you’re preparing for a party.

Nutrition

Calories: 287kcal | Carbohydrates: 31g | Protein: 10g | Fat: 19g | Saturated Fat: 12g | Cholesterol: 14mg | Sodium: 91mg | Potassium: 521mg | Fiber: 6g | Sugar: 22g | Vitamin A: 181IU | Vitamin C: 1mg | Calcium: 244mg | Iron: 5mg
Tried this recipe?Mention @willcookforsmiles or tag #willcookforsmiles!

Originally published on Will Cook For Smiles in November, 2019.

Would you like to save this recipe?

We'll email this post recipe to you, so you can come back to it later!

Categories:

, , , , , , , ,

All images and text ©Lyubov Brooke for ©Will Cook For Smiles. Please do not use my images without prior permission. If using my posts in collections and features, please link back to this post for the recipe.
Disclaimer: Nutrition information shown is not guaranteed to be 100% accurate as most ingredients and brands have variations.

4.78 from 9 votes (6 ratings without comment)

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating




This site uses Akismet to reduce spam. Learn how your comment data is processed.

5 Comments

  1. Donna Neal says:

    5 stars
    This is delicious! You must try it!

    1. So glad you liked it, Dona! 🙂

  2. 5 stars
    My husband loved this hot chocolate. I decreased the milk to 2 1/2 cups (.1 3/4 of 2% milk + 3/4 c of half & half ).

  3. Charlene filz says:

    5 stars
    Wondrtful and I loved it. The grand kids loved it

    1. I am so happy to hear that, Charlene!

More Recipes...