Creamy and Comforting Vegan North Indian Chickpea Curry

by Michelle Davis

This is a North Indian-style chickpea curry made creamy with full-fat coconut milk and built on a bloomed spice base of cumin, coriander, and garam masala. It comes together in one pan in about 45 minutes, mostly hands-off simmering time. If you want a filling, spiced dinner without a pile of dishes afterward, this is a reliable weeknight option.

The short version of why this works

Two things actually matter here. First, blooming the spices in hot oil before anything wet goes in — this is not optional. Dry spices dropped into a simmering liquid taste flat and raw; spices that hit hot oil for 60 seconds toast and open up, and that difference carries through the entire dish. Second, giving the tomatoes enough time to cook down before the coconut milk goes in. If you rush that step, the sauce stays thin and slightly acidic. Let the tomatoes reduce until the oil starts to separate at the edges of the pan — that’s your signal the base is ready. Everything else in this recipe is forgiving.

About the ingredients

  • Coconut milk: Use full-fat, not light. Light coconut milk produces a watery sauce that won’t cling to the chickpeas. Shake the can well before opening.
  • Garam masala: Brands vary a lot in intensity. Taste yours before cooking — if it smells faint, use a little more than the recipe calls for.
  • Canned chickpeas: Drain and rinse them. The liquid in the can is starchy and slightly metallic; it muddies the sauce.
  • Fresh ginger: Pre-minced jarred ginger works in a pinch, but fresh gives a sharper, cleaner heat. A 1-inch knob is roughly 1 teaspoon grated.
  • Water vs. vegetable broth: Broth adds depth; water keeps the spice flavors cleaner and more forward. Either works — skip buying broth specifically for this recipe if you don’t have it on hand.

Troubleshooting

  • Sauce is too thin: Simmer uncovered for an extra 5–8 minutes. Coconut milk thickens as water evaporates. Don’t add flour or starch — it changes the texture.
  • Curry tastes bitter: The spices likely scorched during blooming. Keep the heat at medium, not high, and stir constantly during that 60-second window. If it’s already bitter, a small pinch of sugar and an extra splash of coconut milk can soften it.
  • Chickpeas taste bland in the finished dish: They need enough simmering time to absorb the sauce — at least 15 minutes on low heat after all liquids are in. If they still taste separate from the sauce, mash 3–4 of them against the side of the pan to help the sauce bind.
  • Too spicy: Stir in a tablespoon of coconut milk or a small squeeze of lime juice. Adding more chickpeas also dilutes heat without thinning the sauce.
  • Onions didn’t soften properly: Undercooked onions leave a sharp, raw edge in the background of every bite. They need a full 8–10 minutes over medium heat before you add garlic and ginger — don’t rush this step even if the pan looks fine.

Leftovers and meal prep

This curry keeps well in an airtight container in the fridge for up to 4 days, and the flavor genuinely improves overnight as the spices settle. Reheat in the same pan you cooked it in over medium-low heat with a splash of water to loosen the sauce — the microwave works too but tends to dry the chickpeas out. For freezing, cool completely first, then store in portions for up to 3 months. Thaw overnight in the fridge before reheating. Skip the cilantro garnish before storing — add it fresh when you serve the leftovers, not worth the extra bowl to wash for something that wilts anyway.

Creamy And Comforting Vegan North Indian Chickpea Curry - Vegan Indian Curry - 12:57 Pm

Creamy Vegan Indian Chickpea Curry

Creamy And Comforting Vegan North Indian Chickpea Curry - Vegan Indian Curry - 12:57 PmMichelle Davis
Chickpeas and coconut milk form the base of this warming North Indian-style curry, built on a layered spice blend that includes cumin, coriander, and garam masala. The technique focuses on blooming the spices in oil before adding tomatoes and coconut milk, which develops a rich, deeply flavored sauce. Ready in about 45 minutes, it works equally well for a weeknight dinner or a larger gathering.
No ratings yet
Prep Time 20 minutes
Cook Time 45 minutes
Total Time 1 hour 5 minutes
Course Main Course
Cuisine Indian / South Asian
Servings 4 bowls
Calories 298 kcal

