If you’re a fan of my red lentil curry (RPL’s most popular recipe!), allow me to introduce you to its ultra cool cousin—creamy cabbage curry.
The humble cabbage is cooked into luxurious silkiness (you won’t even notice there’s 8 whole cups of it!), flavored with warming Indian spices, and simmered with coconut milk and almond butter to become a richly creamy and aromatic curry.
And don’t be afraid to save some for lunch the next day because this curry tastes even better after a flavor-enhancing night in the fridge!
Table of Contents:
1. Ingredient notes
2. Step-by-step instructions
3. Tips for making this recipe
4. Frequently Asked Questions
5. Recipe card with notes

You’ve been sleeping on cabbage
I’ve been on a mission to make cabbage more exciting and to help home cooks see it can be so much more than coleslaw.
Case in point #1: The Buttery Charred Cabbage from my cookbook Big Vegan Flavor, which was a hit at my restaurant popup with Avant Garden earlier this year (make it yourself by flipping to p. 401!).
Case in point #2: This new cabbage curry, which is creamy, indulgent, and has the perfect touch of sweetness from the cabbage.
Just ask Max—this is actually his new favorite RPL recipe, which is saying a lot because he’s constantly trying new recipes. Plus, Max is actually the surprise hero of this recipe.
After recipe test #4 (which was good…but we’re not aiming for merely “good” in the RPL kitchen, are we?) Max—whose culinary feedback is usually limited to “It’s good,” or “It’s nice”—said, “What about adding almond butter like you do in your red lentil curry?”
Fast forward to recipe test #5 and, lo and behold, the almond butter dramatically improved the curry’s flavor and texture. Let’s hear it for Max 👏🏽

Ingredient notes

Cabbage
The magic of this recipe lies in slicing it or shredding it about as thinly as you can, then sautéing until silky. This allows the cabbage to melt into the curry and lends the finished dish a subtle sweetness and texture that is lightyears away from the in-your-face cruciferousness of raw cabbage.
Substitutes: Good ol’ green cabbage works great here (it’s widely available and inexpensive), but you could also use napa or savoy cabbage (napa cabbage will cook more quickly). Red cabbage is earthier and less sweet, so I’d skip that.
Indian aromatics and spices
While this is by no means a traditional Indian recipe, it will dazzle you with its bold Indian flavors.
That’s because this recipe, like many of my Indian recipes, starts out with aromatics—in this case, garlic and serrano pepper—followed by a generous blend of Indian spices.
To keep things beginner-friendly and weeknight-friendly, I use a blend of ground spices instead of whole spices, and it works incredibly well here: red chili powder, cumin, coriander, turmeric, plus garam masala at the end.
Substitute: This recipe calls for Kashmiri chili powder, which is a mild Indian red chili powder with a vibrant red color and slightly sweet, smoky flavor. Sold online or at South Asian grocers. If you don’t have it, use 1 ¾ teaspoons of sweet or hot paprika with ¼ teaspoon of cayenne pepper (or just 2 tsp of paprika and no cayenne).
Identification Tip: If you have red Indian chili powder at home but not sure what kind, taste just a tiny bit. If it’s really spicy, it’s likely not Kashmiri chili powder, so use just ¼ to ½ teaspoon of that to avoid an overly spicy curry.
Coconut milk
This is the secret behind the luxuriously creamy mouthfeel and indulgence factor. The fat in the coconut milk also helps temper the heat from the serrano peppers and spices, making for a well-balanced curry.
Shopping Tip: Buy full-fat coconut milk in a can, not cartons of coconut milk or “cream of coconut” (which is sweetened).
Substitute: If you want a lighter curry, you can use light canned coconut milk, or make your own: use ⅔ cup (160 mL) full-fat coconut milk with 1 cup (240 mL) water. Full disclosure: we tried the latter and the results were fine but not nearly as good as the original.
If you really want to avoid coconut milk, the best substitute would be a homemade cashew cream/milk. See the first FAQ for instructions.
Chickpeas
Chickpeas makes this cabbage curry a complete meal, adding extra fiber and some protein! If you want to make this dish even more filling, feel free to throw in a second can of chickpeas along with ½ cup (120 mL) of water, as there won’t be enough liquid otherwise.
Almond Butter
Thanks again to Max for his suggestion to include this ingredient! It adds an extra layer of richness and a subtle nuttiness that work in tandem to make the curry exquisite.
Trust me—having tried the versions without almond butter and with almond butter back-to-back, I can definitively say that the almond butter (just 2 tablespoons!) works like a charm.
Substitute: Cashew butter works well. If you have a nut allergy, sub with well-stirred tahini.
Step-by-step instructions
In a large sauté pan, heat up the oil over medium-high. Add the garlic and serrano pepper and stir frequently for 30 to 60 seconds.
Add cabbage and toss to coat in the oil and aromatics.


