This post may feature affiliate links. Please read our disclosure policy.
If you love caramel, this sweet, buttery, and ultra-creamy vegan cajeta recipe is for you. Coconut milk, which replaces the usual goat’s milk, is slowly cooked down with a splash of vanilla to create a sauce you’ll want to pour over everything!

Table of Contents
📖 About
We think this Mexican caramel recipe is extra awesome since it’s made with only plant-based ingredients but still tastes delicious.
No tummy issues, no animal products necessary. Just sweet, creamy, and smooth cajeta made at home.
What is cajeta?
Cajeta is an utterly delicious (no pun intended) Mexican caramel that can be found all over the country.
As mentioned above, it’s made by reducing goat’s milk, sugar, and baking soda until a thick, sticky, and golden caramel is formed.
The goat’s milk in traditional recipes provides a unique flavor that is of course difficult to replicate in a dairy-free version, but we challenge you to try it! This cajeta recipe is so tasty that it’s hard to justify using milk from an animal.
In our opinion, the coconut milk replacement will easily satisfy your caramel cravings!
Types of cajeta
There are actually a few different types of cajeta out there, so here is a basic breakdown.
Cajeta quemada: this is the most “traditional” form of cajeta you may come across. It carries a deep, rich, burnt flavor and a dark brown color. This is due in large part to a longer cook time.
Cajeta envinada: “envinada” refers to the act of adding wine (or alcohol) to the cajeta, giving it a slight liquor aftertaste. Many producers of cajeta experiment with other spirits, but wine was the original alcohol added.
Cajeta de vainilla: this is the version we are making here today, and it’s exactly what it sounds like. Vanilla bean or vanilla extract is added to the cajeta recipe, which provides a characteristic sweet and smoky flavor (depending on the vanilla).
Cajeta vs dulce de leche
Although cajeta is very similar to dulce de leche, there is one crucial difference between the two. Cajeta is made with goat’s milk, while dulce de leche is made with cow’s milk. This distinction gives cajeta a unique flavor, a thicker consistency, and generally a darker color.
History
Not surprisingly, many countries have staked their claim on the invention of caramel, but historian Daniel Balmaceda has a theory. He believes this delicious confection originated in Indonesia, eventually making its way to the Philippines sometime in the 6th century.
When the Philippines fell under Spanish rule in the 16th century, they started heavily exporting this delicacy to the west coast of Mexico. From there, it spread all throughout the Americas and the rest of the world!
Since Mexico (New Spain at the time) was home to many goats, it’s logical to believe that cow’s milk was replaced with goat’s milk to form a new caramel candy — cajeta.
Fun fact: the word “cajeta” comes from the word “caja,” or “small box”. This is because the caramel was likely stored in these small boxes, forming little box-shaped candies.
Serving
The best thing about cajeta is how many different ways it can be served. Try it on pancakes or waffles, in crepes, or as a dip for fruit.
You can also enjoy your cajeta recipe with other sweet treats like:
Some people even serve it as a spread on toast or bollilos like you would peanut butter and jam. However you decide to eat your Mexican caramel, this recipe is both vegan and gluten-free!

🍲 Key ingredients
For a complete ingredient list and step-by-step guide, scroll down to our recipe card.
Coconut milk
Taste: creamy, smooth, and rich, full-fat coconut milk is the base for this vegan cajeta recipe. With a slightly higher fat percentage than cow’s or goat’s milk, coconut milk provides an irresistibly delicious flavor.
Health: coconut milk is a source of vitamins and minerals like manganese, copper, potassium, magnesium, and iron. Manganese in particular is helpful in the formation of connective tissue, clotting factors, and hormones.
Sugar
Taste: to sweeten this Mexican caramel up, we added in a bit of granulated sugar. If you’d prefer a less refined sugar, go for piloncillo, maple syrup, or raw cane sugar (which will all impart different flavors).
Health: although sugar is definitely not healthy by any means, we believe moderation is key. Trying a wide variety of foods is a big part of what makes us happy, but limiting the amounts keeps us fit and healthy.

Vanilla
Taste: with sweet, bold, and lightly smoky elements, Mexican vanilla is the top choice when it comes to cajeta. Using pure vanilla extract over imitation vanilla is always worth the extra money. For one, it tastes better. And secondly, you don’t have to use much to achieve all the delicious flavors and aromas.
Fun fact: the three types of commercially sold vanilla include vanilla planifolia (grown in Mexico and Belize), vanilla tahitensis (grown in French Polynesia), and vanilla pompona (grown in Mexico and South America). Each species carries unique characteristics depending on soil, climate, etc.
Baking soda
Taste: baking soda is used in the recipe to induce a Maillard reaction, which is a chemical reaction of the sugar and amino acids found in coconut milk. Since this is actually quite a complex topic, all you need to know is new flavors, aromas, and colors are formed when the caramel is heated.
Fun fact: the reason cajeta turns out much darker now compared to recipes in the past is largely due to the use of baking soda.

🔪 Instructions
If you have questions about this vegan cajeta recipe, don’t forget to check out our FAQ section at the bottom of this post.
Step 1: combine the coconut milk, sugar, vanilla, baking soda, and salt together in a large pot. While stirring frequently, heat the mixture over medium until it comes to a simmer. Note: the mixture will expand to almost double in size at first, so pick a large enough pot to accommodate this.

