I have the creamiest, richest chocolate pudding imaginable, so glossy and silky you will have to keep scrolling to believe it’s homemade.

I’m obsessed with this chocolate pudding because it tastes like serious chocolate without being cloying. I love the silky mouthfeel and the way unsweetened cocoa powder gives a real, bitter chocolate note that sings against a touch of vanilla extract.
It’s the kind of dessert that makes me stop scrolling and actually savor a spoonful. Creamy, dense, but never heavy.
And it looks ridiculously glossy in the jar. One bite and I want another.
Not fancy. Just honest, intense chocolate that reminds me why I bother making things from scratch.
I hoard secret jars in the back of my fridge.
Ingredients

- Whole milk — makes it creamy and comforting, like cozy dessert you’ll spoon right away.
- Sugar — adds sweet balance, cuts bitterness, makes it feel like a treat.
- Cocoa powder — gives chocolate punch and slight tang, keeps it real chocolatey.
- Cornstarch — thickens without lumps, makes that silky pudding texture you want.
- Fine salt — wakes up the chocolate, makes flavors pop without being salty.
- Egg yolks — add richness and body, makes it feel custardy and indulgent.
- Unsalted butter — smooths and rounds edges, gives glossy finish and mouthfeel.
- Vanilla extract — adds warmth and familiarity, basically comfort in a teaspoon.
- Chopped chocolate — optional extra depth and melt-in-your-mouth decadence if you want.
- Whipped cream — light fluffy contrast, makes each spoonful feel fancy.
- Flaky salt — tiny sparkles of saltiness, pops against the sweet chocolate.
Ingredient Quantities
- 2 3/4 cups whole milk, room temp
- 1/2 cup granulated sugar
- 1/3 cup unsweetened cocoa powder, sifted if lumpy
- 1/4 cup cornstarch
- 1/4 teaspoon fine salt
- 3 large egg yolks, lightly beaten
- 2 tablespoons unsalted butter, cut into pieces
- 1 teaspoon pure vanilla extract, or a little more if you like
- 2 ounces semisweet or dark chocolate, chopped (optional for extra richness)
- Whipped cream or flaky salt for serving (optional)
How to Make this
1. In a medium bowl whisk together sugar, sifted cocoa powder, cornstarch and salt so there are no lumps.
2. Pour 2 1/4 cups of the room temp milk into a medium saucepan and heat over medium, stirring now and then until it is warm but not boiling.
3. Gradually whisk about half of the warm milk into the beaten egg yolks to temper them, then pour the egg mixture back into the saucepan with the remaining milk and stir to combine.
4. Whisk in the dry mixture from step 1 into the saucepan until smooth, scraping the sides and bottom so nothing sticks.
5. Cook the pudding over medium heat, whisking constantly, until it thickens and just comes to a gentle simmer; this usually takes 4 to 6 minutes. Once it thickens, keep cooking and whisking for another 30 to 60 seconds to cook the cornstarch taste out.
6. Remove from heat and immediately stir in the butter, vanilla and the chopped semisweet or dark chocolate if using; whisk until everything is glossy and smooth.
7. For the silkest texture, pour the pudding through a fine mesh sieve into a clean bowl to catch any cooked bits or lumps. Press with a spatula if needed.
8. Cover the surface with plastic wrap so it touches the pudding to prevent a skin forming, then chill in the fridge at least 2 hours, or until fully set.
9. Before serving, whisk briefly to loosen if very firm. Spoon into bowls and top with whipped cream or a sprinkle of flaky salt if you like that sweet and salty thing.
10. Store leftovers in an airtight container in the fridge for up to 4 days. Re-whisk gently before serving, and enjoy.
Equipment Needed
1. Medium mixing bowl — for whisking the dry ingredients and tempering the yolks
2. Medium heavy-bottomed saucepan — to warm milk and cook the pudding slowly
3. Whisk — you need one to keep things lump free and to whisk constantly
4. Fine mesh sieve — to strain the pudding for a silky smooth finish
5. Rubber spatula — to scrape the pan and press the pudding through the sieve
6. Measuring cups and spoons — for accurate milk, sugar, cocoa, cornstarch and salt
7. Small bowl or heatproof cup — to hold the tempered egg yolks while you combine them
8. Plastic wrap or parchment — to cover the pudding surface so it won’t form a skin
9. Knife and cutting board — to chop the chocolate and cut the butter into pieces
10. Airtight container or serving bowls — for chilling and storing leftovers
FAQ
The Best Homemade Chocolate Pudding Recipe Substitutions and Variations
- Whole milk: use 2 cups whole milk plus 3/4 cup half and half for richer pudding, or use full fat canned coconut milk (same amount) for dairy free. Coconut will add a slight coconut taste, but it works great.
- Granulated sugar: swap for light brown sugar 1:1 for a hint of caramel flavor, or use 1/3 cup pure maple syrup (reduce milk by 2 to 3 tablespoons so it doesnt get too loose).
- Cornstarch: replace with arrowroot powder 1:1 for a clearer, silkier texture, or use all purpose flour at 2 times the amount (so 1/2 cup flour) but it will be a little less glossy and may need a bit more cooking.
- Egg yolks: you can use 3 whole eggs (beat and strain if you want a super smooth pudding) or for a vegan option use 1/4 cup aquafaba plus an extra tablespoon cornstarch to help set. Whole eggs make it slightly firmer, aquafaba keeps it egg free.
Pro Tips
1) Warm the milk slowly and don’t rush it. If it gets too hot you’ll cook the eggs when you add them back and end up with tiny curdled bits. If it looks like it’s about to boil just take it off the heat for a few seconds, then turn it back on. Trust your eyes not the clock.
2) Use a small ladle or measuring cup to add the warm milk to the yolks while whisking constantly. Doing it in one go will scramble them. Also stir the pot from the bottom and sides while it thickens, otherwise the cornstarch can stick and burn.
3) If you want extra silky pudding, strain it through a fine mesh sieve right after cooking, while it’s still hot. Press gently with a spatula to get all the goodness through. Then press plastic wrap directly on the surface so a skin does not form.
4) For deeper chocolate flavor add the chopped chocolate last, off the heat, and stir until glossy. If you’re short on time or want a richer result, swap 1/2 cup of the milk for heavy cream, but know the texture will be heavier and more decadent.