Cook for 10 minutes, stirring occasionally, until tender and browned in spots. Add the tomato paste and ground spices (red chili pepper, coriander, cumin, turmeric, salt, black pepper) and stir frequently for 2 minutes.

Add the tomatoes and cook for 4 to 5 minutes, until they have softened.

Pour in the coconut milk, chickpeas, almond butter, and a bit more salt. Stir well.


Simmer, uncovered, for 15 to 20 minutes, stirring every few minutes to prevent sticking, until the flavors have melded together and curry has thickened.

Remove from heat and stir in the garam masala, lime juice, and cilantro. Rest for 5 to 10 minutes before serving.


Tips for making this recipe
Slice the cabbage thinly
What I love about this recipe is that the cabbage really melts into the curry. There aren’t big chunks of it like you might find in other recipes. So be sure to slice the cabbage thinly, almost as thinly as you can. A sharp knife works great, but you can also use a mandoline (I love this handheld one and this larger, professional model).
Tailor the spice accordingly
I call for two serrano peppers in this recipe, which sounds quite spicy, but the full-fat coconut milk tempers the spice, yielding a curry with medium heat.
For the spicy lovers: Use 3 serrano peppers!
For the spice-averse: Use 1 serrano pepper or even a jalapeño pepper. If you can handle some heat, keep the membranes and seeds in; if not, scrape them out first.
Adjust the heat as needed
As the cabbage cooks, keep an eye on the pan—if the cabbage starts browning quickly or the garlic starts to get dark, lower the heat to medium and add a splash of water to scrape up the fond (fond = browned bits on the bottom of the pan).
Stir to prevent sticking (and add water as needed)
The curry will thicken as it simmers thanks to the coconut milk and almond butter so you’ll need to stir every few minutes to prevent sticking on the bottom of the pot.
Depending on how thick or liquidy you prefer your curries, you may want to add some water during simmering, about ¼ to ½ cup (60 to 120 mL).

Frequently Asked Questions
Follow these steps to make a cashew cream which can be used in place of the coconut milk:
1. Soak ½ cup (70g) of raw, unsalted cashews in water overnight, or do a quick soak by adding them to a saucepan, covering with water, and boiling for 15 minutes. Drain the cashews and rinse well.
2. Add ½ cup (120 mL) of water to a small-capacity high-powered blender (small blender jug, 32 oz / 1L or smaller) [see note below]. Add the drained cashews, 1 TBSP of freshly squeezed lemon juice, and ½ tsp kosher salt.
3. Blend for about 2 minutes, starting on low and gradually moving up to high speed. Scrape down the sides as you go and blend until it’s completely smooth and no cashew bits remain.
Note: If you only have a large-capacity high-powered blender, you’ll need to double the ingredients, as there isn’t enough liquid here to blend in a large container. A food processor can be used, but the texture won’t be as smooth. In a food processor, blend the ingredients for approximately 4 minutes.
No nuts, no problem! Sub with tahini!
I love it with vegan naan or the fluffy pita bread from Angel Bakery, but you can also serve it with rice. And voilà, you have a complete, balanced, and truly delicious meal.
But if you’re looking for a little something extra on your plate, you could serve it with a green salad or an Indian kachumber salad (sliced or diced cucumbers, tomatoes, and red onions dressed with lime juice, salt, pepper, chopped cilantro, and a bit of garam masala or chaat masala, if you like).
Store leftovers in an airtight container in the fridge for up to 5 days (and get excited—this meal tastes even better the next day as the flavors and spices have a chance to mingle).
The curry thickens A LOT in the fridge because of the coconut milk, but once you heat it up in the microwave it will return to its original texture, more or less. If you are heating it up on the stove, you might want to add a splash of water to thin it out.
You can freeze leftovers for up to 3 months, but be sure to leave a bit of headspace in the container.
Defrosting tip: You’ll get the best results by defrosting the curry in the fridge first, rather than heating it straight from frozen. I love using these Souper Cubes to freeze leftovers in individual portions. You’ll likely want to thin the curry with a bit of water as you’re heating it up.

