Go Back
+ servings
rich and creamy homemade hot chocolate in a white mug with a spoon
Print Recipe
5 from 60 votes

Rich and Creamy Homemade Hot Chocolate

A rich & creamy homemade hot chocolate ready in under 10 minutes! Made with real chocolate - semisweet & bittersweet chocolate, cocoa powder & vanilla. This is the best homemade hot chocolate recipe!
Prep Time5 mins
Cook Time4 mins
Total Time9 mins
Course: Dessert, Drinks
Cuisine: American
Servings: 4
Calories: 374kcal



  • marshmallows
  • whipped cream
  • chocolate syrup

Optional Spices:

  • pinch of cinnamon
  • pinch of instant espresso powder
  • pinch of nutmeg
  • pinch of cayenne pepper


  • Add the cornstarch to the milk and whisk it together until there are no more lumps. Next add the milk, heavy cream, and cocoa powder to a pot heated over medium low heat. Stir constantly so a skin doesn't form on top of the milk. You can add in any additional spices at this time.
  • Once you start to see steam rising and little bubbles forming on the sides of the pot, remove the pot from the heat. Do not let this boil as the milk will curdle and the hot chocolate will get grainy. Add the chopped chocolate and vanilla to the pot and stir constantly until the chocolate completely melts through. It will look grainy in the beginning but it will become smooth and silky. Add sugar to taste. You may not need additional sugar.
  • Serve immediately and add your toppings.



  • You can substitute chocolate chips instead of chocolate bars. A 4oz bar of chocolate is a little under 1 cup so you can substitute that same amount of chocolate chips.
  • If using milk chocolate or white chocolate, I recommend reducing or omitting the sugar as those chocolates have more sugar than dark chocolate. Add according to taste.
  • Dutch processed cocoa powder is alkalized to remove the natural acidity of regular cocoa powder. Dutch process cocoa powder gives this a smoother finish and more mild chocolate taste. Regular cocoa powder can certainly be used as well. 
Storage & Leftovers:
  • Hot chocolate can be made in a day in advance and stored in an airtight container in the fridge. Place a layer of plastic wrap on the surface to prevent a skin from forming.
  • To reheat, place it on the stovetop over low heat and stir it constantly until it's warmed through. This is to ensure it doesn't form a skin on top which would add graininess to the hot chocolate.
  • Be careful not to boil the hot chocolate as it can end up curdling the milk.
Slow cooker or crock pot:
You can definitely use a slow cooker or crock pot to keep the hot chocolate warm. I recommend the following steps:
  • To avoid forming a skin, keep a tight lid on the crock pot and keep it closed at all times, except for serving.
  • Before and after serving, give the hot chocolate a quick stir.
  • The skin forms as a result of surface evaporation and the proteins in the milk solidifying. Keeping the surface moist should help prevent a skin from forming.
  • Be sure to keep the setting on warm and avoid boiling the hot chocolate.


Calories: 374kcal | Carbohydrates: 27g | Protein: 7g | Fat: 26g | Saturated Fat: 16g | Cholesterol: 44mg | Sodium: 73mg | Potassium: 417mg | Fiber: 3g | Sugar: 21g | Vitamin A: 541IU | Calcium: 197mg | Iron: 2mg