The Best Homemade Chocolate Pudding Recipe
I have the creamiest, richest chocolate pudding imaginable, so glossy and silky you will have to keep scrolling to believe it's homemade.
6
servings
278
kcal
Equipment: 1. Medium mixing bowl — for whisking the dry ingredients and tempering the yolks
2. Medium heavy-bottomed saucepan — to warm milk and cook the pudding slowly
3. Whisk — you need one to keep things lump free and to whisk constantly
4. Fine mesh sieve — to strain the pudding for a silky smooth finish
5. Rubber spatula — to scrape the pan and press the pudding through the sieve
6. Measuring cups and spoons — for accurate milk, sugar, cocoa, cornstarch and salt
7. Small bowl or heatproof cup — to hold the tempered egg yolks while you combine them
8. Plastic wrap or parchment — to cover the pudding surface so it won’t form a skin
9. Knife and cutting board — to chop the chocolate and cut the butter into pieces
10. Airtight container or serving bowls — for chilling and storing leftovers
Ingredients
2 3/4 cups whole milk, room temp
1/2 cup granulated sugar
1/3 cup unsweetened cocoa powder, sifted if lumpy
1/4 cup cornstarch
1/4 teaspoon fine salt
3 large egg yolks, lightly beaten
2 tablespoons unsalted butter, cut into pieces
1 teaspoon pure vanilla extract, or a little more if you like
2 ounces semisweet or dark chocolate, chopped (optional for extra richness)
Whipped cream or flaky salt for serving (optional)
Directions
- In a medium bowl whisk together sugar, sifted cocoa powder, cornstarch and salt so there are no lumps.
- Pour 2 1/4 cups of the room temp milk into a medium saucepan and heat over medium, stirring now and then until it is warm but not boiling.
- Gradually whisk about half of the warm milk into the beaten egg yolks to temper them, then pour the egg mixture back into the saucepan with the remaining milk and stir to combine.
- Whisk in the dry mixture from step 1 into the saucepan until smooth, scraping the sides and bottom so nothing sticks.
- Cook the pudding over medium heat, whisking constantly, until it thickens and just comes to a gentle simmer; this usually takes 4 to 6 minutes. Once it thickens, keep cooking and whisking for another 30 to 60 seconds to cook the cornstarch taste out.
- Remove from heat and immediately stir in the butter, vanilla and the chopped semisweet or dark chocolate if using; whisk until everything is glossy and smooth.
- For the silkest texture, pour the pudding through a fine mesh sieve into a clean bowl to catch any cooked bits or lumps. Press with a spatula if needed.
- Cover the surface with plastic wrap so it touches the pudding to prevent a skin forming, then chill in the fridge at least 2 hours, or until fully set.
- Before serving, whisk briefly to loosen if very firm. Spoon into bowls and top with whipped cream or a sprinkle of flaky salt if you like that sweet and salty thing.
- Store leftovers in an airtight container in the fridge for up to 4 days. Re-whisk gently before serving, and enjoy.
Notes
- Below you’ll find my best estimate of this recipe’s nutrition facts. Treat the numbers as a guide rather than a rule—great food should nourish both body and spirit. Figures are approximate, and the website owner assumes no liability for any inaccuracies in this recipe.
Nutrition Facts
- Serving Size: 159g
- Total number of serves: 6
- Calories: 278kcal
- Fat: 14.6g
- Saturated Fat: 7.6g
- Trans Fat: 0.25g
- Polyunsaturated: 3.7g
- Monounsaturated: 3.3g
- Cholesterol: 104mg
- Sodium: 157mg
- Potassium: 292mg
- Carbohydrates: 34.3g
- Fiber: 2g
- Sugar: 26.6g
- Protein: 6.5g
- Vitamin A: 200IU
- Vitamin C: 0mg
- Calcium: 143mg
- Iron: 0.82mg









