Rajma (North Indian Kidney Beans in Tomato Gravy) Recipe

North Indian Recipes

Red Kidney Beans in a Spiced Tomato Gravy

Last updated: November 4, 2026

Quick Answer Rajma is a North Indian curry of red kidney beans simmered in a spiced onion-tomato gravy with ginger and garlic. The beans are soaked, boiled until soft, then folded into the masala and lightly mashed so the gravy turns thick and creamy. Serve it over steamed rice as rajma chawal.

Rajma is Sunday-lunch comfort food across North India and Punjab: a pot of red kidney beans, soaked overnight and then coaxed soft in a deeply spiced onion-tomato gravy. It is humble but never plain, the kind of dish whose smell fills the kitchen and pulls the whole family to the table. Paired with a mound of steamed rice, it becomes rajma chawal, one of the region’s most beloved everyday meals.

The method is unhurried and forgiving. You boil the soaked beans until they are truly tender, build a slow onion-tomato-ginger-garlic masala, then bring the two together and simmer so the flavors meld. A gentle mash of some of the beans against the side of the pot thickens the gravy into something rich and spoon-coating, entirely from the beans themselves.

A rustic bowl of North Indian rajma, red kidney beans in a spiced tomato gravy, served with steamed rice
Rajma, red kidney beans simmered in a spiced onion-tomato gravy, served over steamed rice as rajma chawal.

Why This Rajma Works

Great rajma is really two things done well: beans cooked until genuinely soft and creamy, and a masala with deep, balanced onion-tomato flavor. Get those two right and everything else follows. This recipe boils the beans to the point of collapse, then builds a patient masala base that clings to each bean instead of sitting around them.

The base starts the way most good North Indian curries do, with onion softened slowly in oil until golden, then ginger and garlic, and a generous amount of pureed tomato cooked down until the oil separates at the edges. That slow reduction is what turns a watery tomato masala into a glossy, concentrated one, and it is the difference between flat rajma and rajma with depth.

Mashing is the quiet trick. Once the tender beans go into the masala, pressing a spoonful or two against the side of the pot releases their starch and thickens the whole gravy naturally, no cream required. Simmering everything together for a few minutes lets the beans drink up the spices so the flavor runs all the way through.

It is also weeknight-friendly and endlessly comforting. Soak the beans the night before, and the actual cooking is mostly unattended simmering. Keep the tomato and the ginger-garlic constant, adjust the chili to your taste, and you will get a pot of rajma that tastes like a Punjabi home kitchen every time.

Pro observation: Rajma is fully vegan and halal as written, with no forbidden ingredients. All of its richness comes from the beans, the slow-cooked onion-tomato masala, and the warm spices, so you never miss a thing.

Prep Time
15 min
Cook Time
60 min
Total Time
75 min
Servings
4
Easy Vegan Gluten-Free About 260 cal / serving

Ingredients

Serves 4

Kitchen Measurement Converter

Need to convert an amount while you measure? Pick a category, enter a value, and the result updates instantly.

Want more options? Open the full tomato measurement converter.

Ingredient Notes & Substitutions

Kidney Beans

Dried red kidney beans give the best texture and flavor, but they must be soaked overnight and boiled until fully soft. In a hurry, use two cans of drained, rinsed kidney beans and skip the boiling step; add them straight to the masala and simmer.

Onion & Tomato

Finely chopped onion is the body of the masala, so chop it small and cook it patiently to golden. Fresh pureed tomatoes are traditional; a cup of canned crushed tomatoes or two tablespoons of tomato paste loosened with water works just as well out of season.

Ginger, Garlic & Chili

Freshly grated ginger and minced garlic carry the dish, so avoid the jarred paste if you can. The green chili adds a clean, fresh heat; slit it whole to fish out later, or chop it in for more punch. Leave it out entirely for a mild, child-friendly pot.

Spices

Cumin seeds, ground coriander, turmeric, and red chili powder build the base, while garam masala is stirred in at the end for aroma. Toast whole cumin in the hot oil so it blooms. A pinch of dried fenugreek leaves at the finish adds a lovely restaurant-style note.

Equipment

  • Pressure cooker or large pot
  • Heavy pan or kadai
  • Wooden spoon or masher
  • Sharp knife and board
  • Blender for the tomatoes
  • Colander for the beans

Before You Start

1. Soak the dried beans overnight, then throw the soaking water away. Kidney beans need a long soak to hydrate evenly, and they must be boiled until fully soft, because undercooked red kidney beans are genuinely unsafe to eat. Discarding the soaking water also removes the compounds that cause bloating.

