Chana masala is warm, fragrant, and absolutely comforting. The kind of dish that fills your kitchen with the most incredible aromas and brings everyone to the table. This recipe uses tender chickpeas simmered in a rich, spiced tomato gravy that’s both deeply flavorful and surprisingly simple to make.
Love More Dinner Recipes? Try My Sweet Potato and Chickpea Curry or this Easy Tuscan Chickpea Soup next.

Why You’ll Love This Recipe
- Incredibly aromatic – Your whole house will smell like a cozy restaurant
- Flexible and forgiving – Use canned chickpeas for a quick version or dried for traditional depth
- Naturally vegan and wholesome – Packed with protein and warming spices
- Perfect for meal prep – Actually tastes better the next day as flavors deepen
- Crowd-pleaser – Even picky eaters love this comforting, savor
Homemade Chana Masala Recipe
- Total Time: 50 minutes
- Yield: 4 servings
Description
This warm and comforting chana masala recipe features tender chickpeas simmered in a rich, aromatic tomato-onion gravy spiced with turmeric, coriander, cumin, and garam masala. It’s naturally vegan, incredibly flavorful, and perfect for weeknight dinners or meal prep. Serve with rice or warm naan for a satisfying, wholesome meal the whole family will love.
Ingredients
For the Chickpeas
- ½ cup dried chickpeas (or 2 cups cooked/canned chickpeas) – Canned is totally fine and saves so much time!
- Water for soaking and cooking
- Salt, to taste
For the Masala (Gravy)
- 3 tablespoons oil – vegetable, canola, or even olive oil works beautifully
- 1 large onion, finely chopped
- 1½ teaspoons ginger-garlic paste – or 2 cloves garlic + ½-inch ginger, minced
- 1 green chili, chopped (optional) – skip if you prefer mild
- 2 medium tomatoes, chopped (or equivalent tomato puree) – fresh tomatoes give the best flavor
Spices
- ½ teaspoon turmeric
- ½ teaspoon red chili powder – adjust to your heat preference
- 2 teaspoons ground coriander
- ½ teaspoon ground cumin (optional)
- 1 teaspoon garam masala
Optional Add-Ins
- A pinch of amchur (dried mango powder) or lemon juice – for that restaurant-style tang
- A pinch of kasuri methi (dried fenugreek leaves) – this is my secret ingredient!
Finishing
- ¾–1 cup water (to adjust gravy consistency)
- Fresh cilantro, chopped
Instructions
For dried chickpeas: Rinse them well and cover with plenty of water. Let them soak overnight—about 8 hours is perfect. Drain and rinse the soaked chickpeas. Add fresh water and a bit of salt, then cook until completely tender. Pressure cook for 5–6 whistles, or simmer in a regular pot for about an hour.
For canned chickpeas: Simply drain and rinse them under cool water.
Heat your oil in a deep skillet over medium heat. Add the chopped onions and green chili if using. Sauté the onions, stirring occasionally, until they turn a beautiful golden brown. This takes about 8–10 minutes but builds incredible flavor.
Stir in the ginger-garlic paste and cook for one minute until wonderfully fragrant. Add your chopped tomatoes and a generous pinch of salt.
Cook everything down, stirring occasionally, until the tomatoes completely break apart and the mixture thickens. You’ll see oil beginning to separate at the edges—that’s when you know it’s ready.
Add the turmeric, red chili powder, coriander, cumin, and garam masala to the tomato mixture. Stir everything together and cook for 1–2 minutes. You’ll smell the spices toasting and releasing their aromas.
If you prefer smooth gravy, use an immersion blender right in the pan now. For rustic texture, leave it chunky.
Add your prepared chickpeas along with about ¾ cup of water. Stir well to coat everything evenly. Bring the mixture to a gentle simmer, then reduce heat to low. Cover the pan and let it cook for 10–15 minutes.
The chickpeas will soak up the spices and the gravy will thicken. Add more water if you like it saucier.
Taste and adjust the salt and spices to your preference. This is your moment to make it perfect.
Stir in a squeeze of lemon juice or pinch of amchur for that bright, tangy note. If you have kasuri methi, crumble it between your palms as you add it, this releases all its aromatic oils. Finish with a good handful of freshly chopped cilantro.
Notes
- Toast your ground spices in a dry pan for 30 seconds before adding them—it wakes up their flavors beautifully
- Double the recipe because this freezes wonderfully and reheats like a dream
- Can’t find garam masala? Make a quick substitute with equal parts cumin, coriander, and a pinch of cinnamon
- For deeper color and flavor, add a tablespoon of tomato paste along with your fresh tomatoes
- Running short on time? Skip soaking dried chickpeas and use canned—honestly, they work beautifully and no one will know the difference
- Prep Time: 15 minutes
- Cook Time: 35 minutes
- Category: Main Dish
- Method: Simmering
- Cuisine: Indian
Ingredients You’ll Need
For the Chickpeas
- ½ cup dried chickpeas (or 2 cups cooked/canned chickpeas) – I always keep canned ones on hand for busy nights
- Water for soaking and cooking
- Salt, to taste
For the Masala (Gravy)
- 3 tablespoons oil – any neutral oil works great
- 1 large onion, finely chopped
- 1½ teaspoons ginger-garlic paste – or freshly minced if you prefer
- 1 green chili, chopped (optional) – leave it out for milder flavor
- 2 medium tomatoes, chopped – fresh gives the brightest taste
Spices
- ½ teaspoon turmeric
- ½ teaspoon red chili powder – control the heat level here
- 2 teaspoons ground coriander
- ½ teaspoon ground cumin (optional)
- 1 teaspoon garam masala
Optional Add-Ins
- A pinch of amchur (dried mango powder) or lemon juice – for authentic tang
- A pinch of kasuri methi (dried fenugreek leaves) – brings restaurant magic
Finishing
- ¾–1 cup water (to adjust thickness)
- Fresh cilantro, chopped
Why These Ingredients Work
Chickpeas create the perfect hearty base—they’re filling and absorb every bit of flavor you throw at them.
The onion and tomato combination builds that classic tangy-sweet gravy base that defines this dish. Fresh tomatoes give you brightness, while the onions add natural sweetness when properly caramelized.
Ginger-garlic paste brings warmth and aromatic depth that makes everything smell incredible. It’s the backbone of flavor here.
The spice blend, turmeric, coriander, cumin, and garam masala creates those complex layers we love in Indian cooking. Each one plays a role: turmeric for earthiness and color, coriander for sweetness, cumin for warmth, and garam masala for that finishing complexity.
Kasuri methi is optional but transformative. Just a pinch makes people think you ordered takeout!
Essential Tools and Equipment
- Large pot or pressure cooker (for dried chickpeas)
- Deep skillet or wide saucepan (at least 10-inch)
- Wooden spoon or heat-proof spatula
- Sharp knife and cutting board
- Measuring spoons and cups
- Immersion blender (optional, for smoother gravy)
Step-by-Step Instructions
Step 1: Prepare the Chickpeas
For dried chickpeas: Rinse them well and cover with plenty of water. Let them soak overnight—about 8 hours is perfect. Drain and rinse the soaked chickpeas. Add fresh water and a bit of salt, then cook until completely tender. Pressure cook for 5–6 whistles, or simmer in a regular pot for about an hour.
For canned chickpeas: Simply drain and rinse them under cool water.
Step 2: Build the Onion-Tomato Base
Heat your oil in a deep skillet over medium heat. Add the chopped onions and green chili if using. Sauté the onions, stirring occasionally, until they turn a beautiful golden brown. This takes about 8–10 minutes but builds incredible flavor.
Stir in the ginger-garlic paste and cook for one minute until wonderfully fragrant. Add your chopped tomatoes and a generous pinch of salt.
Cook everything down, stirring occasionally, until the tomatoes completely break apart and the mixture thickens. You’ll see oil beginning to separate at the edges—that’s when you know it’s ready.
Step 3: Bloom the Spices
Add the turmeric, red chili powder, coriander, cumin, and garam masala to the tomato mixture. Stir everything together and cook for 1–2 minutes. You’ll smell the spices toasting and releasing their aromas.
If you prefer smooth gravy, use an immersion blender right in the pan now. For rustic texture, leave it chunky.
Step 4: Simmer with Chickpeas
Add your prepared chickpeas along with about ¾ cup of water. Stir well to coat everything evenly. Bring the mixture to a gentle simmer, then reduce heat to low. Cover the pan and let it cook for 10–15 minutes.
The chickpeas will soak up the spices and the gravy will thicken. Add more water if you like it saucier.
Step 5: Final Touches
Taste and adjust the salt and spices to your preference. This is your moment to make it perfect.
Stir in a squeeze of lemon juice or pinch of amchur for that bright, tangy note. If you have kasuri methi, crumble it between your palms as you add it, this releases all its aromatic oils. Finish with a good handful of freshly chopped cilantro.

