Vegan Chocolate Caramel Bars (Carmelitas)

Easy & delicious oat bars, layered with dark chocolate and creamy date caramel. Best of all, it takes just 9 ingredients. If you’ve never tried carmelitas before, now’s your chance! Vegan. <jump to recipe>

Vegan Chocolate Caramel Bars (Carmelitas) | Evergreen Kitchen | Vegan

I still remember the day I first discovered Carmelitas. It was a dreary Saturday, and to avoid the rain, I was wandering the mall while on my lunch break. My high-school self must have been looking for something to make me forget about the boring sandwich in my naturally I ended up with my hands pressed against the bakery’s glass display. Most of the options were exactly what you’d expect: brownies, chocolate chip cookies and slices of banana bread. But what caught my eye was something I’d never seen before. They were oatmeal bars, stuffed with a layer of chocolate and caramel inside. The sign said “carmelitas”, and they were calling my name.

With carmelitas, it was love at first bite. I mean, it’s pretty hard to go wrong when you combine oats, chocolate and caramel into a soft and gooey bar. Sadly, it’s pretty tough to track them down in bakeries these days, so this delicious treat slipped my mind for years. But I had a recent craving that brought me into the kitchen to make my own. This version is a bit more wholesome (but still plentyyy indulgent). And best of all, it’s super easy to make.

This recipe keeps it simple with just 9 ingredients, most of which you probably already have in your pantry. I like to use whole wheat pastry flour in the cookie base. It keeps things light, with some whole grain thrown in for good measure. But you could easily substitute with all-purpose flour instead. Brown rice syrup might seem a bit odd here, but trust me on this one. It’s stickiness helps bring the dough together, and it also lends a slightly buttery flavor to our vegan version. And because brown rice syrup is less sweet than other liquid sweeteners, it doesn’t compete with the chocolate and caramel. Pro tip: pour the oil into your measuring cup before the brown rice syrup. It helps it slide out much more easily that way.

Vegan Chocolate Caramel Bars (Carmelitas) | Evergreen Kitchen | Vegan
Vegan Chocolate Caramel Bars (Carmelitas) | Evergreen Kitchen | Vegan

Assembling this dessert is quite straightforward. First you mix up the oat cookie base. This mixture also doubles as the topping, so you’ll keep some aside for the top layer. Once the base is packed down and baking in the oven, you’ll prepare a yummy date caramel. Date caramel comes together in minutes, and there’s no finicky cooking over the stove - which is always a win in our books. Also, it tastes delicious. Especially when covered with chocolate.

The remaining layers are simply roughly chopped chocolate (no need to melt it, the oven will take care of that). Then, the date caramel, which you can dollop over the chocolate or spread with the back of a spoon. The remaining oat cookie dough then gets added on top. A final bake in the oven and a decorative drizzle of chocolate on top for good measure!

We love to make this dish in advance and bring it over to friends’ houses for dessert. If you’re like us and often running late, you can let the bars cool in their fridge while you’re eating dinner. Thankfully, they’re super portable (just bring them over in the pan) - and even easier to serve. We like to garnish these with a sprinkle of flaky salt; and when we’re feeling really extra, a scoop of vanilla ice cream on top.

Vegan Chocolate Caramel Bars (Carmelitas) | Evergreen Kitchen | Vegan
Vegan Chocolate Caramel Bars (Carmelitas) | Evergreen Kitchen | Vegan


SERVES 9-12 - vegan


Oat Cookie Base/Topping:

  • 1 3/4 cups whole wheat pastry flour*

  • 1 1/4 cups oats

  • 1 teaspoon baking soda

  • 1/2 teaspoon salt

  • 1/2 cup coconut oil, melted

  • 1/3 cup brown rice syrup

Date Caramel & Chocolate Layers:

  • 10 Medjool dates, pitted (1/2 cup packed)

  • 1/2 cup warm water

  • 1 1/2 teaspoons vanilla extract

  • 1/4 teaspoon salt

  • 250 g / 8.8 oz dark chocolate, divided & chopped

  • Optional - Flaky sea salt, for garnish; Vanilla ice cream, for serving


  1. Preheat oven to 325°F. Line a 8”x8” baking pan with parchment paper.

  2. In a large mixing bowl, add whole wheat pastry flour, oats, baking soda, and 1/2 teaspoon salt. Stir together until evenly distributed. Then, pour melted coconut oil and brown rice syrup over the dry ingredients. Stir vigorously to ensure the wet ingredients are well combined.

  3. Measure out 3/4 cup of the oat cookie mixture and set it aside to use later as the topping. Empty the remaining mixture into the parchment lined baking pan. Use your fingers to distribute the dough evenly, packing it down firmly until it forms a solid, smooth base. Bake for 12 minutes until it starts turning golden brown on top.

  4. Meanwhile, make the date caramel. Add pitted dates into a food processor, alongside 1/4 cup of warm water. Put the lid on the food processor, cover with a tea towel (to prevent water from leaking out the sides), and blend until the dates become a thick paste. Add remaining 1/4 cup of warm water, vanilla and 1/4 teaspoon salt. Continue blending until absolutely smooth, taking time to scrape down the sides with a spatula in between rounds of blending.

  5. After the cookie base is done baking, sprinkle 200 grams of chopped dark chocolate over top (reserve the remaining 50 grams for drizzling at the end). Spoon in the date caramel. Then, top with reserved 3/4 cup of oat cookie mixture. Use your fingers to squeeze the dough together, adding flattened pieces on top until the surface is mostly covered. Bake for 15 minutes until the cookie topping is golden brown.

  6. While the bars bake, melt remaining 50 g of chocolate in a heat proof bowl set over a pot of steaming water (or use a double boiler). Use a spoon to drizzle chocolate on top of the baked bars. Let cool fully before slicing. Garnish with flaky sea salt and ice cream if desired.

-*Can substitute whole wheat pastry flour with regular all-purpose flour instead