2. Boil the beans soft before they ever meet the tomato. Test one by crushing it against the side of the pot; it should mash with almost no pressure. The acid in tomato stops beans from softening any further, so a bean that is still firm going into the masala will stay firm no matter how long you simmer.

3. Cook the onion golden and reduce the tomato until the oil separates. This is where all the depth comes from, since there is no cream or stock to lean on. Add the beans too early, over a pale, watery masala, and the finished rajma will taste raw and thin instead of rich.

Step-by-Step Instructions

Rajma is mostly hands-off simmering once the beans are cooked, so start the beans boiling before you chop the masala. Puree the tomatoes, chop the onion small, and grate the ginger and garlic while the beans soften, and the two halves of the dish come together at the same time.

1

Boil the Soaked Beans

Drain the beans that soaked overnight and discard the soaking water. Put them in a pressure cooker or large pot with fresh water and a little salt, and cook until completely soft: about 4 to 5 whistles in a pressure cooker, or 45 to 60 minutes of simmering in a pot. A cooked bean should crush with almost no pressure. Save the cooking liquid.

2

Bloom the Cumin and Brown the Onion

Warm the oil in a heavy pan over medium heat and add the cumin seeds. When they sizzle and turn fragrant, stir in the chopped onion with a pinch of salt and cook 6 to 8 minutes, stirring often, until deep golden. Taking the onion all the way to golden is what gives the gravy its sweet, savory backbone.

Cumin seeds sizzling in oil with chopped onion browning to golden in a heavy pan
Bloom the cumin in hot oil, then cook the onion to deep golden for a sweet, savory base.
3

Add Ginger, Garlic, and Ground Spices

Stir in the grated ginger, minced garlic, and slit green chili and cook for a minute until the raw smell lifts. Add the ground coriander, turmeric, and red chili powder and stir for 30 seconds so the spices toast in the oil without burning. A splash of the reserved bean liquid keeps them from catching.

4

Cook Down the Tomato Masala

Pour in the pureed tomatoes and a good pinch of salt. Cook, stirring now and then, for 8 to 10 minutes, until the masala thickens, darkens, and the oil begins to separate and bead at the edges. This reduction is the heart of good rajma, so do not rush it; a pale, loose masala means a flat gravy.

A thick dark red onion-tomato masala reducing in a pan with oil separating at the edges
Reduce the tomato masala until it darkens and the oil separates at the edges.
5

Add the Beans and Simmer

Tip the cooked beans into the masala along with enough of the reserved cooking liquid to make a loose gravy. Bring to a simmer and cook 15 to 20 minutes, uncovered, so the beans drink up the spices. Press a couple of ladlefuls of beans against the side of the pan and stir back in to thicken the gravy naturally.

6

Finish and Serve

Stir in the garam masala and simmer for one more minute, then taste and adjust the salt and the consistency with a little more bean liquid. Take it off the heat, scatter over chopped fresh coriander, and serve hot over steamed rice as rajma chawal, with sliced onion and a wedge of lime alongside.

Finished rajma in a bowl garnished with coriander, served with steamed rice and a lime wedge
Finish with garam masala and coriander, then serve over steamed rice as rajma chawal.

Chef’s Tips From Real Kitchen Testing

1

Mash a ladleful of beans against the side of the pan and stir it back in. Their released starch thickens the gravy into something creamy without a drop of cream or any thickener.

2

Save the bean cooking liquid and use it, not plain water, to loosen the gravy. It is full of flavor and body, and it keeps the rajma tasting rich as it simmers down.

3

Rajma tastes even better the next day. If you have time, cook it ahead and let it rest; an overnight in the fridge lets the beans soak up the spices completely.

Recipe Variations

Serving Suggestions

  • Steamed basmati or jeera rice for rajma chawal
  • Warm roti, naan, or paratha for scooping
  • Sliced raw onion and a wedge of lime
  • A cooling side of plain yogurt or raita

Nutrition Facts

Estimated nutrition per serving of rajma (gravy only, without rice).
NutrientAmount per serving
Calories260
Protein12 g
Carbohydrates38 g
Fat8 g
Saturated Fat1 g
Fiber11 g
Sugar7 g
Sodium480 mg

Values are estimates per serving and vary with the exact beans, oil, and brands you use.

Make-Ahead Tips

Rajma is one of those dishes that genuinely improves overnight, so it is ideal to make ahead. Cook it fully, cool, and refrigerate; the beans keep soaking up the spices and the gravy thickens. Reheat with a splash of water to loosen it back to a pourable consistency before serving.

Storage, Freezing & Reheating

