If you have ever sipped a real Italian cioccolata calda — the kind served in tiny cups at Roman cafés, so thick your spoon practically stands up — you know that ordinary hot chocolate will never compare. This keto version captures that outrageously rich, almost pudding-like texture using full-fat coconut cream and mascarpone cheese instead of sugar and starch. Every sip is deeply chocolatey, silky, and warming, with a whisper of espresso that makes the cocoa taste ten times more intense.
The macros are beautifully keto-aligned: 29 grams of fat per serving, mostly from coconut cream's medium-chain triglycerides and mascarpone's luscious butterfat, with just 5 grams of net carbs. At 280 calories a cup, this drink doubles as a satisfying fat bomb that keeps you fueled for hours without spiking blood sugar.
Best of all, this recipe is designed for batch prep. You make the entire concentrate in one pot in about ten minutes, pour it into jars, and stash it in the fridge for up to five days. Each morning — or whenever the craving hits — you simply reheat a portion on the stove or in the microwave. It is the easiest way to start your day with a decadent Italian ritual that happens to be completely vegetarian and ketogenic.
Ingredients (serves 4)
For the cioccolata calda concentrate:
- 1 can (13.5 oz / 400ml) full-fat coconut cream
- 1/2 cup (120g) mascarpone cheese, at room temperature
- 3 tablespoons (18g) unsweetened cocoa powder (Dutch-process preferred)
- 2 cups (480ml) water
- 1/4 cup (40g) granulated erythritol or monk fruit sweetener
- 1 teaspoon pure vanilla extract
- 1/2 teaspoon instant espresso powder
- 1/8 teaspoon fine sea salt
Optional garnish (per serving):
- 1 tablespoon whipped coconut cream or unsweetened whipped cream
- A light dusting of cocoa powder or shaved dark chocolate (85%+ cacao)
Instructions
Bloom the cocoa. In a medium saucepan over medium-low heat, whisk together the cocoa powder, erythritol, espresso powder, and salt with about 1/2 cup (120ml) of the water. Stir constantly for 1–2 minutes until the mixture forms a smooth, glossy paste with no lumps. This step deepens the chocolate flavor dramatically, so do not skip it.
Add the coconut cream and remaining water. Pour in the full can of coconut cream and the remaining 1 1/2 cups (360ml) of water. Whisk steadily until the mixture is completely smooth and begins to steam, about 3–4 minutes. Do not let it boil — you want gentle heat to preserve the silky texture.
Melt in the mascarpone. Reduce the heat to low. Add the mascarpone one generous spoonful at a time, whisking after each addition until fully incorporated. The mascarpone is what gives this drink its signature Italian thickness, transforming it from a thin cocoa into a luscious, spoonable cioccolata calda. Continue whisking for another 2–3 minutes until the mixture is uniformly velvety and heated through.
Finish with vanilla. Remove the saucepan from the heat and stir in the vanilla extract. Taste and adjust sweetness if needed — if you prefer a sweeter drink, add another tablespoon of erythritol while the mixture is still warm so it dissolves completely.
Serve immediately or batch-store. To serve right away, ladle into small cups or mugs and top with a dollop of whipped cream and a dusting of cocoa. To batch-prep, let the concentrate cool to room temperature (about 20–30 minutes), then divide evenly among four airtight glass jars or containers. Refrigerate for up to 5 days.
Reheat from the fridge. When ready to serve a stored portion, pour the concentrate into a small saucepan over medium-low heat and warm gently for 3–4 minutes, stirring frequently, until steaming and smooth. Alternatively, microwave in 30-second intervals, stirring between each, until heated through. The concentrate will thicken in the fridge — add a splash of hot water (1–2 tablespoons) while reheating if you prefer a thinner consistency.
Nutrition per Serving
| Nutrient | Amount |
|---|---|
| Calories | ~280 kcal |
| Fat | ~29g |
| Protein | ~3g |
| Total Carbs | ~7g |
| Fiber | ~2g |
| Net Carbs | ~5g |
Nutrition is approximate and based on full-fat coconut cream, mascarpone, and Dutch-process cocoa powder. Erythritol is excluded from net carb counts as it has a glycemic index of zero.
Tips & Variations
Choose Dutch-process cocoa for the smoothest flavor. Dutch-process (alkalized) cocoa has a milder, rounder chocolate flavor that works perfectly in a drink this rich. Natural cocoa powder will work too but will taste slightly more bitter and acidic. Either way, make sure your cocoa is unsweetened — sweetened cocoa mixes contain hidden sugars that will blow through your carb budget instantly.
Stir the concentrate well before each use. Coconut cream naturally separates when chilled, so your stored jars may have a thicker layer on top and a thinner layer below. This is completely normal. Simply give the jar a vigorous stir or shake before reheating, and it will come back together into a smooth, uniform texture within a minute of warming.
Turn it into an affogato-style treat. For a spectacular Italian dessert drink, skip reheating entirely. Pull the chilled concentrate from the fridge, spoon it into a small bowl or espresso cup, and pour a fresh shot of hot espresso directly over the top. The contrast of warm espresso hitting cold, thick chocolate cream is absolutely stunning — and still under 5g net carbs.
Watch your sweetener choices carefully. Erythritol and monk fruit blends are the safest keto sweeteners for this recipe because they dissolve cleanly and do not spike blood sugar. Avoid maltitol-based sweeteners, which have a higher glycemic impact and can add hidden net carbs. If you use a concentrated monk fruit extract instead of a granulated blend, start with just 1/4 teaspoon and taste before adding more, as these are extremely potent.
Make it dairy-free by swapping the mascarpone. If you need a dairy-free version, replace the mascarpone with an equal amount of coconut cream cheese or an extra 1/4 cup of coconut cream whisked with 1 teaspoon of lemon juice. The texture will be slightly thinner, so simmer the mixture for an extra 2–3 minutes to help it reduce and thicken. The macros will shift slightly but will remain firmly in the keto zone.