Hot Chocolate · Rich Stovetop
Rich and Creamy Stovetop Hot Chocolate
Real chocolate and cocoa melted into warm milk for a thick, velvety mug that beats any packet. Ready in 10 minutes, perfect after sledding or on a movie night.
- Prep
- 3 min
- Cook
- 7 min
- Total
- 10 min
- Serves
- 2 mugs
- Level
- Easy
Ingredients
- 2 cups whole milk
Swaps for whole milk
Instead of milk
- Unsweetened soy milk: The same amount. The closest plant milk for baking: its protein helps things brown and set.
- Unsweetened oat milk: The same amount. Creamy and mild with a hint of sweetness.
- Unsweetened almond milk: The same amount. Thinner and less rich, so cakes are a little paler and drier.
Cooking for an allergy? Check every label.
- 2 tbsp unsweetened cocoa powder
Swaps for unsweetened cocoa powder
Instead of cocoa powder
- Natural and Dutch-process cocoa: The same amount. Swap freely when the recipe uses baking powder.
- Unsweetened chocolate: 1 oz melted unsweetened chocolate for each 3 tbsp cocoa; cut the butter or oil by 1 tbsp. Fudgier and richer.
- Carob powder: The same amount. Caffeine-free and naturally sweet, but it tastes like carob, not chocolate.
- 2–3 tbsp granulated sugar
Swaps for granulated sugar
Instead of sugar
- Less sugar: Up to ¼ less in cookies, muffins and quick breads. Less browning and spread, a drier, more cake-like texture, and bakes go stale sooner.
- Brown sugar: The same amount, packed. Moister and chewier, with a caramel flavor and darker color.
- Coconut sugar: The same amount. Darker and caramel-like, a little less sweet; cookies spread slightly less.
- 1 pinch kosher salt
Swaps for kosher salt
Instead of salt
- Table salt or fine sea salt: About half as much as Diamond Crystal kosher, about ¾ as much as Morton kosher. The same saltiness when measured this way.
- Salt by weight: 1 tsp is about 6 grams of table salt, 5 grams of Morton kosher, 3 grams of Diamond Crystal kosher. The most reliable way to swap, especially in baking and brines.
- 2 oz semisweet chocolate, finely chopped, or 1/3 cup chips
Swaps for semisweet chocolate
Instead of chocolate and chocolate chips
- Semisweet and bittersweet: The same amount, either way. Bittersweet is less sweet and more intense; semisweet is milder and sweeter.
- Chopped bar chocolate for chips: The same weight (a 12 oz bag of chips is about 2 cups). Melty puddles and streaks instead of neat chips.
- Chips for bar chocolate when melting: The same weight. Chips melt thicker and less smoothly, so ganache and glazes are a bit stiffer.
- ¼ tsp vanilla extract
Swaps for vanilla extract
Instead of vanilla extract
- Vanilla bean paste: The same amount. Stronger, with visible vanilla seeds.
- Vanilla bean: The seeds of 1 bean for each 1 tbsp extract. A deeper, floral flavor and visible seeds.
- Alcohol-free vanilla: The same amount. Made with glycerin; a slightly milder taste.
- marshmallows or whipped cream, for topping (optional)
Weights from USDA FoodData Central cup weights. Counted things (eggs, cloves, cans) stay as counts, and salt stays in spoons: kosher and flaky salts weigh very differently by brand.
Missing something? Tap Swaps next to an ingredient, or see all substitutions.
Steps
- In a small saucepan,the cocoa, sugar and salt with about 1/4 cup of the milk to make a smooth paste.
whisk (how to whisk)
Whisk Beat ingredients with a whisk to mix them smoothly or to add air. 1. Use a bowl big enough to whisk without splashing; set it on a damp towel to stop it spinning.2. Hold the whisk loosely and move it in quick circles or side to side, touching the bottom.3. For lumpy mixtures, add liquid a little at a time and whisk after each.4. For sauces on the stove, keep the whisk moving across the whole bottom of the pan. Done when: The mixture is even with no lumps or streaks of egg. How to whisk: mistakes to avoid - Whisk in the rest of the milk and warm over medium heat, whisking often, until steaming with small bubbles at the edges. Don't let it⏱ Warm milk: 5 min.
boil (how to boil)
Boil Heat liquid until big bubbles rise and break all over the surface. 1. Use a pot big enough that the water fills it no more than three quarters.2. Cover it to boil faster, over high heat.3. Salt pasta or vegetable water once it boils.4. Add the food, stir, and bring it back to a boil before you start timing. Done when: A rolling boil keeps bubbling hard even when you stir. Safety: Turn pot handles toward the back of the stove, and drain pasta into a colander in the sink, pouring away from you. Steam burns fast: lift lids and foil away from your face, tipping the far edge up first.How to boil water for pasta and vegetables: mistakes to avoid - Lower the heat and whisk in the chopped chocolate until fully melted and smooth.⏱ Melt chocolate: 2 min
- Take it off the heat, stir in the vanilla, taste and add more sugar if you like. Pour into mugs and top with marshmallows or whipped cream.
Tap an underlined word for how to do it, or see all techniques.
Tips
- Stir in a pinch of cinnamon or a drop of peppermint extract for a holiday twist.
- Oat milk makes an excellent dairy-free version; use dairy-free chocolate too.
Storage
Refrigerate leftovers up to 3 days and rewarm gently, whisking.
How long leftovers keep, and freezing and reheating: leftovers and storage.
Quick answers
- What can I swap?
- Instead of milk: Unsweetened soy milk, the same amount.
- Instead of cocoa powder: Natural and Dutch-process cocoa, the same amount.
Cooking for an allergy? Check every label.
Answered from this recipe's own storage, make-ahead and swap notes.
Estimated nutrition per serving
- Calories
- 360 1,510 kJ
- Protein
- 10 g
- Carbohydrates
- 49 g
- Fiber
- 4 g
- Sugars
- 44 g
- Fat
- 17 g
- Saturated fat
- 10 g
- Sodium
- 160 mg
Whole recipe, 2 servings: about 720 calories.
Estimate from USDA FoodData Central; not medical or dietary advice. Based on 6 of 6 ingredients.
How we estimate
We add up USDA FoodData Central values for each measured ingredient as written and divide by the recipe's 2 servings, so changing the servings or units here doesn't change a serving. Brands, swaps, trimming and cooking all change the real numbers.
Not counted: marshmallows or whipped cream (to taste or as needed).
Estimated cost
About $0.75 a serving
About $1.50 for the recipe as written (2 servings).
Estimate; prices vary by store and region. U.S. average prices for September 2026 from BLS Average Price Data and USDA ERS Purchase to Plate prices updated with the BLS Consumer Price Index. Priced: 4 of 6 ingredients, 100% by weight.
How we estimate
Each measured ingredient is weighed as in the nutrition estimate and priced at the U.S. average: BLS's average price where BLS publishes one, else USDA ERS's Purchase to Plate price for 2017-18 raised to September 2026 with the CPI for that food group. Whole packages, store brands, sales and regions all change the real cost: treat it as a ballpark.
- semisweet chocolate $0.70 ERS
- whole milk $0.50 BLS
- unsweetened cocoa powder $0.25 ERS
- granulated sugar $0.05 BLS
Not priced (no official average price we can match, so not in the total): kosher salt, vanilla extract.
Not counted: marshmallows or whipped cream (optional, or to taste).
More dishes for less: cheap eats.
Keep this one
Sign in to save recipes into your own collections, log the days you cook them and keep private notes, like "use less sugar next time". Only you see them.
Sign in to saveNo password: we email you a code.
Gear for this recipe
- See price on Amazon: 3-quart saucepan (opens Amazon)
- See price on Amazon: Balloon whisk (opens Amazon)
- See price on Amazon: Measuring cups and spoons (opens Amazon)
- See price on Amazon: 8-inch chef's knife (opens Amazon)
- See price on Amazon: Large cutting board (opens Amazon)
As an Amazon Associate we earn from qualifying purchases. Brands are suggestions; any similar item works.
Cleanup score 5/5 (very easy cleanup): 1 thing to wash, saucepan.
Reviews (0)
No reviews yet. Made it? Tell us how it went.
simmerbee.com/r/hot-chocolate-richSimmerbee