Bloom the gelatin. In a small bowl, sprinkle 1 teaspoon unflavored gelatin over 2 tablespoons cold water.
Let it sit for 5 minutes until it swells and turns spongy.
Warm the base. In a saucepan, add 1 cup heavy cream, 1 cup unsweetened almond milk, 1/3–1/2 cup keto sweetener (adjust to taste), 1/3 cup unsweetened cocoa powder, and a pinch of salt. Whisk until smooth before turning on the heat to help prevent lumps.
Heat gently. Place the pan over medium heat. Whisk constantly until the mixture is hot and steamy but not boiling, about 3–5 minutes.
The cocoa should dissolve fully and the mixture will deepen in color.
Melt in the chocolate. Stir in 2 ounces finely chopped dark chocolate and 1 tablespoon butter. Whisk until glossy and fully melted.
Add the gelatin. Remove from heat. Microwave the bloomed gelatin for 5–10 seconds to liquefy (or gently warm it in the pan’s residual heat), then whisk it into the hot pudding base until completely dissolved.
Finish with flavor. Whisk in 1 teaspoon vanilla extract.
Taste and adjust sweetness. If you prefer thicker pudding, whisk in another 1/4 teaspoon gelatin pre-bloomed in 1 tablespoon water, then warm just enough to dissolve.
Strain for silkiness. Pour through a fine-mesh sieve into a bowl or measuring jug to catch any cocoa lumps or undissolved bits. This makes a big difference in texture.
Portion and chill. Divide into 4–6 ramekins.
Press plastic wrap directly on the surface to stop a skin forming. Chill 2–3 hours, or until set and spoonable.
Serve. Top with a dollop of whipped cream, a sprinkle of cocoa, or shavings of dark chocolate. Enjoy cold.