Did this cabbage curry make you fall in love with cabbage? Make my day by leaving me a rating and review below ☺️

Big Vegan Flavor
Techniques and 150 recipes to master vegan cooking.
Creamy Cabbage Curry

Ingredients
- 2 tablespoons (28g) neutral oil of choice (such as avocado oil)
- 4 fat garlic cloves (21g), chopped
- 1 to 3 serrano peppers, finely chopped (3 for spicy!)
- 8 cups (400 to 480g) green cabbage, shredded or thinly sliced (see Note 1)
- Diamond Crystal kosher salt and freshly cracked black pepper (see Note 2)
- 2 tablespoons (30g) tomato paste
- 2 teaspoons Kashmiri chili powder (see Note 3)
- 1 ½ teaspoons ground coriander
- 1 ½ teaspoons ground cumin
- ½ teaspoon ground turmeric
- 8 ounces (227g) ripe tomatoes, finely chopped (see Note 4)
- 1 (13.5 oz / 400 mL) can full-fat coconut milk
- 1 (15 oz / 425g) can chickpeas, drained and rinsed
- 2 tablespoons (32g) almond butter or cashew butter (unsweetened, see Note 5)
- 1 teaspoon garam masala
- 1 lime, juiced
- 1 cup (16g) fresh cilantro leaves and tender stems, chopped
Instructions
- Heat the oil in a 12-inch sauté pan over medium-high for a few minutes, or until shimmering. Add the garlic and serrano pepper and stir very frequently for 30 to 60 seconds until fragrant (don't let the garlic brown).
- Add the cabbage and use tongs to coat it into the oil and aromatics, tossing well so the garlic and serrano pepper aren't stuck to the bottom of the pan. Season with ½ teaspoon kosher salt. Cook for 10 minutes, stirring occasionally, or until tender, silky, and browned in spots.NOTE: If it starts to brown quickly, lower the heat to medium and/or add a splash of water to deglaze.Multitasking: While the cabbage cooks: (a) In a small bowl combine the tomato paste, Kashmiri chili powder, coriander, cumin, turmeric, 1 teaspoon kosher salt, and lots of black pepper; (b) finely chop the tomatoes and set aside.
- To the cabbage, add the tomato paste-spice mixture. Stir very frequently for 2 minutes, coating the tomato paste into the cabbage. If it dries out, add a splash of water. Add the tomatoes and cook for 4 to 5 minutes, or until softened and almost melting into the cabbage.
- Pour in the coconut milk, chickpeas, almond butter, and ½ teaspoon kosher salt. Simmer uncovered for 15 to 20 minutes, stirring every few minutes to prevent sticking. The curry will thicken, so if you want a looser texture, add ¼ to ½ cup water (60 to 120 mL).NOTE: I prefer simmering for 20 minutes, as it gives the ingredients enough time to mask the coconut flavor, but you can taste at 15 minutes and check.
- Remove from the heat. Stir in the garam masala, several squeezes of lime juice, and the chopped cilantro. Season to taste with salt or more lime juice as desired.
- Serve with cooked rice or flatbread. NOTE: leftovers will thicken considerably in the fridge, so you may want to thin it out with some water on the stove.
Notes
- 1 small cabbage (1 ¼ to 1 ½ lbs / 570 to 680g) will typically yield this amount of cabbage once sliced/shredded.
- I use Diamond Crystal Kosher Salt. If you’re using sea salt or table salt, use less salt, about half the amount, then season to taste.
- Kashmiri chili powder is a mild Indian chili powder with a bright red color and slightly sweet, smoky flavor. Substitute: 1 ¾ tsp sweet or hot paprika and ¼ tsp cayenne pepper (or 2 tsp paprika and omit the cayenne).
- This is about 2 medium Roma tomatoes. For a shortcut, you can use canned crushed tomatoes, but you’ll want to measure out about 8 oz / 230g.
- If nut free, use tahini.

This was sooo good. Definitely adding this to my regular dishes. It’s really creamy but then the lime just comes in and lifts it. I’m looking forward to making it again.
Easy, nutritious, budget friendly delicious! Used 1 serrano and it was still too spicy for some. Next time I will mince serranos and let folks add at service. Will experiment with adding lentils or tofu to boost protein. Delicious simple meal, will be making on repeat!
Your positive feedback is the best reward for our hard work. Thank you, Ann!
Finally got a chance to try this, and I’m so impressed! I don’t use oil in my cooking, but the silkiness of the cabbage did not disappoint. Love the depth of flavor! This will be a go to all winter at our house.
Rosemary, thank you for your thoughtful review! We’re so happy to hear that you enjoyed the curry.
This was so delicious. Great flavor. Will definitely make this again. Thanks Nisha
Awesome, Peggy. Thanks for your comment and for taking the time to review!
Really enjoyed this,… (Was wondering why there is no curry powder in the recipe so I added a tea spoon.. :-))
Hi Mark, we’re happy to hear it! This recipe doesn’t call for curry powder because curry powder contains Kashmiri chili powder, coriander, cumin, and turmeric, all of which are in this recipe.
Fantastic!
Thanks for the lovely feedback, Jana!
Absolutely delicious! I used tahini because that’s what I had, served with toaster naan and cleaned the plate. Will be using on rotation
That sounds like a tasty meal, Jo! Thanks for the review!
Delicious! Very nice, balanced spice blend. Wonderful consistency and taste. Thank you for the recipe I will make it again soon!
Hi Betsey, thank you so much for your kind review!
Nisha never let’s me down. This curry was EXCELLENT. Added some onion into the cabbage garlic and serrano mix for extra flavor and cooked that mixture a little longer because I only had a smaller dutch oven. I’ve never had any curry quite like this and will certainly make it again!
Hi Erin, it’s great to hear you had success with the recipe. Thanks for the review!
This is sooooooo yummy! Four serranos next time!
We appreciate your feedback and support, Karen. Thank you for leaving a review!
I make a lot of curries, and this is one of the best I’ve ever made! (And usually mine are vegetarian but not vegan.) At first I was a little skeptical. No ginger? No onions? But I followed the recipe to the letter, and it was just fabulous. Thank you!
We’re so happy that the curry turned out well for you, Michelle. Thank you for taking the time to leave a comment and for trying out the recipe!
I really enjoyed this. I had a cabbage in the fridge that I didn’t know what to do with and then this recipe popped up. The curry has incredible flavour- before I put in the Garam Masala and lime, it had heat but lacked flavour but once it was in, it was really tasty! I only used one chilli as that was all I had but next time, I will use more (2- 3) as I like my curry hot. I used a whole 400gram tin of chopped tomatoes and I would again- it still thickened up well. When I made it, I was really hungry as I had something out which hadn’t thawed so I thought it would be quicker to make something from scratch (which it was) but it meant that I didn’t slice the cabbage as thinly as I could have (I have a food thingy with a shred function but instead quickly sliced it with a knife) so it didn’t melt in at all. Next time I will use the thingy to slice it thinly. Overall, it tastes amazing and it really filling and healthy. Another plus, it that it is budget friendly.
Awesome, Wren. Thanks for your comment and for taking the time to review!
I’ve just cooked this recipe for dinner and it’s so good. It came to together easily and pretty quick. Since I haven’t had all spices at hand, I used a curry blend which also worked very well. I will add this to my weeknight dinner rotation :)
Hi Kira, it’s great to hear you had success with the recipe. Thanks for the review!
This curry was absolutely delicious! I happened to have half of a white cabbage and half of a purple cabbage to use up, and the purple cabbage didn’t get quite as buttery soft as the white one, but the end result was still extremely tasty
We’re so happy that the curry turned out well for you, Merlijn. Thank you for taking the time to leave a comment and for trying out the recipe!
Yummy recipe and easy to adjust to taste. For example, as a “baby mouth” I subbed a fresh and snappy poblano pepper from the farmers market for the seranos. I also dialed back the garam masala because I thought the dish tasted lovely without as much of that. Also served cilantro on the side for those who like it. Fantastic with naan, and leftovers the next day were delish.
Thanks for the lovely feedback, Laurie!
Delicious recipe and great new way to cook up cabbage. Had it with some fresh roti – hit with the whole family.
That sounds like a match made in heaven, Amy! Thanks for sharing :)
This dish is amazing and so easily and quickly prepared! The mixture of soft-fried cabbage, chickpeas and coconut cream, intensified by almond butter, is dreamily creamy and I enjoyed it with sourdough bread that I baked the day before. Adding the Garam Masala at the very end was a decisive step and led to an exciting development of the aromas!
We’re over the moon to hear you enjoyed the recipe, Lara. Thanks for your kind words!