Step 2: turn the heat down to medium-low and continue to simmer the mixture for another 50-60 minutes, stirring every 5-10 minutes or so. The cajeta is done when you can see the bottom of the pot after scraping it or when it sticks to the back of a spoon easily (like the consistency of molasses).

Step 3: take the pot off the heat and allow the mixture to cool before transferring it to a mason jar for storage. Serve your cajeta on waffles, crepes, ice cream, toast, etc. Happy eating!
🌡️ Storage
Making this recipe is not very labor-intensive, and storing it is even easier. Just follow these tips to keep your Mexican caramel nice and fresh.
Fridge
Your cajeta should last in the fridge for up to 1 month. After that, it will start to crystallize. We keep ours in mason jars with airtight lids to prevent any flavor-seeping from past foods.
Freezer
If you can’t get through your cajeta recipe quick enough, it will keep in the freezer for up to 5-6 months as long as your store it in freezer-safe containers.
Reheat
When you’re ready to eat some more, run the mason jar under hot water to soften it. Alternatively, you can warm it in the microwave in 30-second bursts.

💭 Pro tips
We’d like to share some tips and tricks we learned while experimenting with making a vegan cajeta recipe:
- Use good quality coconut milk. To prevent bad tastes or textures, we find the Thai coconut milk brands to be the best. Just make sure there are as little ingredients as possible!
- Heat it low and slow. To make sure it caramelizes without burning, keep the heat level to medium or lower and don’t stray too far from your kitchen.
- Add a little alcohol. To infuse more flavors, experiment with spirits like bourbon or brandy.
- Switch up the sweetener. For more unique flavors, try subbing regular sugar with piloncillo, maple syrup, or cane sugar.
- Use different vanillas. Try this cajeta recipe with different varieties or forms of vanilla like vanilla pods or paste.
🍴 Tasting notes
This dairy-free version of Mexican caramel sauce is so good, you’ll soon be eating it by the spoonful. It’s:
- Sweet
- Creamy
- Rich
- Buttery
- Caramelly
If you try this cajeta recipe, please rate it and leave us a comment below! Want to stay up-to-date with new recipes? Subscribe to our newsletter or connect with Broke Bank Vegan on social media. Happy eating!

Vegan Cajeta
Equipment
- Large stockpot
- Whisk
- Mason jars
Ingredients
- 27 ounces (2 cans) full-fat coconut milk ($4.44)
- ⅔ cup sugar (white or cane) ($0.02)
- 1 ½ teaspoon vanilla ($0.33)
- ¼ teaspoon baking soda ($0.01)
- ⅛ teaspoon salt ($0.01)
Instructions
- In a large pot, combine the coconut milk, sugar, vanilla, baking soda, and salt. While stirring frequently, heat the mixture over medium until it comes to a simmer, about 5 minutes.
- Turn the heat down to medium-low and continue to simmer the mixture for another 50-60 minutes, stirring every 5-10 minutes or so.
- The cajeta is done when you can see the bottom of the pot after scraping it or when it sticks to the back of a spoon easily (like molasses).
- Remove the pot from heat and allow the mixture to cool before transferring it to a mason jar for storage. Serve on waffles, crepes, ice cream, toast, etc. Happy eating!
Video

Notes
- To prevent bad tastes or textures, we find Thai coconut milk brands to be the best.
- For more flavor, try adding in a cinnamon stick while simmering.
- The baking soda forms a Maillard reaction, which improves the color and aroma of the cajeta.
- Optional ingredients are not reflected in the price or calories of our recipes.
- We calculate nutritional information for our recipes with Cronometer.
- Recipe cost calculations are based on ingredients local to us and may vary from recipe-to-recipe.
- All prices are in USD.
Nutrition
♻️ Similar recipes
For some delicious desserts to serve your cajeta with, check out our:
- Gorditas for a sweet version of the popular antojito found all across Mexico.
- Churros to try a vegan version of this world-renound dessert dusted with cinnamon sugar.
- Buñuelos for Mexican fritters that are golden and crispy on the outside, but light and tender on the inside
- Plátanos fritos for crispy, creamy, and perfectly ripe plantains covered with sweet crema and strawberry jam.
💬 FAQ
Baking soda is used for the Maillard reaction to change the color, flavor, and aroma of this cajeta recipe. If you omit it, the end result will vary slightly.
This cajeta recipe is sweet, but it’s only meant to be consumed in small amounts. You can always add or take away the sugar to your preferences.
Although you can use other plant milk varieties like soy, oat, or almond, we found this recipe tastes the best with full-fat canned coconut milk.
I made this to top a vegan cheesecake for my sister, and It was a hit!
I, unfortunately, can’t eat coconut and wondered if the milk could be replaced with high-fat plant milk.
Thank you so much for sharing!
Hi Betsi!
That sounds amazing! We’re so glad to know it was a hit 🙂 Yes, you should probably be able to replicate similar results with high-fat plant milk, but you may need to reduce it for slightly longer. Let us know how it goes!
Doesn’t really turn caramel color. What am I doing wrong?
Recipe calls for coconut milk (white) and cane sugar.
Hey Laura,
It seems like the process takes forever, but if it isn’t changing color or thickening, just keep reducing the mixture. It should eventually turn color! Hope that helps.
Great recipe! Tastes delicious. I made my coconut milk from frozen coconut cream and water, so it took longer than 60 minutes to turn into cajeta but if you have the patients it certainly pays off!
Hi Rochelle!
That’s great to know it worked out with frozen coconut cream and water. Thanks so much for taking the time to comment!