Today I’m sharing a recipe for a homemade vegan red enchilada sauce. Its deep red color and distinctive flavor come from a surprising secret ingredient. Make this at home and you may never go back to store-bought sauce.

Enchilada sauce is a tomato-based red sauce commonly used in Mexican cooking. It’s extremely versatile and not limited to enchiladas: use it with pasta, on pizza, in wraps, in baked dishes, or simply as a dip. The sauce can be adapted to your taste and is a flavorful pantry staple when made at home.
I learned a kitchen tip that transformed my homemade enchilada sauce during a trip to Mexico in 2013. As a long-time fan of Mexican cuisine, I had already been making sauces at home, but my versions often tasted more like pasta sauce — not bad, but missing something authentic. A chef kindly revealed the game-changing secret: unsweetened cocoa powder. Yes, cocoa powder. It adds depth and a subtle complexity that lifts the sauce beyond straightforward tomato flavor. After a couple of experiments to find the right balance, I arrived at a version we love and now make regularly.
This recipe uses a healthier approach in a couple of ways: wheat flour replaces all-purpose flour for a whole-grain option, and the spices are balanced to bring out classic Mexican flavors. The finished sauce is vegan and vegetarian, though some traditional restaurant versions may use chicken broth — if you’re ordering out, check first.
Why make this at home?
Making enchilada sauce at home lets you control the ingredients, adjust the spices and salt to your preference, and avoid preservatives often found in commercial products. Homemade sauce is fresher, more flavorful, and easily customized.
Make-ahead and storage
Make a large batch and freeze it in portions using zip-top bags or airtight containers. The sauce freezes well for up to three months and will keep in the refrigerator for about five days. Thaw in the fridge overnight and reheat gently on the stove.
Highlights
- Vegan
- Healthy
- Rich, layered flavors
- Make-ahead friendly
- Very versatile
For this recipe I use fresh tomatoes that have been blanched and pureed, though you can substitute a good-quality store-bought tomato purée if you prefer. Blanching tomatoes makes them much easier to peel: score each tomato with a small X at the bottom, boil briefly until the skin splits, then transfer to an ice water bath to stop the cooking. The skins will slip off easily once cooled.
After the tomatoes are prepared and pureed, the basic cooking steps are simple: lightly cook the flour in oil, whisk in the tomato purée to avoid lumps, add water or vegetable broth and the spices including cocoa powder, then simmer until the sauce reaches your desired thickness. The sauce will thicken a little more as it cools.
Vegan enchilada sauce
This healthy vegan enchilada sauce is versatile, easy to prepare, and can be made ahead of time.
Course: Dip, sauce
Cuisine: Mexican
Prep Time: 5 minutes
Cook Time: 20 minutes
Total Time: 25 minutes
Yield: About 3 cups
Author: Khushboo
Ingredients
- 850 grams (about 7–8 medium) tomatoes, blanched and pureed — or 28 oz / 1 lb tomato purée
- ½ cup water or vegetable broth
- ¼ cup vegetable oil
- ¼ cup whole wheat flour (or white flour)
- 1 teaspoon unsweetened cocoa powder
- 2 teaspoons chili powder
- 1 tablespoon raw sugar (or other granulated sugar)
- ½ tablespoon dried crushed oregano
- 1 teaspoon garlic powder (or 2 cloves fresh grated garlic)
- ½ teaspoon ground pepper
- Salt to taste
- Additional water for blanching
Instructions
- Blanch and puree the tomatoes. (Score an X on the bottom, boil until skins split, place in ice water, then peel and puree.)
- Heat the oil in a pan over low to medium heat.
- Add the flour and cook, stirring constantly, for about one minute to remove the raw flour taste.
- Slowly pour in the tomato purée while stirring constantly to prevent lumps. Add the water or vegetable broth and then the cocoa powder, chili powder, sugar, oregano, garlic powder, pepper, and salt. Stir to combine.
- Cover and simmer on medium heat for 10–12 minutes, stirring occasionally. The flavors will meld and the sauce will thicken.
- Taste and adjust seasoning or liquid as needed. If it’s too thick, add a little more water or broth; if too thin, simmer a bit longer.
- When the sauce reaches the desired consistency, remove from the heat. It will thicken further as it cools. Use immediately or allow to cool and store for later use.
Notes
- Tomato quality affects the final taste—adjust liquid and spices accordingly.
- I used raw sugar, but any granulated sugar will work.
- Make ahead and freeze portions for quick meals later.
I hope you give this sauce a try and make it a regular part of your cooking rotation. It brings a robust, authentic flavor to many dishes and is simple enough to prepare on a weeknight. Pin this recipe for later and enjoy the depth that a small amount of cocoa adds to a classic Mexican-style red sauce.