Rich Dairy-Free Chocolate Cake (No Butter, No Milk)
This dairy free chocolate cake is the one I reach for when I want a dark, fudgy slice without a drop of butter or milk. It is rich without being heavy, and the crumb stays tender for days.

A cup of hot coffee deepens the cocoa flavor, but plain water works just as well. Either way, you get a cake that feels like a treat, not a compromise.
What Makes This Cake So Good
Because there is no butter to cream, the batter comes together fast with just a whisk. Oil keeps every bite soft, and a generous amount of cocoa powder packs in the chocolate flavor without any dairy.
The method is simple enough for a weeknight, yet the cake layers beautifully for a birthday. I have never had anyone guess it was dairy free.
Ingredients

- 2 cups all-purpose flour: spooned and leveled, not scooped
- 1 ¾ cups granulated sugar
- ¾ cup unsweetened cocoa powder: natural or Dutch-process both work
- 1 ½ tsp baking powder
- 1 ½ tsp baking soda
- 1 tsp fine sea salt
- 2 large eggs, room temperature
- 1 cup vegetable oil: or melted coconut oil
- 2 tsp vanilla extract
- 1 cup hot water or strong brewed coffee: coffee intensifies the chocolate
Variations and Swaps
- Oil swap: Melted coconut oil or avocado oil work well. Choose a neutral oil if you do not want a coconut taste.
- Brown sugar: Swap up to half the granulated sugar for light brown sugar to add a hint of molasses.
- Espresso boost: Stir 1 tsp instant espresso powder into the hot liquid to make the chocolate taste even deeper.
- Extra chocolate: Fold ½ cup dairy-free chocolate chips into the batter just before baking.
- Gluten-free: Use a 1-to-1 gluten-free flour blend that contains xanthan gum.
For an egg-free version, try our classic wacky cake.
How to Make Dairy Free Chocolate Cake
Step 1: Mix the Dry Ingredients

Preheat the oven to 350°F (180°C) and grease a 9-inch round cake pan, lining the bottom with parchment paper. In a large bowl, whisk together the 2 cups flour, 1 ¾ cups sugar, ¾ cup cocoa, 1 ½ tsp baking powder, 1 ½ tsp baking soda, and 1 tsp salt.
Whisk until no streaks of cocoa remain. The mixture will look fluffy with a few small clumps of cocoa, which is fine.
Step 2: Whisk the Wet Ingredients

In a medium bowl or a large measuring cup, whisk the 2 eggs, 1 cup oil, and 2 tsp vanilla until smooth. Pour in the 1 cup hot water or coffee and whisk again.
The mixture will become thin and glossy. The warmth from the liquid helps the cocoa bloom and gives the cake a deeper color.
Step 3: Combine the Batter

Pour the wet ingredients into the bowl of dry ingredients. Whisk gently just until no dry flour is visible. It is okay to see a few small lumps.
Overmixing will develop gluten and make the cake tough. The batter will be quite liquid, almost like thin pancake batter, which is exactly what keeps it moist.
Step 4: Bake the Cake

Pour the batter into the prepared pan and bake on the center rack for 30 to 35 minutes. Check with a toothpick: it should come out clean or with a few moist crumbs clinging to it.
The top will spring back when lightly pressed, and your kitchen will fill with a rich chocolate smell. If the center domes slightly, do not worry; it will settle as it cools.
Step 5: Slice and Serve

Let the cake cool in the pan for 10 minutes, then run a knife around the edge and turn it out onto a wire rack. Cool it completely before slicing.
Dust with powdered sugar or spread on a dairy-free frosting. Serve at room temperature, and the crumb will be tender and deep brown.
How to Get a Tender Crumb Every Time
- Weigh your flour for the most tender crumb. Even a little extra can make the cake dry.
- Stir the batter until the flour just disappears. Overworking develops gluten and makes the cake dense.
- Cool the cake completely before slicing. A warm cake may fall apart on the plate.
- Frost with a simple dairy-free ganache: melt dairy-free chocolate chips with a splash of oat milk until smooth, then spread it on.
Bake times by pan size:
| Pan | Size | Bake Time |
|---|---|---|
| Round cake pan | 8-inch | 35–40 minutes |
| Round cake pan | 9-inch | 30–35 minutes |
| Loaf pan | 9×5-inch | 50–55 minutes |
| Cupcakes | 12-cup tin | 18–22 minutes |
Keeping the Cake Fresh
- Store at room temperature: Keep the cake covered for up to 3 days. It stays moist because of the oil.
- Refrigerate: If you frost it with something perishable, cover and refrigerate for up to a week.
- Reheat a slice: Warm it for 15 to 20 seconds in the microwave to bring back that just-baked softness.
What to Serve with Dairy Free Chocolate Cake
Fresh raspberries or sliced strawberries cut the richness with a little tartness. A dollop of coconut whipped cream or a scoop of dairy-free vanilla ice cream turns a slice into a full dessert. A simple dusting of powdered sugar is all it needs if you want to keep things easy.
Frequently Asked Questions
Can I use a different oil?
Yes. Melted coconut oil, avocado oil, or any neutral vegetable oil all work. Coconut oil may add a faint coconut flavor.
Can I make this cake gluten-free?
Yes. Use a good 1-to-1 gluten-free flour blend that contains xanthan gum, and measure it by weight if you can.
Why did my cake sink in the middle?
Usually from opening the oven door too early or underbaking. Let it bake without peeking until a toothpick comes out clean, and do not open the door before the 30-minute mark.
Can I use this batter for cupcakes?
Yes. Divide the batter into a lined 12-cup muffin tin and bake at 350°F (180°C) for 18 to 22 minutes.

Dairy Free Chocolate Cake Recipe
Ingredients
Method
- Preheat oven to 350°F (180°C). Grease a 9-inch round pan and line with parchment. Whisk flour, sugar, cocoa, baking powder, baking soda, and salt in a large bowl.
- In a separate bowl, whisk eggs, oil, and vanilla. Stir in hot water or coffee until smooth.
- Pour wet mixture into dry. Whisk just until no flour is visible. A few lumps are okay.
- Pour batter into the pan. Bake 30 to 35 minutes, until a toothpick comes out clean.
- Cool in the pan 10 minutes, then turn out onto a wire rack. Cool completely, then slice and serve.