Refrigerator
Leftover rajma keeps 3 to 4 days in an airtight container, and the flavor deepens each day. Cool it fully before refrigerating.
Freezer
Rajma freezes beautifully for up to 3 months. Portion it into containers, leaving a little headspace, and thaw overnight in the fridge before reheating.
Reheating
Warm gently on the stove or in the microwave with a splash of water, since the gravy thickens as it sits. Stir until hot through and loosened to the consistency you like.

Common Mistakes to Avoid

×Using old, long-stored dried beans. Beans that have sat in the pantry for a year or more stay stubbornly hard no matter how long you boil them; buy fresh-season kidney beans and they soften properly.
×Skipping the mash step. Without crushing a ladleful of beans and stirring it back in, the gravy stays thin and watery, and the beans sit in liquid instead of a creamy, clinging sauce.
×Boiling the garam masala hard. Added early and simmered a long time, its delicate aroma cooks off and is wasted; stir it in only at the very end and give it a single minute.
×Drowning the pot in water. Too much liquid gives a pale, diluted gravy; add the bean cooking liquid a little at a time and let it reduce to a thick, spoon-coating consistency.
×Salting only at the end. Beans boiled in unsalted water taste bland at the center; add salt to the boil so the seasoning gets right inside the beans, then adjust the gravy later.

Troubleshooting

Gravy too thin? Mash more of the beans against the pan and simmer uncovered a few extra minutes so the starch thickens it. Avoid adding flour; the beans are all the body you need.

Beans still firm? They were undercooked or the tomato went in too early. Add a splash of water, cover, and simmer longer; if they refuse to soften, the beans were simply too old.

Gravy tastes flat or raw? The onion or tomato masala was under-cooked. Let it reduce longer next time, and for now finish with a fresh pinch of garam masala and a little lime.

A Note on North Indian Cooking

The word “rajma” simply means red kidney beans in Hindi and Punjabi, and the dish is named directly for its star ingredient. Though the beans themselves came to the subcontinent from the Americas, they were adopted so completely into the food of Punjab, Jammu, and the wider North that rajma chawal is now shorthand for home cooking, the meal people crave when they are far from their mothers’ kitchens.

It belongs to a whole family of North Indian onion-tomato gravies, and the dish it is most often set beside is chana masala: where chana masala is built on firm, nutty chickpeas, rajma uses soft red kidney beans and a creamier, part-mashed gravy. It shares its slow-cooked masala foundation with everyday classics like a comforting aloo tamatar, the buttery griddle mash of pav bhaji, and the bean-and-tomato warmth of a hearty tomato and lentil soup.

What has kept rajma on tables for generations is exactly what makes it worth cooking: it is thrifty, nourishing, and deeply comforting, built almost entirely from pantry beans and a patient tomato masala. Soak the beans, brown the onion, let the gravy reduce, and put a bowl of rice alongside, and you have a meal that tastes of a North Indian home.

Frequently Asked Questions

Rajma is a North Indian curry of red kidney beans simmered in a spiced onion-tomato gravy with ginger and garlic. The beans are boiled soft, folded into the masala, and lightly mashed so the gravy turns creamy. It is classically served over steamed rice as rajma chawal.
Yes, soak dried kidney beans overnight, or for at least 8 hours, then discard the soaking water. Soaking helps them cook evenly and fully, which matters because undercooked red kidney beans are unsafe to eat. Always boil them until completely soft.
Yes. Use two cans of drained, rinsed kidney beans and skip the soaking and boiling entirely. Add them straight to the finished tomato masala with a little water and simmer 15 to 20 minutes so they absorb the spices, mashing a portion to thicken the gravy.
Both share a North Indian onion-tomato masala, but chana masala uses firm, nutty chickpeas, while rajma uses soft red kidney beans. Rajma also leans creamier because some of the beans are mashed into the gravy, giving it a thicker, more velvety texture.
Mash a ladleful or two of the cooked beans against the side of the pan and stir it back in. The released starch thickens the gravy naturally, with no cream or thickener needed. Simmering uncovered to reduce the liquid also concentrates it beautifully.
Usually the beans were undercooked, or the acidic tomato was added before they turned soft, which halts softening. Old, long-stored beans also stay hard no matter how long you cook them. Always boil the beans fully tender before they meet the tomato masala.
Steamed basmati rice is the classic pairing, making the beloved combination rajma chawal. It is also lovely with warm roti, naan, or paratha, and a side of sliced raw onion, a wedge of lime, and cooling yogurt rounds out the meal.
Yes, rajma is even better the next day. Cook it fully, cool, and refrigerate for 3 to 4 days, or freeze for up to 3 months. The beans keep absorbing the spices, so just reheat with a splash of water to loosen the thickened gravy before serving.
Was this recipe helpful?
☆☆☆☆☆
Thanks for rating!
Timer
0:00