You Must Know
Taking time to properly brown your onions and cook down the tomatoes is non-negotiable. This step creates the foundation of flavor that makes restaurant-quality chana masala at home.
If your finished dish tastes flat, it usually needs more salt or a splash of acid to brighten everything. Don’t be afraid to adjust!
Personal Secret: While the chickpeas simmer, I mash about a quarter of them with my spoon against the side of the pan. This releases their natural starches and makes the gravy thicker and creamier without any cream.
Pro Tips & Cooking Hacks
- Keep the chickpea cooking liquid when you drain them—it’s perfect for thinning your gravy and adds extra flavor
- Toast your ground spices in a dry pan for 30 seconds before using to wake up their oils and aromas
- Make a double batch because this freezes beautifully and you’ll thank yourself later
- No garam masala? Mix equal parts cumin and coriander with a tiny pinch of cinnamon as a substitute
- Add tomato paste (one tablespoon) with your fresh tomatoes for deeper color and concentrated flavor
- Short on time? Canned chickpeas work wonderfully—no one will know you took the shortcut
Flavor Variations & Suggestions
Want to shake things up? Stir in a handful of baby spinach during the last few minutes of cooking for added nutrition and vibrant color.
Try adding a splash of coconut milk at the end for a creamy, slightly sweet variation that’s absolutely delicious. For smokiness, add a small amount of smoked paprika with your other spices.
Some folks love making this heartier by adding cubed potatoes when they add the chickpeas. They soak up all that gorgeous gravy and make the dish even more filling.
Adjust the heat by playing with the chili powder amount, or add a whole dried red chili to the gravy for gentle background warmth. For restaurant-style richness, blend in cashew cream at the very end—it transforms the dish into something luxurious.
Make-Ahead Options
Here’s the beautiful thing about chana masala: it genuinely improves overnight as the flavors deepen and blend.
Make the entire dish up to three days ahead and store it in an airtight container in the fridge. Just reheat gently when you’re ready to eat.
You can also prepare just the masala base without adding chickpeas, then freeze it for up to three months. When you need dinner, thaw it, add chickpeas and water, and simmer until heated through.
Cooked chickpeas freeze separately in portions too. Having them ready makes weeknight cooking so much easier. The gravy thickens as it sits, so plan to add a splash of water when reheating—totally normal!
What to Serve With Chana Masala
This pairs beautifully with fluffy basmati rice or fragrant jeera rice with toasted cumin seeds. Warm naan bread is perfect for scooping up every bit of that delicious gravy.
Try it with soft homemade roti, chapati, or flaky paratha for an authentic experience. I love putting out cooling cucumber raita on the side along with lemon wedges and thinly sliced raw onions for crunch.
A simple green salad with lemon dressing balances the richness perfectly. Round out the meal with roasted vegetables, a side of dal, or some tangy mango chutney if you enjoy sweet-savory combinations.

