Note: You might have to play a bit with the sweeteners and the cocoa ratio to appease your individual preference. However the cream, egg and milk base are going to offer the consistency. MCT oil, vodka, and xanthan gum are popular choices for decreasing iciness and hardness while frozen, while gelatin will also aid in keeping the ice cream soft by incorporating some freshness and creaminess to the texture. However, if you don’t have those ingredients available or you find it to be superfluous to the preparation procedure, then by all means leave them out, especially if you plan to eat your ice cream sooner rather than later.

Preparation

Set up an ice bath (bowl of ice water). In a separate bowl (slightly smaller than the ice bath bowl), whisk together the egg yolks, eggs, sweetener, and vanilla extract.

Put the cocoa and cream into a small saucepan and bring to a simmer at medium-high heat. Add half of the cream mixture to the eggs to temper and whisk together. Reduce heat to medium-low and pour the contents of the bowl back in the saucepan. Stir with a spoon for 10-15 seconds and remove from heat. The mixture should be thick enough to coat the back of the spoon, but if the eggs curdle, then it’s overcooked and won’t work.

Return all of the mixture back to the bowl and set on top of the ice bath. Whisk in the salt, almond milk and peanut butter. Here is the step where you whisk in either the MCT oil, vodka, or xanthan gum, and/or the gelatin (and water).

Allow the mixture to cool to room temperature for 1 hour.

Pour the contents into an ice cream maker and churn according to the manufacturer’s instructions. Churning usually takes 30-60 minutes. If adding chocolate, fold it in after the ice cream mixture is finished churning.

It can be served immediately or scooped into a container for freezing. Freezing will firm it up a little, but it will need to sit for 10-20 minutes to soften before serving if frozen for more than a couple of hours.