Fudgy Vegan Brownies
These vegan brownies would make a perfect go-to for when you need a dessert in a pinch. They are rich, chocolatey and completely eggless and dairy-free.

These fudgy vegan brownies are a delicious way to satisfy that chocolate craving. Dutch-process cocoa ensures a deep and rich chocolate flavor boosted by a hint of espresso.
They are thick and chewy with a signature crinkly, crackle top. This recipe serves up to sixteen people, making it an excellent option for a crowd.
Jump To
Key Ingredient Notes
- Dairy-free chocolate, chopped – using a bar with at least 70% cocoa will ensure a deep, rich flavor.
- Unsweetened dutch-processed cocoa powder – cocoa is processed with alkali, making it darker, less bitter and less acidic. This creates an intensely fudgy brownie.
- Light brown sugar – makes the brownie chewier.
- Instant espresso powder – enhances the chocolate and adds more depth of flavor to the brownies.
- Salt – use slightly more if the vegan butter is unsalted.
- Unbleached all-purpose flour or plain flour – Unbleached all-purpose flour can have a slightly higher protein content and is less finely ground than bleached flour. This is helpful in giving eggless brownies some structure.
- Baking powder – works best with dutch-processed cocoa powder.

Step-by-Step Instructions
1. Adjust an oven rack to the middle of the oven and preheat to 350F.
2. Line a 9-by-9 inch baking pan with parchment paper or aluminum foil that has been brushed lightly with oil. Allow the paper or foil to overhang the sides to allow the baked brownies to be easily lifted from the pan.
3. In a small saucepan, heat the vegan butter on low until it is melted and bubbly. Remove the pan from the heat, then stir in the chopped vegan chocolate until it melts and becomes smooth. Set the mixture aside.

4. Combine the granulated sugar, light brown sugar, instant espresso powder, vanilla, salt, and soy milk in a large bowl. Use a hand mixer or a stand mixer to combine, gradually increasing from low to high speed.

5. Add the melted chocolate and vegan butter mixture and combine until smooth.
6. Sift together the flour, baking powder, and cocoa powder, and fold gently into the melted chocolate mixture using a silicone spatula until combined.

7. Pour the brownie batter into the lined baking pan and smooth the top.
8. Bake for 25-30 minutes. The brownie should be set around the edges and still moist but cooked through in the middle. A skewer or toothpick inserted should come out slightly sticky (not watery), and the sugar granules should be melted or dissolved. Different ovens can vary in temperature. Add an extra 10 to 15 minutes to the bake time only if needed.

9. Cool the brownies completely on a cooling rack. Use the overhang of parchment or aluminum foil to gently lift the brownies out of the pan and onto a platter or cutting board. Cut the brownies into 9 or 16 servings.

Notes & Substitutions
- Any vegan chocolate will work in this recipe, and the intensity of the finished brownies can vary based on the chocolate percentage you choose.
- If you eliminate the instant espresso powder, flavored chocolate bars, such as orange or raspberry, can be used to flavor the brownies.
- Instant espresso powder will give the most intense coffee flavor. Instant coffee powder will work in a pinch but must be dissolved in the soy milk as the granules are larger than in espresso powder.
- Try adding vegan-friendly toppings before baking, including candy, marshmallows, vegan peanut butter cups, etc. Bake it topped with Vegan Chocolate Chip Cookie dough to make Vegan Brookies.
- Dairy-free brownies are delicious when served with vegan ice cream – try coffee-flavored ice cream to compliment the instant espresso powder. Serving the brownies with vegan whipped cream and raspberries is a delicious alternative as well.
- For a gluten-free alternative, try our Vegan Black Bean Brownies recipe.
Key Tips
- Cooling the brownies entirely before lifting them from the pan will ensure they don’t break or fall apart.
- Be sure not to overmix the batter, as the gluten in the all-purpose flour will develop and make the brownies tough instead of fudgy. Mix until just smooth.
Storage
Brownies will keep for up to three to four days at room temperature in an airtight container. They may be kept frozen for four to six months. For more details, check out How To Store Brownies.
What is Dutch-process cocoa powder? How is it different from natural cocoa powder?
Natural and Dutch-process are the two types of cocoa powder available for purchase. Natural cocoa powder is the most commonly found and purchased type, sometimes called “unsweetened cocoa powder,” and is relatively acidic.
Dutch-process cocoa powder has gone through a process to reduce acidity and provide a rich and fudgy flavor.
Can I substitute other plant-based kinds of milk in this recipe?
Yes, other good choices would be oat milk or coconut milk. Keep in mind that coconut milk will add a coconut flavor to the brownies, so you may want to choose plant-based milk that is more neutral in taste.
Plant-based milk with thinner consistencies, such as almond milk, would make the batter thinner so longer a baking time may be necessary.
More Chocolate Dessert Recipes
- Vegan Buckeye Brownies
- Vegan Chocolate Crinkle Cookies
- Vegan Chocolate Chip Cookies
- Vegan Hershey Kisses
- Vegan Peanut Butter Blossoms
- Vegan Levain Cookies