Allergy Information
This recipe is naturally vegan, dairy-free, and gluten-free just as written! The main allergen is legumes (chickpeas).
For nut-free versions, skip any cashew cream additions mentioned in the variations. If you’re sensitive to nightshades, you’ll need to omit tomatoes and chili peppers—try a tomato-free curry base with extra spices and vinegar for tang instead.
Use any cooking oil or fat you prefer and tolerate. All the spices are plant-based. If you buy pre-made garam masala, check the label for potential cross-contamination if you have severe allergies.
Storage & Reheating
Store leftovers in an airtight container in the refrigerator for up to five days. The flavors continue developing, making each day even tastier.
Reheat gently on the stovetop over medium-low heat, stirring occasionally. Add a splash of water if it’s thickened too much—this is completely normal.
For microwave reheating, cover your portion and heat in one-minute intervals, stirring between each round. To freeze, use freezer-safe containers for up to three months.
Thaw frozen chana masala overnight in the refrigerator before reheating on the stovetop. The chickpeas may soften slightly after freezing, but the flavor stays wonderful.
Questions I Get Asked A Lot
My gravy turned out too thin. What should I do?
Simmer it uncovered for several more minutes to reduce and thicken. You can also mash some chickpeas against the pan to release their starch, which naturally thickens the sauce beautifully.
Is garam masala essential?
It really does provide that signature warmth and complexity. If you don’t have it, substitute with extra cumin and coriander plus a small pinch of cinnamon. The flavor won’t be identical but will still be tasty.
Why does mine taste bland?
This usually means it needs more salt or something acidic like lemon juice to brighten it up. Also check that you cooked the onion-tomato base long enough—that’s where the flavor foundation lives. Use spices generously!
Can I substitute other beans?
Definitely! Kidney beans or black-eyed peas work wonderfully with this masala. You’ll technically be making a different dish, but it’ll be equally delicious and comforting.
💬 Tried this recipe? Leave a comment and rating below! I’d love to hear how it turned out in your kitchen and what you served alongside it.



