Brew the coffee. Make strong coffee or pull two shots of espresso.
Let it cool to room temperature so it doesn’t scramble the eggs later.
Warm the dairy. In a medium saucepan, whisk together the heavy cream and almond milk. Heat over medium until it’s steaming and small bubbles form at the edges—do not boil.
Whisk the yolks and sweetener. In a bowl, whisk the egg yolks, powdered sweetener, and salt until the mixture lightens slightly in color and looks smooth.
Temper the eggs. Slowly pour about 1/2 cup of the hot cream into the yolk mixture while whisking. Then pour the tempered yolks back into the saucepan, whisking constantly.
Cook the custard. Reduce heat to low and stir with a silicone spatula for 5–7 minutes, until the mixture thickens slightly and coats the back of the spatula.
Do not let it boil. If you have a thermometer, aim for about 170–175°F (77–80°C).
Add coffee and vanilla. Remove from heat. Whisk in the cooled coffee and vanilla extract.
If using xanthan gum, sprinkle it evenly over the surface and whisk vigorously to avoid clumping.
Chill thoroughly. Pour the custard through a fine-mesh sieve into a clean bowl to catch any curdled bits. Press plastic wrap directly onto the surface and refrigerate at least 4 hours, preferably overnight. Cold base = creamy ice cream.
Churn. Pour the chilled base into your ice cream maker and churn according to the manufacturer’s instructions, usually 20–25 minutes, until it’s the texture of soft-serve. If adding chocolate or oils, drizzle or fold them in during the last 2 minutes.
Freeze to set. Transfer to a lidded container.
Press parchment against the surface to prevent ice crystals. Freeze 2–4 hours until scoopable.
Serve. Let the container sit at room temperature for 5–10 minutes before scooping for the best texture.