Vegan Brownies (Fudgy, Chewy)
Equipment
- 9-by-9 inch square baking pan
- Saucepan
- Stand mixer or mixing bowls
Ingredients
- 8 oz (227 g) dairy-free chocolate, chopped (I used a bar with 70% cocoa)
- 1 cup (85 g) dutch-processed cocoa powder
- ½ cup (113 g) vegan butter stick or margarine (not unsalted), melted
- 1¾ cups (350 g) granulated cane sugar
- ½ cup (113 g) light brown sugar
- 1 teaspoon instant espresso powder
- 1 tablespoon vanilla extract
- ½ teaspoon salt, or 1 tsp if the vegan butter is unsalted
- ½ cup (130 ml) soy milk
- 1½ cups (200 g) unbleached all-purpose flour, spooned and levelled
- ¼ teaspoon baking powder
Instructions
- Place a rack in the middle of the oven and preheat to 350°F (180°C).
- Line a 9-by-9 inch baking pan with parchment paper or foil brushed lightly with oil. Allow the paper or foil to overhang the sides for easier lifting.
- In a small saucepan, heat the vegan butter on low until melted and bubbly. Remove it from the heat, then stir in the chocolate until melted and smooth. Set it aside.½ cup (113 g) vegan butter stick or margarine (not unsalted) ,8 oz (227 g) dairy-free chocolate
- Combine the granulated sugar, brown sugar, espresso, vanilla, salt, and soy milk in a large bowl. Mix with a hand or stand mixer to combine, gradually increasing from low to high speed.1¾ cups (350 g) granulated cane sugar ,½ cup (113 g) light brown sugar ,1 teaspoon instant espresso powder ,1 tablespoon vanilla extract ,½ cup (130 ml) soy milk ,½ teaspoon salt
- Add the melted chocolate and mix until smooth. Sift in the flour, baking powder, cocoa powder. Fold in using a silicone spatula until combined.1 cup (85 g) dutch-processed cocoa powder ,1½ cups (200 g) unbleached all-purpose flour ,¼ teaspoon baking powder
- Pour it into the pan and bake for 25-30 minutes. The brownie should be set around the edges and still moist but cooked through in the middle. A skewer or toothpick inserted should come out slightly sticky (not watery), and the sugar granules should be melted or dissolved. Different ovens can vary in temperature. Add an extra 10 to 15 minutes to the bake-time only if needed.
- Cool completely on a rack before lifting it out of the pan, cutting and serving.
Notes
- Any vegan chocolate will work in this recipe, and the intensity of the finished brownies can vary based on the chocolate percentage you choose.
- If you eliminate the instant espresso powder, flavoured chocolate bars, such as orange or raspberry, can be used to flavour the brownies.
- Instant espresso powder will give the most intense coffee flavour. Instant coffee powder will work in a pinch but must be dissolved in the soy milk as the granules are larger than in espresso powder.
- Oat and coconut milk are good substitutes for soy. Keep in mind that coconut milk will add a coconut flavour to the brownies, so you may want to choose plant-based milk that is more neutral in taste.
- Plant-based milk with thinner consistencies, such as almond milk, would make the batter thinner so longer a baking time may be necessary.
- Try adding vegan-friendly toppings before baking, including candy, marshmallows, vegan peanut butter cups, etc.
- Store for up to three to four days at room temperature in an airtight container. They may be kept frozen for four to six months.
I’m an avid and very experienced vegan baker who really, really wanted to love this recipe given how tasty the pre-baked mix is. I tried it three times, replicating the recipe as stated and baking with an oven thermometer. But the instructions and times for baking are not accurate and I found it nearly impossible to bake this recipe in a way that yielded a mostly set center without over-baking the edges. The middle just does not set up as described even after 40+ minutes baking.
The recipe yields something much closer to a dough than a batter and the result is far too thick to “pour” as the instructions state. The dough/batter does not self level and because it is so thick and sticky it is somewhat difficult to smooth, although a warm offset spatula helps with this. Somehow, despite being so thick, it just doesn’t fully cook. Even with extra time that verges on over cooking the edges the middle still remains nearly uncooked and yields a thickly covered toothpick.
I really hope the author is able to revisit this and tweak it to provide more accurate baking instructions or updated ingredients to reliably achieve the desired and described result. As it stands, I’ll be moving on from this recipe after this third strike because reliability is very important to me as a baker and this recipe doesn’t have that.
Hi Aly,
Thanks so much for your feedback. I’m really sorry the recipe didn’t turn out as expected, especially after multiple tries. I haven’t had the same issues myself and I’ve made the recipe countless times but I really appreciate you sharing the details. I’ll definitely take another look at the recipe with your notes in mind. Thanks again for sharing your experience.
– Jhanelle
Thank you so much for your reply. I really did want this to be a success since there’s significant promise in the flavor profile. If you do get a chance to troubleshoot this recipe and end up making changes please let me know (if that’s convenient) as I’d like to try it again at that point. In the meantime I look forward to continuing to enjoy your other recipes. Thank you again and happy baking/making.