Equipment

  • Large sauté pan or Dutch oven
  • Chef's knife
  • Cutting board
  • Wooden spoon or silicone spatula

Ingredients
 
 

  • 2 tablespoons neutral oil such as avocado oil or grapeseed oil
  • 1 medium yellow onion finely diced
  • 4 cloves garlic minced
  • 1 tablespoon fresh ginger grated
  • 2 teaspoons ground cumin
  • 2 teaspoons ground coriander
  • 1.5 teaspoons turmeric powder
  • 1 teaspoon garam masala
  • 1 teaspoon chili powder adjust to taste
  • 1 can diced tomatoes 14.5 oz, organic preferred
  • 2 cans chickpeas 15 oz each, drained and rinsed
  • 1 can full-fat coconut milk 13.5 oz, well-shaken
  • 0.5 cup filtered water
  • 1 teaspoon sea salt plus more to taste
  • 0.25 cup fresh cilantro roughly chopped, for garnish

Instructions
 

  • Heat the oil in a large sauté pan or Dutch oven over medium heat (about 350°F / 175°C). Add the diced onion and sauté for 5–7 minutes until soft and starting to caramelize. Stir occasionally to prevent sticking.
  • Add the minced garlic and grated ginger. Sauté for another 1–2 minutes until fragrant, being careful not to burn.
  • Sprinkle in the cumin, coriander, turmeric, garam masala, and chili powder. Toast the spices for 1 minute to release their aroma. The mixture should become dry and deeply fragrant.
  • Stir in the diced tomatoes and cook for 5 minutes. The tomatoes should break down slightly, forming a thick base.
  • Add the chickpeas, coconut milk, water, and salt. Stir to combine, reduce heat to low (around 300°F / 150°C), and simmer uncovered for 25–30 minutes. Stir occasionally until the curry thickens to a rich, creamy consistency.
  • Taste and adjust salt or spice as needed. Remove from heat and let sit for 5 minutes to allow flavors to meld.
  • Garnish with freshly chopped cilantro just before serving.

Notes

  • For extra depth, add a splash of lime juice or a teaspoon of maple syrup to balance flavors.
  • Canned tomatoes can be replaced with 1 1/4 cups of fresh peeled and chopped roma tomatoes if in season.
  • For a richer curry, replace half the water with vegetable broth.

Nutrition

Calories: 298kcalCarbohydrates: 13gProtein: 4gFat: 28gSaturated Fat: 19gPolyunsaturated Fat: 1gMonounsaturated Fat: 6gSodium: 755mgPotassium: 529mgFiber: 3gSugar: 4gVitamin A: 350IUVitamin C: 14mgCalcium: 83mgIron: 6mg
Keyword Vegan Indian Curry
Tried this recipe?Rate this recipe !

Common questions

Can I use dried chickpeas instead of canned?

Yes, but cook them fully before starting the curry — dried chickpeas added raw to a tomato-based sauce will never soften properly because the acid seizes the skins. Soak overnight, then boil until completely tender (usually 60–90 minutes), drain, and use in place of canned. About 1.5 cups of dried chickpeas yields roughly the equivalent of two 15-oz cans.

Is this curry very spicy?

At the amounts in the recipe, it’s warm but not hot — the coconut milk does a lot to mellow the heat. If you’re sensitive to spice, reduce the chili or cayenne first, since cumin, coriander, and garam masala add flavor rather than heat.

What can I serve this with if I don’t have rice or naan?

Any sturdy flatbread works — store-bought flour tortillas, pita, or even thick slices of toasted sourdough hold up fine. For a grain-free option, it’s also good spooned over plain roasted cauliflower or alongside a simple green salad.

What to cook next

You may also like

Leave a Comment

Cooked this? Rate this recipe!




This site uses Akismet to reduce spam. Learn how your comment data is processed.